我有一个包含大约 150 万个节点的大型 Neo4J 空间数据库。
我注意到空间索引已损坏 - 一些节点是交叉链接的:
match (n)<-[:RTREE_REFERENCE]-(a)<--(c),(n)<-[:RTREE_REFERENCE]-(b)<--(c) where id(a) <> id(b) return n,a,b,c limit 1;
返回:
{"table": {
"_response": {
"columns": ["n", "a", "b", "c"],
"data": [
{
"row": [
{
"wkt": "POINT (374075.17 164903.59)",
"id": 525155,
"gtype": 1,
"bbox_abc": [374075.17, 164903.59, 374075.17, 164903.59]
},
{
"bbox_xx": [374075.17, 164903.59, 374075.17, 164903.59]
},
{
"bbox_xx": [374075.17, 164903.59, 374075.17, 164903.59]
},
{
"bbox_xx": [373539, 164601, 376045, 165462]
}
],
======= CUT ======
"nodeMap": {
"118052": {
"bbox_xx": [374075.17, 164903.59, 374075.17, 164903.59]
},
"525156": {
"wkt": "POINT (374075.17 164903.59)",
"id": 525155,
"gtype": 1,
"bbox_abc": [374075.17, 164903.59, 374075.17, 164903.59]
},
"845986": {
"bbox_xx": [373539, 164601, 376045, 165462]
},
"846042": {
"bbox_xx": [374075.17, 164903.59, 374075.17, 164903.59]
}
},
}}
我认为空间索引节点应该有一个 RTREE_REFERENCE。我的怎么可能有两个。数据库中有大约 115 个此类节点存在此问题。