Usando. NETpara se conectar a uma instância de banco de dados Neptune - Amazon Neptune

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Usando. NETpara se conectar a uma instância de banco de dados Neptune

Se você puder, sempre use a versão mais recente do Apache TinkerPop . NETCliente Gremlin, Gremlin.Net, compatível com sua versão do motor. As versões mais recentes contêm várias correções de erros que melhoram a estabilidade, o desempenho e a usabilidade do cliente. A Gremlin.Net versão a ser usada normalmente se alinhará às TinkerPop versões descritas na tabela do cliente Java Gremlin.

A seção a seguir contém um exemplo de código escrito em C# que se conecta a uma instância de banco de dados do Neptune e executa um percurso do Gremlin.

As conexões com o Amazon Neptune devem ser de uma instância da EC2 Amazon na mesma nuvem privada virtual VPC () da sua instância de banco de dados Neptune. Esse código de amostra foi testado em uma EC2 instância da Amazon executando o Ubuntu.

Antes de começar, faça o seguinte:

  • Instalar. NETna EC2 instância da Amazon. Para obter instruções de instalação. NETem vários sistemas operacionais, incluindo Windows, Linux e macOS, consulte Introdução ao. NET.

  • Instale o Gremlin. NETexecutando dotnet add package gremlin.net seu pacote. Para obter mais informações, consulte Gremlin. NETna TinkerPop documentação.

Para se conectar a Netuno usando o Gremlin. NET
  1. Crie um novo. NETprojeto.

    dotnet new console -o gremlinExample
  2. Altere os diretórios para o diretório do novo projeto.

    cd gremlinExample
  3. Copie o seguinte no arquivo Program.cs. Substituir your-neptune-endpoint com o endereço da sua instância de banco de dados Neptune.

    Para obter informações sobre como localizar o endereço da instância de banco de dados do Neptune, consulte a seção Conectar-se a endpoints do 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. Insira o seguinte comando para executar o exemplo:

    dotnet run

    A consulta do Gremlin no final deste exemplo retorna a contagem de um único vértice para fins de teste. Em seguida, ela é impressa no console.

    nota

    A parte final da consulta do Gremlin, Next(), é necessária para enviar a travessia ao servidor para avaliação. Se você não incluir esse método ou outro método equivalente, a consulta não será enviada à instância de banco de dados do Neptune.

    Os seguintes métodos enviam a consulta à instância de banco de dados do Neptune:

    • ToList()

    • ToSet()

    • Next()

    • NextTraverser()

    • Iterate()

    Use Next() se precisar que os resultados da consulta sejam serializados e gerados, ou Iterate() se não precisar.

    O exemplo anterior gera uma lista usando o percurso g.V().Limit(3).ToList(). Para consultar outro elemento, substitua-a por outra travessia do Gremlin com um dos métodos de término adequado.