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
Importante
La scelta della versione corretta del driver Apache TinkerPop Gremlin è fondamentale per la compatibilità con la versione del motore Neptune in uso. L'utilizzo di una versione incompatibile può causare errori di connessione o comportamenti imprevisti. Per informazioni dettagliate sulla compatibilità delle versioni, vedere. Accesso al grafo Neptune con 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.netper il tuo pacchetto. Per ulteriori informazioni, consulta Gremlin.NET nella documentazione. TinkerPop
Per connettersi a Neptune utilizzando Gremlin.NET
-
Crea un nuovo progetto .NET.
dotnet new console -o gremlinExample -
Spostare le directory nella nuova directory di progetto.
cd gremlinExample -
Copiare quanto segue nel file
Program.cs. Sostituisciyour-neptune-endpointcon l'indirizzo della tua istanza DB 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); } } } } -
Immettere il comando seguente per eseguire l'esempio:
dotnet runLa 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 oppureIterate()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.