Import Neo4j CSV into OrientDB

59 views Asked by At

How do you import a Neo4j CSV Database Dump into OrientDB?
Because I'm not sure what this error is pointing to.
I've since switched from Neo4j-Dump conversion into direct CSV.

Reproduction Steps:

  1. Imported NIH-Lung-Cancer Graph-Database CSV-Data
  2. Created an OrientDB-Docker-container
  3. Ran the oetl.sh file/path/for/config.json

I expected to see the command work like show in the documentation.
Running the shell command:

oetl.sh /home/dataverse_files/input/Orientdb/Anatomy-config.json

Log response:

OrientDB etl v.3.2.17 (build 211ebdf4e697bc32a41a4456f09b4c47f2a4eb4b, branch UNKNOWN) https://www.orientdb.com 

XXXX-XX-XX XX:XX:XX:XXX INFO  Detected limit of amount of simultaneously open files is 1048576,  limit of open files for disk cache will be set to 523776 [ONative]create contextremote:localhost:2480
Exception in thread "main" com.orientechnologies.orient.core.exception.OConfigurationException: Error on creating ETL processor
        at com.orientechnologies.orient.etl.OETLProcessorConfigurator.parse(OETLProcessorConfigurator.java:172)
        at com.orientechnologies.orient.etl.OETLProcessorConfigurator.parseConfigAndParametersWithContext(OETLProcessorConfigurator.java:103)
        at com.orientechnologies.orient.etl.OETLProcessorConfigurator.parseConfigAndParameters(OETLProcessorConfigurator.java:68)
        at com.orientechnologies.orient.etl.OETLProcessor.main(OETLProcessor.java:121)
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
        at java.lang.String.substring(String.java:1927)
        at com.orientechnologies.orient.etl.loader.OETLOrientDBLoader.getDatabasePool(OETLOrientDBLoader.java:471)
        at com.orientechnologies.orient.etl.loader.OETLOrientDBLoader.configure(OETLOrientDBLoader.java:409)
        at com.orientechnologies.orient.etl.OETLProcessorConfigurator.configureComponent(OETLProcessorConfigurator.java:179)
        at com.orientechnologies.orient.etl.OETLProcessorConfigurator.configureLoader(OETLProcessorConfigurator.java:218)
        at com.orientechnologies.orient.etl.OETLProcessorConfigurator.parse(OETLProcessorConfigurator.java:143)
        ... 3 more

The Anatomy-config.json looks like

{
    "config": { "log": "debug" },
    "begin": [],
    "source": {
        "file": {
            "path": "/home/dataverse_files/input/Anatomy.csv",
            "lock": true
        }
    },
    "extractor": { "row": {} },
    "transformers": [
        {
            "csv": {
                "separator": ",",
                "nullValue": "NULL",
                "skipFrom": 1,
                "skipTo": 1
            }
        },
        { "vertex": { "class": "V" } }
    ],
    "loader": {
        "orientdb": {
            "dbURL": "remote:localhost:2480",
            "dbUser": "root",
            "dbPassword": "rootpwd",
            "dbAutoCreate": true,
            "tx": false,
            "batchCommit": 1000,
            "dbType": "graph"
        }
    }
}

I imported / restored a Neo4j-Database-Dump
From a NIH Lung-Cancer Graph-Database found on Havard-Dataverse Dataset.
Exported a CSV from a Neo4j Database.
Created an OrientDB-Docker-container
And ran the oetl.sh file/path/for/config.json.

0

There are 0 answers