Amazon Neptune などのグラフデータベースは、リレーションシップを保存し、ナビゲートするために構築された専用のデータベースです。グラフデータベースは、ソーシャルネットワーキング、レコメンデーションエンジン、不正検出など、データ間のリレーションシップを作成し、そのリレーションシップに対してすばやくクエリを実行する必要があるユースケースで、リレーショナルデータベースよりも優れた威力を発揮します。リレーショナルデータベースを使用してこのようなアプリケーションを構築する場合、さまざまな課題があります。複数のテーブルと複数の外部キーを使用する必要があります。このデータをナビゲートする SQL クエリにはネストされたクエリと複雑な結合が必要で、それらはすぐに手に負えない状態になります。また、時間の経過とともにデータサイズが大きくなるため、クエリが適切に動作しなくなります。re:invent 2018 ではグラフデータベースへの入り口となるプレゼンテーションを行い、さらなる情報や詳細を提供しています。

Neptune では、ノード (データエンティティ)、エッジ (リレーションシップ)、プロパティなどのグラフ構造を使用して、データを表現および保存します。リレーションシップは、データモデルの第一要素として保存されます。これにより、ノードのデータを直接リンクできるため、データのリレーションシップをナビゲートするクエリのパフォーマンスが大幅に向上します。Neptune の大規模でインタラクティブなパフォーマンスにより、さまざまなグラフユースケースを効果的に実現できます。

すでにグラフモデルのデータがある場合、Amazon Neptune を始めるのは簡単です。CSV または RDF 形式でデータを読み込み、Apache TinkerPop Gremlin または SPARQL を使用してグラフクエリの作成を開始できます。以下のクイックスタートガイドをご利用いただくか、開始手順を一通りご覧ください。Amazon Neptune のベストプラクティスについてもまとめています。 

 
Amazon Neptune はオープン Graph API とクエリ言語をサポートしているので、Gremlin および SPARQL の外部ドキュメントに接続します。 Neptune で Gremlin を使用するお客様は、 Apache TinkerPop Documentation を強化するのに役立つリファレンスとして、よくオンラインブック Practical Gremlin: An Apache TinkerPop Tutorial を参照します。 Neptune で RDF と SPARQL を使用するお客様には、World Wide Web Consortium の SPARQL 1.1 Overview がガイドとして役立ちます。

グラフでのデータの見え方を理解したい場合、Amazon Neptune でのグラフデータモデルとクエリの裏側の仕組み に関する re:Invent 2018 のプレゼンテーションがあります。Github で入手可能なサンプルコードがついています。

GraphQL で Amazon Neptune にアクセスできるようにすることに関心があるなら、AWS AppSync GraphQL と Amazon Neptune の使い方を示すアプリケーションの例があります。

Amazon Neptune への移行を考えている場合は、re:invent 2018 のプレゼンテーション、Migrating to Amazon Neptune があります。また、GraphML データを Neptune CSV 形式に変換するツールもありますし、AWS Glue ジョブから Neptune への記述に役立つ Python ライブラリもあります。

Product-Page_Standard-Icons_01_Product-Features_SqInk
疑問を解決する

Amazon Neptune のよくある質問のページをご覧ください。

詳細 
Product-Page_Standard-Icons_02_Sign-Up_SqInk
無料のアカウントにサインアップ

AWS 無料利用枠にすぐにアクセスできます。 

サインアップ 
Product-Page_Standard-Icons_03_Start-Building_SqInk
コンソールで構築を開始する

AWS マネジメントコンソールで Amazon Neptune を使った構築を始めましょう。

サインイン