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
Amazon Neptune で始めるグラフDB
Search
八雲慎之助
February 27, 2025
0
28
Amazon Neptune で始めるグラフDB
第2回 AWS初心者LT会in札幌
八雲慎之助
February 27, 2025
Tweet
Share
More Decks by 八雲慎之助
See All by 八雲慎之助
Knowledge BasesにRAGが対応しました!
yakumo
0
140
Jr.Championsになるための取り組みと期待すること
yakumo
1
220
2024年振り返り
yakumo
0
28
Neptune使ってみた
yakumo
0
20
AWS GameDayに参加してきた
yakumo
1
280
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
67
11k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Visualization
eitanlees
146
16k
Typedesign – Prime Four
hannesfritz
41
2.6k
Fireside Chat
paigeccino
37
3.4k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Raft: Consensus for Rubyists
vanstee
137
6.9k
Automating Front-end Workflow
addyosmani
1369
200k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
The Pragmatic Product Professional
lauravandoore
33
6.5k
Transcript
Amazon Neptune で始める グラフDB ビジネスソリューション第一事業部 八雲慎之助 株式会社クレスコ
自己紹介 八雲慎之助(やくも しんのすけ) 所属 株式会社クレスコ 技術 好きなサービス Amazon Neptune
グラフDBとは? 引用 (https://www.imagazine.co.jp/12805-2/) ノード間のリレーションを表現できる
グラフDBとは?(RDSとの比較) Q:「Aさんの孫(子供の子供)は?」 UserId ChildrenID 1 2 2 3 3 4
UserId Name 1 A 2 B 3 C UserID1の孫は誰? A B C 子供はBさん 子供はCさん
主な活用事例 ユーザー同士の友人関係やフォロー関係をグラフ構造で管理。 友達の友達を探す、コミュニティ検出、おすすめ表示 例)X, Instagram, Facebook SNS分析 ユーザーの購入履歴や閲覧履歴から、関係性に基づく商品推薦を行う。 例)Amazon, Netflix
レコメンデーションエンジン Bedrockと組み合わせて、GraphRAGのような高度な応答システムを構 築できる 例)社内文書検索システム ナレッジグラフ
Amazon Neptune とは https://aws.amazon.com/jp/neptune/ • つながりの分析が得意 データの「関係性」を素早く見つけられる。 例)SNS上でおすすめを提示 • 2つのクエリ言語が得意
Gremlin → グラフをたどるための言語(経路検索などに便利) SPARQL → 知識グラフ(情報をネットワーク化して管理)に使う言語 • 高速でスケーラブル 大量のデータを高速に検索できる 大規模なアプリケーションでも対応可能 • 高い可用性と信頼性 自動フェールオーバ 保存時、転送時のデータ暗号化
レコメンド実装 AWS Cloud AWS Cloud Virtual private cloud (VPC) Public
subnet Private subnet Amazon SageMaker AI Amazon Neptune
Gremlinクエリについて • ノード追加 g.addV('person').property('name', 'yakumo').next() • エッジ追加 g.V().hasLabel('person’). has('name','yakumo').addE('LIKE').to(__.V().hasLabel('team’). has('name',
'team 3')).next()
レコメンド実装(共通のLIKEをしているノードを表示) yakumo sakura product 1 product 2 product 3 tanaka
product 4
レコメンド実装(共通のノードから伸びるエッジを確認) yakumo sakura product 1 product 2 product 3 tanaka
product 4
レコメンド実装(yakumoがLIKEしたのは除外) yakumo sakura product 1 product 2 product 3 tanaka
product 4
レコメンド実装 yakumo sakura product 1 product 2 product 3 tanaka
product 4
実際にやってみる!
レコメンド実装 今回投入したデータ
まとめ yakumo sakura MARIO KART 名前ID name 1 yakumo 2
sakura ゲームID Favorite 1 MARIO KART 名前ID Favorite 1 MARIO KART 2 MARIO KART