.NET を使用して Neptune DB インスタンスに接続する - Amazon Neptune

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

.NET を使用して Neptune DB インスタンスに接続する

可能であれば、使用しているエンジンバージョンがサポートする最新バージョンの Apache TinkerPop .NET Gremlin クライアント Gremlin.NET を必ず使用してください。新しいバージョンには、クライアントの安定性、パフォーマンス、使いやすさを向上させる多数のバグ修正が含まれています。Gremlin.Net使用するバージョンは、通常 Java Gremlin TinkerPop クライアントの表に記載されているバージョンと一致します。

次のセクションには、Neptune DB インスタンスに接続して Gremlin トラバーサルを実行する、C# で記述されたサンプルコードが含まれています。

Amazon Neptune への接続は、Neptune DB インスタンスと同じ仮想プライベートクラウド (VPC) の Amazon EC2 インスタンスから行ってください。このサンプルコードは Ubuntu を実行する Amazon EC2 インスタンスでテスト済みです。

開始する前に、以下を実行します。

  • Amazon EC2 インスタンスに .NET をインストールします。Windows、Linux、および macOS を含む複数のオペレーティングシステムで .NET をインストールする手順については、「.NET の開始方法」を参照してください。

  • dotnet add package gremlin.net を実行して、パッケージに Gremlin.NET をインストールします。詳細については、ドキュメントの Gremlin.NET を参照してください。 TinkerPop

Gremlin.NET を使用して Neptune に接続するには
  1. 新しい .NET プロジェクトを作成します。

    dotnet new console -o gremlinExample
  2. ディレクトリを、新しいプロジェクトディレクトリに変更します。

    cd gremlinExample
  3. Program.cs ファイルに次の内容をコピーします。Neptune DB your-neptune-endpointインスタンスのアドレスに置き換えます。

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

    using System; using System.Threading.Tasks; using System.Collections.Generic; using Gremlin.Net; using Gremlin.Net.Driver; using Gremlin.Net.Driver.Remote; using Gremlin.Net.Structure; using static Gremlin.Net.Process.Traversal.AnonymousTraversalSource; namespace gremlinExample { class Program { static void Main(string[] args) { try { var endpoint = "your-neptune-endpoint"; // This uses the default Neptune and Gremlin port, 8182 var gremlinServer = new GremlinServer(endpoint, 8182, enableSsl: true ); var gremlinClient = new GremlinClient(gremlinServer); var remoteConnection = new DriverRemoteConnection(gremlinClient, "g"); var g = Traversal().WithRemote(remoteConnection); g.AddV("Person").Property("Name", "Justin").Iterate(); g.AddV("Custom Label").Property("name", "Custom id vertex 1").Iterate(); g.AddV("Custom Label").Property("name", "Custom id vertex 2").Iterate(); var output = g.V().Limit<Vertex>(3).ToList(); foreach(var item in output) { Console.WriteLine(item); } } catch (Exception e) { Console.WriteLine("{0}", e); } } } }
  4. サンプルを実行するには、次のコマンドを入力します。

    dotnet run

    この例の最後にある Gremlin クエリは、テスト目的で単一の頂点の数を返します。その後、コンソールに表示されます。

    注記

    Gremlin クエリの最後の部分、Next() では、評価のためにトラバーサルをサーバーに送信する必要があります。そのメソッドまたは別の同等のメソッドを含めない場合、クエリは Neptune DB インスタンスに送信されません。

    以下のメソッドは Neptune DB インスタンスにクエリを送信します。

    • ToList()

    • ToSet()

    • Next()

    • NextTraverser()

    • Iterate()

    クエリ結果をシリアル化して返す必要がある場合、Next() を、そうでない場合は Iterate() を使用します。

    前述の例では、g.V().Limit(3).ToList() トラバーサルを使用してリストを返します。その他の対象にクエリを実行するには、いずれかの適切な終了メソッドを持つ Gremlin トラバーサルで置き換えます。