gpt4 book ai didi

neo4j - 避免某些遍历

转载 作者:行者123 更新时间:2023-12-02 01:08:56 24 4
gpt4 key购买 nike

我有一个大约有 10M 个节点的数据库。这些节点中有 990 万个是 99% 的查询中未使用但 1% 的查询仍然需要的详细信息。对于 99% 的查询,我如何告诉图形数据库不要向下遍历特定节点,无论查询中的路径可能是通配符?

抱歉为三个图数据库添加了标签,我仍在评估哪个图数据库适合我们使用。

最佳答案

使用 Neo4j 时,您可以使用 labels将节点分组到集合中。标签的示例有 :UserProductAdmin 等。此外,relationships节点之间可以输入。

这些结构可以在查询时用来告诉数据库应该使用哪些节点标签/关系类型。

例子:

1 - 仅返回具有特定节点标签的节点(:User):

MATCH (u:User)
RETURN u

2 - 返回带有 :User 标签而不是 Administrator 标签的节点(因为节点可以有多个标签):

MATCH (u:User)
WHERE NOT u:Administrator
RETURN u

3 - 匹配 :User:Product 之间的模式,仅遵循从用户到产品的 :BUY 类型关系其中 u.id = 10 并且不考虑 :Administrator 的用户。返回用户和相关产品。

MATCH (u:User)-[:BUY]->(p:Product)
WHERE u.id = 10 AND NOT u:Administrator
RETURN u, p

关于neo4j - 避免某些遍历,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46106868/

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