OrientDB GraphED: borde de inserción SQL entre dos (select RID de vértice) s? O enfoque alternativo para importaciones muy grandes

Por ejemplo, dos vértices simples en un Gráfico de OrientDB:

orientdb> CREATE DATABASE local:/databases/test admin admin local graph; Creating database [local:/databases/test] using the storage type [local]... Database created successfully. Current database is: local:/graph1/databases/test orientdb> INSERT INTO V (label,in,out) VALUES ('vertexOne',[],[]); Inserted record 'V#6:0{label:vertexOne,in:[0],out:[0]} v0' in 0.001000 sec(s). orientdb> INSERT INTO V (label,in,out) VALUES ('vertexTwo',[],[]); Inserted record 'V#6:1{label:vertexTwo,in:[0],out:[0]} v0' in 0.000000 sec(s). 

¿Hay alguna manera de crear una ventaja entre estos dos vértices solo conociendo sus "tags", no sus "RID"?

Por ejemplo (no funciona):

 orientdb> INSERT INTO E (label, in, out) VALUES ('is_connected_to', (SELECT @rid FROM V WHERE label = 'vertexOne'), (SELECT @rid FROM V WHERE label = 'vertexTwo')); Inserted record 'E#7:0{label:is_connected_to,in:null,out:null} v0' in 0.001000 sec(s). 

He intentado con 'FLATTEN' como posible solución. Sin suerte:

 orientdb> INSERT INTO E (label, in, out) VALUES ('is_connected_to', (SELECT FLATTEN(@rid) FROM V WHERE label = 'vertexOne'), (SELECT FLATTEN(@rid) FROM V WHERE label = 'vertexTwo')); Inserted record 'E#7:1{label:is_connected_to,in:null,out:null} v0' in 0.001000 sec(s). 

Los bordes creados están entre null y null . No dados.

Esperaba usar OrientDB SQL para esto, ya que tengo una gran cantidad de conexiones y el enfoque SQL parece ser más rápido.

Sin embargo, si esto no es posible, ¿hay alguna sugerencia sobre una alternativa para los bordes de import por lotes (aproximadamente 2M)?

¡Gracias!

SQLCreateEdge es probablemente lo que estás tratando de hacer:

 create edge from (select from V where label = 'vertexOne') to (select from V where label = 'vertexTwo') set label = 'is_connected_to' 

sin embargo, para la import de conexiones muy grande, sugiero SQLCreateLink . esta gem se sugiere aquí .

La inserción a granel es posible como SQL Bath

 begin; CREATE EDGE E FROM #34:3349 TO #32:3349; CREATE EDGE E FROM #41:10971 TO #33:3348; commit retry 100; 
Intereting Posts