Skip to first unread message

Anmol Deep

Jul 28, 2015, 7:06:14 AM7/28/15
to OrientDB
This is very urgent , a lot of dependency on this , help appreciated .

Lets say RDBMS has two tables A and B

A has a foreign key , a primary key in B .
B has no reference of A  , i.e .no foreign key that is a primary key in A .

My orientDB database has a schema-Full data-model which maintains bi-directional lightweight edges / LINKS , here

A will have out_ReferenceOfB and B will have in_ReferenceOfA.

Now I do ETL using exported .csv files and try to populate data .

I use ETL to read .json config file for table A and .csv file for table A , and use the following json object to create lightweight edges :

"link": {
                        "joinFieldName": "foreignKeyB",
                        "linkFieldName": "out_ReferenceOfB ",
                        "linkFieldType": "LINK",
                        "lookup": "B.IDENTIFIER",
                        "unresolvedLinkAction": "ERROR"

How do I create the other link / reference which creates out_ReferenceOfA in the same .json configuration by using ETL .


Jul 28, 2015, 10:27:30 AM7/28/15
to OrientDB, anmold...@gmail.com
I did not manage to create a bi-directional lightweight with .json configuration by using ETL.
If you want you can create the link from the class A to the class B using ETL and after you can use this javascript function
to create the edges from B to A.

var g=orient.getGraph();
var b=g.command('sql','select from in_ReferenceOfA');
  rid_in =b[i].getProperty('in').getId().toString();
  g.command('sql',"create edge out_ReferenceOfB from " + rid_in + " to "+ rid_out);


Luca Garulli

Jul 28, 2015, 11:08:00 AM7/28/15
to OrientDB, anmold...@gmail.com
Use the "edge" transformer in ETL, not LINK.

Best Regards,

Founder & CEO


You received this message because you are subscribed to the Google Groups "OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email to orient-databa...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Anmol Deep

Jul 28, 2015, 11:22:28 AM7/28/15
to Luca Garulli, OrientDB
but edge will not create Light weight Edges , we need Light Weight Edges without any class extension E , without any recordID being created.

Kind Regards,
Anmol Deep

Luigi Dell'Aquila

Jul 29, 2015, 2:39:38 AM7/29/15
to orient-...@googlegroups.com, Luca Garulli
Hi Anmol,

You can do it with ETL, just using EDGE transformer and then defining the loader like this (see useLightweightEdges: true):

"loader": {
        "orientdb": {
            "dbURL": ">yourDbUrl>",
            "dbType": "graph",
            "useLightweightEdges": true
I hope it helps


Luigi Dell'Aquila

Jul 29, 2015, 2:39:47 AM7/29/15
to orient-...@googlegroups.com, Luca Garulli
sorry, wrong formatting:

Anmol Deep

Jul 29, 2015, 5:28:31 AM7/29/15
to OrientDB, l.ga...@orientdb.com, luigi.de...@gmail.com
Really appreciate your reply , but I think may be I have been unable to explain my problem clearly , I will do one more try .

I am putting down my Schema now :

orientDB class Shelf
Properties :



orientDB class Slot

Properties :


Now consider Shelf .csv has no reference of Slot and Slot.csv has reference of Shelf in the .csv as foreign key .

Now please help me how can I use Edge transformer to create bidirectional references .

OK I may have got the understanding of lightWeightEdges wrong as internally implemented as LINKS  , sorry for that .

Now we are clear , can  you help me Luca , Luigi .

Best Regards
Anmol Deep
Reply all
Reply to author
0 new messages