Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWS Heroes Map 秘伝のレシピ
Search
Yasunori Kirimoto
October 28, 2024
Technology
2
100
AWS Heroes Map 秘伝のレシピ
MIERUNE 朝LT 発表資料
Yasunori Kirimoto
October 28, 2024
Tweet
Share
More Decks by Yasunori Kirimoto
See All by Yasunori Kirimoto
State of Open Source Web Mapping Libraries
dayjournal
0
250
State of Amazon Location Service
dayjournal
0
140
State of Amazon Location Service
dayjournal
1
340
MapLibreとAmazon Location Service
dayjournal
1
410
AWS re:Invent 2023 現地での体験
dayjournal
1
840
英語が苦手でも世界にアウトプットしている話
dayjournal
3
1.7k
FOSS4GとAmazon Location Serviceの親和性
dayjournal
0
740
MIERUNEの組織とカルチャー
dayjournal
0
280
AWSにおける地理空間情報活用
dayjournal
0
640
Other Decks in Technology
See All in Technology
CysharpのOSS群から見るModern C#の現在地
neuecc
1
3.1k
第1回 国土交通省 データコンペ参加者向け勉強会③- Snowflake x estie編 -
estie
0
120
The Rise of LLMOps
asei
5
1.2k
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
220
Security-JAWS【第35回】勉強会クラウドにおけるマルウェアやコンテンツ改ざんへの対策
4su_para
0
170
ドメイン名の終活について - JPAAWG 7th -
mikit
33
20k
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
DMARC 対応の話 - MIXI CTO オフィスアワー #04
bbqallstars
1
160
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
680
SSMRunbook作成の勘所_20241120
koichiotomo
2
120
Application Development WG Intro at AppDeveloperCon
salaboy
0
180
Incident Response Practices: Waroom's Features and Future Challenges
rrreeeyyy
0
160
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
52
13k
The Language of Interfaces
destraynor
154
24k
Statistics for Hackers
jakevdp
796
220k
Code Review Best Practice
trishagee
64
17k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Producing Creativity
orderedlist
PRO
341
39k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
Being A Developer After 40
akosma
86
590k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
47
2.1k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Transcript
Yasunori Kirimoto 2024.10.28 - MIERUNE 朝LT AWS Heroes Map 秘伝のレシピ
Yasunori Kirimoto AWS DevTools Hero MapLibre Voting Member OSGeo Charter
Member Owner of dayjournal MapLibre User Group Japan Amplify Japan User Group Notion Sapporo dayjournal dayjournal_nori Co-Founder and COO of MIERUNE
©OpenStreetMap contributors 01|AWS Heroes Mapとは 02|秘伝のレシピ 03|今後に向けて Contents
©OpenStreetMap contributors 01 AWS Heroes Mapとは
© 地理院地図 全国最新写真(シームレス) AWS Heroesの公式サイトがある 💻 AWS Heroes Mapとは
© 地理院地図 全国最新写真(シームレス) これもっと見やすくならないかな? 🤔 地図で可視化したらおもしろいかも! AWS Heroes Mapとは
© 地理院地図 全国最新写真(シームレス) AWS Heroes Mapを作った 🎉 AWS Heroes Mapとは
© 地理院地図 全国最新写真(シームレス) Global AWS Heroes Summit 2024のJeff BarrのKeynoteで紹介された 🎉
AWS Heroes Mapとは
©Project PLATEAU / MLIT Japan さまざまなコメント • 公開してくれてありがとう! • これはとてもクールだ!こういうのが好き
なんだ! • これは魔法なのか?なぜ私が住んでいる場 所を知っているんだ君は! • あなたは文字通り私を地図に入れた。 素 晴らしい仕事だ! • もっとヒーローが必要だ!どこの国も! • どんな技術を使っているんだ? • 地図のビジュアライゼーションは本当にイ ンタラクティブだ! AWS Heroes Mapとは
©Project PLATEAU / MLIT Japan さまざまなコメント • 262名だけ? 400名以上いると思っていた ◦
公式サイトも人数は書かれていな い... • 私はすでに引っ越している ◦ 公式サイトが更新されていない... • 俺がいない! ◦ 同一地域は拡大すると見える • 拡大すると多くの人々が表示されるぞ! ◦ ぱっと見わかりづらい • 私が違う場所にいるようだ ◦ 住所情報が不十分で同一名称の他 地域に表示されているよ... AWS Heroes Mapとは
© 地理院地図 全国最新写真(シームレス) 可視化することでさまざまなことが見えてきた 💡 AWS Heroes Mapとは
©OpenStreetMap contributors 02 秘伝のレシピ
©Project PLATEAU / MLIT Japan 利用技術 • マップライブラリ ◦ MapLibre
GL JS • 背景地図 ◦ Amazon Location Service ◦ Open Data Style • ホスティング ◦ AWS Amplify • ドメイン ◦ Cloudflare • データ前処理 ◦ Python • 秘伝のレシピ
アプリケーション データ 今回はデータの準備が大変だった! 秘伝のレシピ
© 地理院地図 全国最新写真(シームレス) データ作成は260件くらいだし手動でもできるよな... 🤔 エンジニアなんだからテクノロジーで解決だ! 秘伝のレシピ
©Project PLATEAU / MLIT Japan スクレイピング • Pythonで公式サイトをスクレイピングし CSVを作成 •
候補の中からSeleniumを選択し実装したが すべてのデータが取れない... • ページング等でうまく取得できていなかっ た • Playwrightに切り替えて再実装 (Playwright はE2Eテストツールでも利用されている) • 一覧データをCSVに保存した ChatGPTで取得した一覧の例 秘伝のレシピ
©Project PLATEAU / MLIT Japan スクレイピング • 下記データを取得しCSV作成 • Hero
Category ◦ AWS DEVTOOLS HERO • Hero Name ◦ Yasunori Kirimoto • Hero Since ◦ Hero since 2022 • Location ◦ "Sapporo, Japan" • Photo Link • Detail Link • 秘伝のレシピ
©Project PLATEAU / MLIT Japan ジオコーディング • PythonでデータのLocationから対象地域の 中心座標を求めてCSVに追記 •
候補の中からGeoPyを選択し実装した • GeoPyはさまざまなジオコーディングAPI を利用できる • 今回は位置精度も市町村レベルまでで良い のでNominatim (OSM)を選択した • 経緯度データをCSVに追記した 秘伝のレシピ
©Project PLATEAU / MLIT Japan ジオコーディング • 下記データを取得しCSVに追記 • lat
◦ 37.557903 • lon ◦ 126.985945 • 秘伝のレシピ
© 地理院地図 全国最新写真(シームレス) よしこれでデータは完成だ! ん? なんか座標が取得できていないレコードある? 🤔 秘伝のレシピ
© 地理院地図 全国最新写真(シームレス) 住所2つ入ってるやん⁉ 秘伝のレシピ
© 地理院地図 全国最新写真(シームレス) 通常: Sapporo, Japan アレ: Vancouver, Canada /
Sydney, Australia これはイレギュラー対応だな... 😇 秘伝のレシピ
© 地理院地図 全国最新写真(シームレス) よしこれでデータは完成だ! ん? なんかレコード数多くない? 🤔 秘伝のレシピ
© 地理院地図 全国最新写真(シームレス) 同じ人2名いるやん⁉ 秘伝のレシピ
© 地理院地図 全国最新写真(シームレス) 秘伝のレシピ
©Project PLATEAU / MLIT Japan 重複データ削除 • PythonでデータのHero Nameの重複を削 除しCSVを再作成
• 候補の中からPandasを選択し実装した • AWSチームに重複データがあることを報 告し現在は公式サイトも修正済 • 重複データを削除しCSVを再作成した • 秘伝のレシピ
© 地理院地図 全国最新写真(シームレス) さすがにこれでデータは完成だよね? ん? なんか一部のアイコンが表示されてない? 🤔 秘伝のレシピ
© 地理院地図 全国最新写真(シームレス) 同一地域で同一座標値で重なってるやん⁉ 秘伝のレシピ
©Project PLATEAU / MLIT Japan 同一座標データの調整 • Pythonでデータのlatとlonが同一のものを ランダムに調整しCSVを再作成 •
候補の中からNumPyとPandasを選択し実 装した • 同一座標データを調整しCSVを再作成した • 秘伝のレシピ
©Project PLATEAU / MLIT Japan GeoJSONに変換 • PythonでCSVデータをGeoJSONデータに 変換 •
候補の中からPandasを選択し実装した • CSVデータからGeoJSONデータを作成し た • 秘伝のレシピ
© 地理院地図 全国最新写真(シームレス) よしこれでデータは完成だ! 最後にマップアプリケーション構築だ! 秘伝のレシピ
©Project PLATEAU / MLIT Japan マップアプリケーション構築 • AWS Heroesの所在地と情報を可視化した マップアプリケーションを構築
• maplibregljs-amazon-location-service-start erを利用し構築した • Amazon Location ServiceのOpen Data Styleを背景地図で利用した • AWS AmplifyでホスティングしCloudflare のドメインを利用し連携した • データ更新時はGeoJSONファイルの入れ 替えのみ 秘伝のレシピ
© 地理院地図 全国最新写真(シームレス) 課題を一つずつ解決 • スクレイピング • ジオコーディング • 重複データ削除
• 同一座標データの調整 • GeoJSONに変換 • マップアプリケーション構築 秘伝のレシピ
©OpenStreetMap contributors 03 今後に向けて
© 地理院地図 全国最新写真(シームレス) データは大事です! みなさん登録情報は最新にしましょう! 今後に向けて
© 地理院地図 全国最新写真(シームレス) 今後に向けて 今後に向けて • データ部分のCI/CD化したい • 同一座標データの表現方法を改善したい •
これをサービス化したらおもしろいかも
© 地理院地図 全国最新写真(シームレス) 常にアンテナを立てることで見え方が変わる 📡 それらをテクノロジーで解決 💡
© 地理院地図 全国最新写真(シームレス) Thank you!! Yasunori Kirimoto dayjournal.dev