Set up the Gremlin console to connect to a Neptune DB instance - Amazon Neptune


Set up the Gremlin console to connect to a Neptune DB instance

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

Gremlin コンソールを使用して、リモートグラフデータベースに接続できます。The following section walks you through installing and configuring the Gremlin Console to connect remotely to a Neptune DB instance. You must follow these instructions from an Amazon EC2 instance in the same virtual private cloud (VPC) as your Neptune DB instance.

To install the Gremlin Console and connect to 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. Download the appropriate version of the Gremlin console from the Apache web site. You can check the engine release page for the Neptune engine version you are currently running to determine which Gremlin version it supports. For example, for version 3.4.8, you can download the Gremlin console from the Apache Tinkerpop3 website onto your EC2 instance like this:

  4. Gremlin コンソール zip ファイルを解凍します。

  5. ディレクトリを解凍ディレクトリに変更します。

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

    1. Download the certificate:

    2. Create a directory for certificates:

      mkdir /tmp/certs/
    3. Copy Java certificates into the new directory:

      cp jre_path/lib/security/cacerts /tmp/certs/cacerts
    4. Add the Amazon certificate to the repository:

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


    For information about finding the hostname of your Neptune DB instance, see the Amazon Neptune エンドポイントへの接続 section.

    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 コンソールを実行します。



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

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

  9. At the gremlin> prompt, enter the following to connect to the Neptune DB instance.

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

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

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


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

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

For more information on the Neptune implementation of Gremlin, see Amazon Neptune グレムリン基準準拠.