Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Ajout en bloc de sommets et d'arêtes dans des lots
Chaque requête envoyée à la base de données Neptune s'exécute dans le cadre d'une seule transaction, sauf si vous utilisez une session. Autrement dit, si vous devez insérer un grand nombre de données à l'aide de requêtes Gremlin, leur traitement dans un lot contenant entre 50 et 100 éléments permet d'améliorer les performances en réduisant le nombre de transactions créées pour la charge.
Par exemple, l'ajout de 5 vertex à la base de données se présente comme suit :
// Create a GraphTraversalSource for the remote connection final GraphTraversalSource g = traversal().withRemote(DriverRemoteConnection.using(cluster)); // Add 5 vertices in a single query g.addV("Person").property(T.id, "P1") .addV("Person").property(T.id, "P2") .addV("Person").property(T.id, "P3") .addV("Person").property(T.id, "P4") .addV("Person").property(T.id, "P5").iterate();
De même, vous pouvez ajouter des arêtes par lots à l'aide de. addE V()À utiliser pour référencer des sommets existants en tant que source et cible de chaque arête :
// Add edges in a single batched query g.V("P1").addE("knows").to(V("P2")) .V("P2").addE("knows").to(V("P3")) .V("P3").addE("knows").to(V("P4")) .V("P4").addE("knows").to(V("P5")).iterate();
Vous pouvez également combiner la création de sommets et d'arêtes en un seul lot. as()À utiliser pour étiqueter les sommets nouvellement créés afin de pouvoir les référencer lorsque vous ajoutez des arêtes dans le même parcours :
// Add vertices and edges together in a single query g.addV("Person").property(T.id, "P1").as("p1") .addV("Person").property(T.id, "P2").as("p2") .addV("Person").property(T.id, "P3").as("p3") .addE("knows").from("p1").to("p2") .addE("knows").from("p2").to("p3").iterate();