Neo4j能够导入缓冲区对象吗?

时间:2017-06-25 21:10:28

标签: neo4j cypher

我正在尝试将二进制uuid作为实体id导入,但id作为字符串加载。我认为这与在加载之前将数据存储在csv文件中有关。

我见过neo4j接受二进制文件,但不确定它是如何实现的。

USING PERIODIC COMMIT
LOAD CSV WITH HEADERS FROM
'file:///output_files/entity_file.csv' AS line
MERGE (e:Entity {id: line.ent_uuid })

{"id":"{\"type\":\"Buffer\",\"data\":[205,155,117,117,97,122,78,219,15│ │0,217,94,99,158,70,112,123]}"}

另外,如果我将id存储为常规unicode字符串,那么会有多少性能损失?

1 个答案:

答案 0 :(得分:0)

CSV是一个文本文件,因此在将列导入Neo4j之前,您必须将其强制转换。

Cypher附带了一些转化功能:toInttoFloat,... 但是没有可以将字符串转换为字节数组(由Neo4j支持)。

另一方面,您可以创建自己的功能(称为用户定义的功能)。看看这里:https://neo4j.com/docs/developer-manual/3.2/extending-neo4j/cypher-functions/

但我从未尝试过在密码中管理字节。 希望它能有所帮助。

干杯