我最近开始使用导入工具来加快加载时间,到目前为止,结果很有希望,只是它们后来没有通过 cypher 反射(reflect)在我的数据库中。
我的流程:
$ /path/to/neo4j-community-3.0.3/bin/neo4j stop
$ rm -rf /path/to/neo4j-community-3.0.3/data/
$ mkdir /path/to/neo4j-community-3.0.3/data
$ /path/to/neo4j-community-3.0.3/bin/neo4j-import --nodes:record /path/to/records.csv --into /path/to/neo4j-community-3.0.3/data
tmp.csv:
meta:ID,time:long,lat:float,lon:float
KAQP_20140420v20001_0000,1397970000,26.9387950897,-91.2847290039
KAQP_20140420v20001_0001,1397970060,26.9387989044,-91.2847595215
.... (1440 lines of the same record format) ...
调用 neo4j-import 工具的结果:
Neo4j version: 3.0.3
Importing the contents of these files into neo4j-community-3.0.3/data:
Nodes:
:record
/neo4j/tmp.csv
Available memory:
Free machine memory: 23.65 GB
Max heap memory : 6.87 GB
Nodes
Done in 384ms
Prepare node index
[*:7.63 MB------------------------------------------------------------------------------------] 0
Done in 34ms
Calculate dense nodes
Done in 10ms
Node --> Relationship Sparse
Done in 10ms
Relationship --> Relationship Sparse
Done in 10ms
Node counts
Done in 51ms
Relationship counts
Done in 10ms
IMPORT DONE in 2s 360ms. Imported:
1440 nodes
0 relationships
5760 properties
非常好,到目前为止一切看起来都很棒。现在我启动 neo4j:
$ /path/to/neo4j-community-3.0.3/bin/neo4j start
然后我尝试获取记录数:
$ /path/to/neo4j-community-3.0.3/bin/neo4j-shell -c 'MATCH (r:record) RETURN count(r) as count;'
+----------+
| count(r) |
+----------+
| 0 |
+----------+
1 row
42 ms
这很奇怪,所以我想也许该标签没有注册或者什么?所以我尝试了这个:
$ /path/to/neo4j-community-3.0.3/bin/neo4j-shell -c 'MATCH (r) RETURN count(r) as count;'
+----------+
| count(r) |
+----------+
| 0 |
+----------+
1 row
28 ms
这确实很奇怪。我的下一个想法是目录可能很奇怪?所以我测试了 /path/to/neo4j-community-3.0.3/data
的大小:
之前:
$ du -sh /path/to/neo4j-community-3.0.3/data
4K
之后:
$ du -sh /path/to/neo4j-community-3.0.3/data
53M
它肯定在那里!我不知道我是否错过了关键的一步。知道发生了什么吗?
最佳答案
调用neo4j-import
时需要指定目录$NEO4J_HOME/data/databases/graph.db
:
/path/to/neo4j-community-3.0.3/bin/neo4j-import --nodes:record /path/to/records.csv --into /path/to/neo4j-community-3.0.3/data/databases/graph.db
或者在其他地方创建导入,并将 $NEO4J_HOME/data/databases/graph.db
的内容替换为 neo4j-import
创建的数据存储
关于Neo4j 导入工具成功但结果未显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38385368/