Amazon Neptune のアイコン

Amazon Neptune 専門2017 年〜

グラフデータベースをマネージドに提供し、高度に接続されたデータセットを処理するサービス

何ができるか

Amazon Neptune は、プロパティグラフ (Apache TinkerPop Gremlin) と RDF (SPARQL) の両方に対応したフルマネージドグラフデータベースです。ノード (頂点) とエッジ (辺) でデータ間の関係性をモデル化し、複雑な関係性クエリを高速に実行します。最大 3 つの AZ にデータを自動複製し、高可用性を実現します。

どのような場面で使うか

ソーシャルネットワークの友人関係やフォロー関係の分析、不正検知における取引パターンの検出、ナレッジグラフの構築、レコメンデーションエンジン、ネットワークトポロジの管理に利用されます。

身近な例え

人間関係の相関図に例えられます。RDB が表形式でデータを管理するのに対し、Neptune は「A さんは B さんの友人で、B さんは C さんの同僚」のような関係性そのものをデータとして格納します。「友人の友人」のような多段階の関係を高速にたどれます。

Neptune とは

Amazon Neptune は、データ間の関係性を効率的に格納・クエリするグラフデータベースです。RDB では JOIN を多段階に重ねる必要がある「友人の友人が購入した商品」のようなクエリを、グラフのトラバーサル (走査) として高速に実行できます。Neptune Serverless を使えば、ワークロードに応じて自動スケーリングし、アイドル時のコストを抑えられます。

Gremlin と SPARQL

Neptune は 2 つのクエリ言語に対応しています。Gremlin はプロパティグラフ向けの走査言語で、ノードとエッジに任意のプロパティを持たせてグラフを構築します。SPARQL は RDF (Resource Description Framework) 向けのクエリ言語で、主語-述語-目的語のトリプルでデータを表現します。ナレッジグラフやオントロジーの構築には SPARQL、アプリケーションのデータモデリングには Gremlin が適しています。

はじめかた

Neptune コンソールでクラスターを作成し、インスタンスクラスを選択します。VPC 内にデプロイされるため、EC2Lambda から VPC 経由で接続します。Gremlin コンソールや Neptune Workbench (Jupyter Notebook) でクエリを試せます。Neptune Serverless を選択すれば、キャパシティの事前設定なしに開始できます。

注意点

  • VPC 内にデプロイされるため、パブリックインターネットから直接アクセスできない。踏み台サーバーや VPN が必要
  • Neptune Serverless はワークロードに応じた自動スケーリングが可能だが、コールドスタート時にレイテンシが増加する場合がある

参考資料 (AWS 公式)

本ページの一次情報は AWS 公式サイトおよび公式ドキュメントです。最新の仕様 / 料金は次の公式ページで確認できます。

本ページと公式ドキュメントの記述が食い違う場合は、公式ドキュメントを正としてください。

共有するXB!

このサービスに関する最新アップデート

このサービスのアップデートをすべて見る
リージョン拡大

AWS Backup が Amazon Neptune の論理的に分離されたボールトを 3 つのリージョンに拡張

AWS Backup は、Amazon Neptune の論理的に分離されたボールトをアジア太平洋 (メルボルン)、ヨーロッパ (スペイン)、ヨーロッパ (チューリッヒ) の 3 リージョンに提供開始する。これにより、バックアップのコピーや共有、アクセス保護が可能になる。