0
我有以下细节的数据集:经与索引麻烦的Neo4j
- 140万节点
- 290万的关系
- 15000000性质(包括性别,姓名,subscriber_id等)
- 1关系类型(联系人)
我已批量导入数据到我的机器上的数据库(64位,16核心,16 G B RAM)使用https://github.com/jexp/batch-import/tree/20
我想索引Subscriber_ID这些节点,但我不知道我在做什么。
我跑
start n = node(*) set n:Subscribers
我的理解是这会为每个节点的标签(这是正确的)
接下来,我跑了
create index on :Subscribers(SUBSCRIBER_ID)
我想这应该创建在属性'SUBSCRIBER_ID'上具有'订阅者'标签的所有节点的索引。 (正确吗?)
现在,当我去的Neo4j-SH和运行
neo4j-sh (?)$ schema
==> Indexes
==> ON :Subscribers(SU_SUBSCRIBER_ID) ONLINE
==>
==> No constraints
但是当我运行下面它说没有为节点设置指标。
neo4j-sh (?)$ index --indexes
==> Node indexes:
==>
==> Relationship indexes:
我有几个问题
- 我一定要告诉它索引现有的数据?如果是的话我该怎么办 ?
- 我该如何使用索引?我已阅读了 文档,但是我遇到了一些问题。
- 它看起来 像我可以在我运行批量导入 脚本时设置索引,但我真的不知道如何...有人可以解释 请吗?
这里是我的数据的例子:
Nodes.txt
id SU_SUBSCRIBER_ID CU_FIRST_NAME gender SU_AGE
0 123456 Ann F 56
1 832746 ? UNKNOWN -1
2 546765 Tom UNKNOWN -1
3 768345 Anges F 72
4 267854 Aoibhlinn F 38
rels.csv
start end rel counter
0 3 CONTACTED 2
1 2 CONTACTED 1
1 4 CONTACTED 1
3 2 CONTACTED 2
4 1 CONTACTED 1