翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Neo4j から Neptune への移行に関する全般的情報
openCypher クエリ言語 の Neptune サポートを使用すると、Bolt プロトコル または を使用するほとんどの Neo4j ワークロードを HTTPS Neptune に移動できます。ただし、 openCypher は、Neo4j などの他のデータベースでサポートされている機能の大部分を含むオープンソース仕様です。
多くの点で互換性があるにもかかわらず、Neptune は Neo4j の完全互換品ではありません。Neptune は、Neo4j とはアーキテクチャ的に異なる高可用性や高耐久性などのエンタープライズ機能を備えたフルマネージドグラフデータベースサービスです。Neptune はインスタンスベースであり、1 つのプライマリライターインスタンスと最大 15 個のリードレプリカインスタンスを備えているため、読み取り容量を水平方向に拡張できます。Neptune サーバーレスを使用すると、クエリ量に応じてコンピューティング容量を自動的にスケールアップまたはスケールダウンできます。これは、データを追加すると自動的にスケーリングされる Neptune ストレージとは無関係です。
Neptune は、オープンソースのopenCypher標準仕様、バージョン 9
ただし、Neo4j 上で動作する多くのアプリケーションは、オープンソースではなく、Neptune がサポートしていない独自の機能も使用しています。例えば、Neptune はAPOCプロシージャ、一部の Cypher 固有の句と関数、および Char
、Date
、または Duration
データ型をサポートしていません。Neptune は、欠落しているデータ型をサポートされているデータ型に自動キャストします。
に加えてopenCypher、Neptune はプロパティグラフ ( および SPARQL RDF データ) の Apache TinkerPop Gremlin
openCypher | Gremlin | |
---|---|---|
[Style] (スタイル) |
宣言型 |
命令型 |
構文 |
パターンマッチング
|
トラバーサルベース
|
使いやすさ: |
SQL- インスパイアされ、プログラマー以外が読み取り可能 |
Java などのプログラミング言語と同様、習得までの時間が短い |
柔軟性 |
低 | 高い |
クエリサポート |
文字列ベースのクエリ |
文字列ベースのクエリ、またはクライアントライブラリによってサポートされるインラインコード |
クライアント |
HTTPS および ボルト |
HTTPS および Websockets |
一般に、Neo4j と Neptune はラベル付きプロパティグラフ (LPG) データをサポートしているため、Neo4j から Neptune に移行するようにデータモデルを変更する必要はありません。ただし、Neptune には、パフォーマンスを最適化するために活用できるアーキテクチャとデータモデルの違いがいくつかあります。例:
Neptune IDsは、ファーストクラスの市民として扱われます。
Neptune は AWS Identity and Access Management (IAM) ポリシーを使用して、柔軟かつきめ細かな方法でグラフデータへのアクセスを保護します。
Neptune には、Jupyter ノートブックを使用してクエリを実行し、結果を視覚化する方法がいくつか用意されています。Neptune はサードパーティ製視覚化ツールとも連携します。
> Neptune には Neo4j Graph Data Science (GDS) ライブラリに代わるドロップインはありませんが、Neptune はさまざまなソリューションを通じて現在グラフ分析をサポートしています。例えば、いくつかのサンプルノートブックは
、Python 環境内の AWS Pandas との Neptune 統合SDK を活用してグラフデータに対して分析を実行する方法を示しています。
質問がある場合は、 に連絡して、 AWS アカウントチーム AWS をサポートまたは関与させてください。お客様からのフィードバックをもとに、ニーズを満たす新機能の優先順位を決定します。