翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ベストプラクティス: Neptune を最大限に活用する
以下に、Amazon Neptune を使用するための一般的な推奨事項をいくつか示します。Amazon Neptune を使用してパフォーマンスを最大にするための推奨事項をすばやく検索できるリファレンスとしてご使用ください。
目次
- Amazon Neptune 基本操作ガイドライン
- Neptune で Gremlin を使用するための一般的なベストプラクティス
- Neptune で Gremlin Java クライアントを使用するためのベストプラクティス
- Apache TinkerPop Java クライアントの互換性のある最新バージョンを使用する
- 複数のスレッドにまたがってクライアントオブジェクトを再利用する
- 読み取りと書き込みエンドポイントに別々の Gremlin Java クライアントオブジェクトを作成する
- 複数のリードレプリカエンドポイントを Gremlin Java 接続プールに追加する
- 接続制限を回避するためにクライアントを閉じる
- フェイルオーバー後の新しい接続の作成
- maxInProcessPerConnection と maxSimultaneousUsagePerConnection を使用し、値を同じに設定してください。
- 文字列ではなくバイトコードとしてサーバーにクエリを送信する
- クエリによって返される ResultSet またはイテレーターを常に完全に消費する
- 頂点とエッジをバッチで一括追加
- Java DNS 仮想マシンでのキャッシュの無効化
- クエリごとのレベルでタイムアウトを設定する (オプション)
- java.util.concurrent.TimeoutException のトラブルシューティング
- openCypher および Bolt を使用した Neptune のベストプラクティス
- フェイルオーバー後の新しい接続の作成
- 存続期間の長いアプリケーションの接続処理
- の接続処理 AWS Lambda
- クエリでは双方向のエッジを優先する
- Neptune は 1 つのトランザクションでの複数の同時クエリをサポートしていません。
- 完了したら、ドライバーオブジェクトを閉じます
- 読み取りと書き込みには明示的なトランザクションモードを使用してください。
- 例外の場合の再試行ロジック
- 1 つのSET句を使用して複数のプロパティを一度に設定する
- パラメータ化されたクエリを使用する
- UNWIND 句でネストされたマップの代わりにフラット化されたマップを使用する
- 可変長パス (VLP) 式で、より制限の厳しいノードを左側に配置する
- 詳細な関係名を使用して、ノードラベルの重複チェックを回避する
- 可能な場合はエッジラベルを指定する
- 可能であれば WITH句を使用しないでください。
- 制限付きフィルターをクエリのできるだけ早い段階で配置する
- プロパティが存在するかどうかを明示的に確認する
- 名前付きパスを使用しない (必須でない限り)
- (COLLECTDISTINCT()) を避ける
- すべてのプロパティ値を取得するときに、個々のプロパティルックアップよりもプロパティ関数を優先する
- クエリの外部で静的計算を実行する
- 個々のステートメントUNWINDの代わりに を使用するバッチ入力
- ノード/リレーションシップIDsにカスタムを使用する
- クエリで ~id 計算を行わない
- を使用した Neptune のベストプラクティス SPARQL