Utilizzo di .NET per connettersi a un'istanza database Neptune - Amazon Neptune

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo di .NET per connettersi a un'istanza database Neptune

Se puoi, usa sempre la versione più recente del client Apache TinkerPop .NET Gremlin, Gremlin.Net, supportata dalla versione del tuo motore. Le nuove versioni contengono numerose correzioni di bug che migliorano la stabilità, le prestazioni e la fruibilità del client. La Gremlin.Net versione da utilizzare in genere si allinea alle TinkerPop versioni descritte nella tabella per il client Java Gremlin.

La sezione seguente contiene un codice di esempio scritto in C # che si connette a un'istanza database Neptune ed esegue un attraversamento Gremlin.

Le connessioni ad Amazon Neptune devono provenire da un'istanza Amazon EC2 che si trova nello stesso cloud privato virtuale (VPC) dell'istanza database Neptune. Questo codice di esempio è stato testato su un'istanza Amazon EC2 che esegue Ubuntu.

Prima di iniziare, esegui queste attività:

  • Installa .NET sull'istanza Amazon EC2. Per istruzioni su come installare .NET su sistemi operativi multipli, incluso Windows, Linux e macOS, vedere Get Started with .NET.

  • Installa Gremlin.NET eseguendo dotnet add package gremlin.net per il tuo pacchetto. Per ulteriori informazioni, consulta Gremlin.net nella documentazione. TinkerPop

Per connettersi a Neptune utilizzando Gremlin.NET
  1. Crea un nuovo progetto .NET.

    dotnet new console -o gremlinExample
  2. Spostare le directory nella nuova directory di progetto.

    cd gremlinExample
  3. Copiare quanto segue nel file Program.cs. Sostituisci your-neptune-endpoint con l'indirizzo della tua istanza database Neptune.

    Per informazioni su come trovare l'indirizzo dell'istanza database Neptune, consulta la sezione Connessione agli endpoint 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. Immettere il comando seguente per eseguire l'esempio:

    dotnet run

    La query Gremlin alla fine di questo esempio restituisce il conteggio di un singolo vertice a scopo di test. Viene quindi stampata sulla console.

    Nota

    La parte finale della query Gremlin, Next() è obbligatoria per inviare l'attraversamento al server per la valutazione. Se non includi quel metodo o un altro metodo equivalente, la query non viene inviata all'istanza database Neptune.

    I metodi riportati sotto inviano la query all'istanza database Neptune:

    • ToList()

    • ToSet()

    • Next()

    • NextTraverser()

    • Iterate()

    Utilizza Next() se hai bisogno che i risultati della query vengano serializzati e restituiti oppure Iterate() in caso contrario.

    L'esempio precedente restituisce un elenco utilizzando l'attraversamento g.V().Limit(3).ToList(). Per eseguire query per qualcos'altro, sostituirla con un altro attraversamento Gremlin con uno dei metodi finali appropriati.