Gremlin コンソールをセットアップして Neptune DB インスタンスに接続する - Amazon Neptune

「翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。」

Gremlin コンソールをセットアップして Neptune DB インスタンスに接続する

Gremlin コンソールを使用すると、REPL (read-eval-print loop) 環境で TinkerPop グラフおよびクエリを試してみることができます。

Gremlin コンソールを使用して、リモートグラフデータベースに接続できます。次のセクションでは、 にリモートで接続するための Gremlin コンソールのインストールと設定について説明します。Neptune DB インスタンス. Amazon EC2 と同じ仮想プライベートクラウド (VPC) の Neptune DB インスタンス. インスタンスからこれらの手順を実行してください。

Gremlin コンソールをインストールして に接続するにはNeptune

  1. Gremlin コンソールバイナリには Java 8 が必要です。EC2 インスタンスで Java 8 をインストールするには、次のように入力します。

    sudo yum install java-1.8.0-devel
  2. EC2 インスタンスで Java 8 をデフォルトランタイムとして設定するには、次のように入力します。

    sudo /usr/sbin/alternatives --config java

    プロンプトが表示されたら、Java 8 の数を入力します。

  3. Apache ウェブサイトから Gremlin コンソールの適切なバージョンをダウンロードします。現在実行している エンジンバージョンのエンジンリリースページNeptuneを確認して、サポートする Gremlin バージョンを特定できます。たとえば、バージョン 3.4.8 の場合は、Gremlin コンソールApache Tinkerpop3 ウェブサイトから、次のように EC2 インスタンスにダウンロードできます。

    wget https://archive.apache.org/dist/tinkerpop/3.4.8/apache-tinkerpop-gremlin-console-3.4.8-bin.zip
  4. Gremlin コンソール zip ファイルを解凍します。

    unzip apache-tinkerpop-gremlin-console-3.4.8-bin.zip
  5. ディレクトリを解凍ディレクトリに変更します。

    cd apache-tinkerpop-gremlin-console-3.4.8
  6. CA 証明書をインストールします。Gremlin コンソールには、リモート証明書を検証する証明書が必要です。

    1. 証明書をダウンロードします。

      wget https://www.amazontrust.com/repository/SFSRootCAG2.cer
    2. 証明書用のディレクトリを作成します。

      mkdir /tmp/certs/
    3. Java 証明書を新しいディレクトリにコピーします。

      cp {@jre_path}/lib/security/cacerts /tmp/certs/cacerts
    4. リポジトリに Amazon 証明書を追加します。

      sudo keytool -importcert \ -alias neptune-tests-ca \ -keystore /tmp/certs/cacerts \ -file /home/ec2-user/SFSRootCAG2.cer \ -noprompt \ -storepass changeit
  7. 抽出されたディレクトリにある conf サブディレクトリで、以下のテキストを含む neptune-remote.yaml という名前のファイルを作成します。置換 your-neptune-endpoint のホスト名または IP アドレスを示す Neptune DB インスタンス。角括弧 ([ ]) が必要です。

    注記

    Neptune DB インスタンス のホスト名を見つける方法については、「Amazon Neptune エンドポイントへの接続」セクションを参照してください。

    hosts: [your-neptune-endpoint] port: 8182 connectionPool: { enableSsl: true, trustStore: /tmp/certs/cacerts } serializer: { className: org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV3d0, config: { serializeResultToString: true }}
  8. ターミナルで Gremlin コンソールディレクトリ (apache-tinkerpop-gremlin-console-3.4.8) に移動し、次のコマンドを入力して Gremlin コンソールを実行します。

    bin/gremlin.sh

    次のような出力が表示されます。

    \,,,/ (o o) -----oOOo-(3)-oOOo----- plugin activated: tinkerpop.server plugin activated: tinkerpop.utilities plugin activated: tinkerpop.tinkergraph gremlin>

    gremlin> プロンプトが表示されます。このプロンプトで残りのステップを入力します。

  9. gremlin> プロンプトで、次のように入力して Neptune DB インスタンス. に接続します。

    :remote connect tinkerpop.server conf/neptune-remote.yaml
  10. gremlin> プロンプトで、次のように入力してリモートモードに切り替えます。これにより、すべての Gremlin クエリがリモート接続に送信されます。

    :remote console
  11. Gremlin グラフにクエリを送信するには、次のように入力します。

    g.V().limit(1)
  12. 完了したら、次のように入力して Gremlin コンソールを終了します。

    :exit
注記

各ステートメントを区切るには、セミコロン (;) または改行文字 (\n) を使用します。

最終的なトラバーサルに先行する各トラバーサルは、next() を実行して終わる必要があります。最終的なトラバーサルからのデータのみが返されます。

Gremlin の Neptune 実装の詳細については、「Amazon Neptune での Gremlin の標準コンプライアンス.」を参照してください。