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
9
Amazon Neptune で始めるグラフDB
第2回 AWS初心者LT会in札幌
八雲慎之助
February 27, 2025
Tweet
Share
More Decks by 八雲慎之助
See All by 八雲慎之助
Knowledge BasesにRAGが対応しました!
yakumo
0
130
Jr.Championsになるための取り組みと期待すること
yakumo
1
210
2024年振り返り
yakumo
0
23
Neptune使ってみた
yakumo
0
13
AWS GameDayに参加してきた
yakumo
1
270
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1030
460k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
Being A Developer After 40
akosma
89
590k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
580
KATA
mclloyd
29
14k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
10
520
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Building Adaptive Systems
keathley
40
2.4k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
440
Scaling GitHub
holman
459
140k
A Modern Web Designer's Workflow
chriscoyier
693
190k
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