OrientDB - 在导入CSV期间创建不区分大小写的索引

时间:2017-06-16 17:30:44

标签: csv indexing import orientdb

有没有办法在orientdb导入期间创建不区分大小写的索引?

这是我目前用于导入的json:

{
  "source": { "file": { "path": "/tmp/data.csv" } },
  "extractor": { "csv": {} },
  "transformers": [
    { "vertex": { "class": "User" } }
  ],
  "loader": {
    "orientdb": {
       "dbURL": "remote:/opt/orientdb/databases/MyData",
       "dbType": "graph",
       "classes": [
         {"name": "User", "extends": "V"},
       ], "indexes": [
         {"class":"User", "fields":["id:Long"], "type":"UNIQUE" },
         {"class":"User", "fields":["email:String"], "type":"NOTUNIQUE" }
       ]
    }
  }
}

我希望电子邮件是不区分大小写的索引。我已经尝试了元数据我不确定格式,我知道如果我使用" COLLATE ci"创建索引。这会让我不区分大小写,但我希望在导入过程中创建它。所有文档和问题/答案都指向整理ci,但没有关于如何在导入过程中设置它。

谢谢, 史蒂夫

1 个答案:

答案 0 :(得分:0)

目前ETL不允许将整理设置为索引。 要更好地控制模式创建,可以在启动ETL之前使用LOAD SCRIPT。

http://orientdb.com/docs/last/Console-Command-Load-Script.html

$ORIENTDB_HOME/bin/console.sh "CONNECT REMOTE:localhost/demo;LOAD SCRIPT /path/to/scripts/data.osql"

然后

$ORIENTDB_HOME/bin/oetl.sh $(pwd)/etl-config.json