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
enkatsu
August 02, 2021
Technology
0
490
住所正規化 API をLambda + Redis で動くようにしたお話
enkatsu
August 02, 2021
Tweet
Share
More Decks by enkatsu
See All by enkatsu
NICOGRAPH 2022 で発表してきました
enkatsu
0
350
インデントの崩れる音がする
enkatsu
0
280
Open Street Map の歩き方
enkatsu
0
480
Other Decks in Technology
See All in Technology
AIエージェントに必要なのはデータではなく文脈だった/ai-agent-context-graph-mybest
jonnojun
1
250
データの整合性を保ちたいだけなんだ
shoheimitani
8
3.2k
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
150
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
260
ファインディの横断SREがTakumi byGMOと取り組む、セキュリティと開発スピードの両立
rvirus0817
1
1.7k
22nd ACRi Webinar - ChipTip Technology Eric-san's slide
nao_sumikawa
0
100
学生・新卒・ジュニアから目指すSRE
hiroyaonoe
2
770
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
4
230
20260204_Midosuji_Tech
takuyay0ne
1
160
Claude_CodeでSEOを最適化する_AI_Ops_Community_Vol.2__マーケティングx_AIはここまで進化した.pdf
riku_423
2
610
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
260
pool.ntp.orgに ⾃宅サーバーで 参加してみたら...
tanyorg
0
1.4k
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
120
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
330
Ethics towards AI in product and experience design
skipperchong
2
200
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
Speed Design
sergeychernyshev
33
1.5k
Test your architecture with Archunit
thirion
1
2.2k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
780
New Earth Scene 8
popppiees
1
1.5k
Exploring anti-patterns in Rails
aemeredith
2
250
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
68
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
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 は同じセキュリティグループじゃないと接続できない
おわり