gpt4 book ai didi

graph - 如何在 Cypher 中使用关系索引

转载 作者:行者123 更新时间:2023-12-04 20:06:05 24 4
gpt4 key购买 nike

我正在使用 neo4j 2.1.4。
我有节点 - POINT 和关系 - ROAD
我有 ROAD 属性的索引 - OBJ_COD

:schema ls -l :ROAD

Indexes
ON :ROAD(OBJ_COD) ONLINE
ON :ROAD(ID) ONLINE

No constraints

我想通过 OBJ_COD 值搜索 ROAD,但密码不使用索引来查找关系。
neo4j-sh (?)$ profile MATCH (a)-[r:`ROAD` {ID:333275}]-(b:`POINT`) RETURN r LIMIT 1; 

ColumnFilter
|
+TraversalMatcher

+------------------+------+---------+-------------+----------------+
| Operator | Rows | DbHits | Identifiers | Other |
+------------------+------+---------+-------------+----------------+
| ColumnFilter | 2 | 0 | | keep columns r |
| TraversalMatcher | 2 | 2265843 | | a, r, a |
+------------------+------+---------+-------------+----------------+

如何强制密码使用现有索引来搜索单个关系?

最佳答案

模式索引仅在节点上可用。对关系建立索引的需求几乎总是揭示图形数据建模中的一个问题。通常,您使用索引来查找图遍历的起点。良好的建模实践是,您域中的任何内容都是 thingentity应该是节点和关系把你的things进入语义上下文。如果您按照此操作并且您的查询从 something 开始不需要索引关系。

然而,在一些罕见的情况下,关系索引可能是一个有效的选择。在这种情况下,您需要回退以使用旧索引来建立关系。查看 fine documentation以便了解它们是如何工作的。

关于graph - 如何在 Cypher 中使用关系索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25871820/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com