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
住所正規化 API をLambda + Redis で動くようにしたお話
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
enkatsu
August 02, 2021
Technology
500
0
Share
住所正規化 API をLambda + Redis で動くようにしたお話
enkatsu
August 02, 2021
More Decks by enkatsu
See All by enkatsu
NICOGRAPH 2022 で発表してきました
enkatsu
0
360
インデントの崩れる音がする
enkatsu
0
290
Open Street Map の歩き方
enkatsu
0
480
Other Decks in Technology
See All in Technology
EMから幅を広げるために最近挑戦していること / Recent challenges I'm undertaking to expand my horizons beyond EM
hiro_torii
1
180
需要創出(Chatwork)×供給(BPaaS) フライホイールとMoat 実行能力の最適配置とAI戦略
kubell_hr
0
2.1k
世界の中心でApp Runnerを叫ぶ FINAL
tsukuboshi
0
250
Agents CLI と Gemini Enterprise Agent Platform で マルチエージェント開発が楽しくなる!
kaz1437
0
260
オライリーイベント登壇資料「鉄リサイクル・産廃業界におけるAI技術実応用のカタチ」
takarasawa_
0
330
試作とデモンストレーション / Prototyping and Demonstrations
ks91
PRO
0
190
AIが自律的に働く時代へ Amazon Quick で実現するAIエージェント紹介
koheiyoshikawa
0
190
QAエンジニアはどうやって プロダクト議論の場に入れるのか?
moritamasami
2
410
みんなの考えた最強のデータ基盤アーキテクチャ'26前期〜前夜祭〜ルーキーズ_資料_遠藤な
endonanana
0
110
AI 時代の Platform Engineering
recruitengineers
PRO
1
110
The 7 pitfalls of AI
ufried
0
200
Google Cloud Next '26 の裏でこっそりリリースされたCloud Number Registry & Cloud Hub コスト分析 を試してみた
hikaru1001
0
170
Featured
See All Featured
Fireside Chat
paigeccino
42
3.9k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.2k
Facilitating Awesome Meetings
lara
57
6.8k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
170
How to Talk to Developers About Accessibility
jct
2
190
How to make the Groovebox
asonas
2
2.2k
RailsConf 2023
tenderlove
30
1.4k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Building an army of robots
kneath
306
46k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
140
Transcript
住所正規化 API を Lambda + Redis で動くようにしたお話 ARCANA Meetup #72
2021/7/30 株式会社スタジオ・アルカナ 遠藤勝也
住所正規化 API とは?
霞が関 2-1-10 東京都 / 千代田区 / 霞が関 / 2 /
1 / 10
入力 { "@type": " 住所型", " 表記" : " 霞が関2-1-10"
}
出力 { "@type": " 住所型", " 表記": " 霞が関2-1-10", "
都道府県": " 東京都", " 都道府県コード": "http://data.e-stat.go.jp/lod/sac/C13000", " 市区町村": " 千代田区", " 市区町村コード": "http://data.e-stat.go.jp/lod/sac/C13101", " 町名": " 霞が関", " 丁目": "2", " 番地": "1", " 号": "10" }
既存の構成 imi-enrichment-address https://github.com/IMI-Tool-Project/imi-enrichment-address LevelDB を使った npm EC2 で動かしてる 同時にアクセスできない
LevelDB とは https://github.com/google/leveldb Google 製のキーバリューストア 高速 SQLite の KVS バージョンみたいなイメージ
既存のライブラリの構造 . ├── LICENSE ├── README.md ├── bin ├── cache
├── db # ここにファイルがあって読み書きしてる ├── lib ├── main.js ├── node_modules ├── package-lock.json ├── package.json ├── spec ├── test └── tools
他の KVS で使える様にしよう!
せっかくだから AWS のサービスで構築したい
Lambda + Redis で構築しました やったこと 1. imi-enrichment-address をフォークしたリポジトリを作成する 2. imi-enrichment-address
のテストコードを実行する 3. LeveelDB を使っている箇所を Redis に差し替える 4. RedisInsight を使ってローカルの Redis にデータが保存されているか確認する 5. AWS ElastiCache にデータをリストアする 6. AWS Lambda から Redis に接続できるか確認する 7. AWS Lambda で API を実装する
つまったこと ElastiCache にリストアできない! S3 の権限を緩める必要がある ElastiCache にローカルの Redis CLI で接続できない!
Lambda から ElastiCache にアクセスできない! ElastiCache は同じセキュリティグループじゃないと接続できない
おわり