gpt4 book ai didi

mongodb - 用于空间搜索的 neo4j 与 mongodb

转载 作者:IT老高 更新时间:2023-10-28 13:13:19 32 4
gpt4 key购买 nike

我正准备开始一个项目,我将在该项目中为餐馆构建推荐引擎。我一直在 neo4j (graph db) 和 mongodb (document db) 之间徘徊。我的节点/文件将是餐厅和人之类的东西。我知道我会想要一些优势,比如 person->likes->restaurant 或 person->ate_at->restaurant。然而,我的主要查询是在位置 Y 的 X 英里范围内找到餐馆。

如果我在 Y 的 X 英里内有 20 家餐厅,但没有通过任何边连接,neo4j 将如何处理空间查询?我知道使用 mongodb 我可以索引 lat/long 并查询所有餐厅类型。 neo4j 是否在断开连接的图中提供相同的功能?

在回答诸如“我的 friend 最常去哪些餐厅?”之类的问题时,neo4j (graph db) 是否可行?或者 mongodb (document db) 会为我提供类似的功能吗?

最佳答案

Neo4j Spatial 引入了 Spatial RTree(或其他方式)索引,它是图形本身的一部分。这意味着,如果您对它们进行索引,即使是断开连接的域实体也将通过空间搜索找到(即关系会将空间索引连接到餐厅)。此外,这非常灵活,您可以将 RTree 中的 Raw BBox 搜索与其他事情结合起来,例如同时检查餐馆类别,因为您可以跳出并进入图表的不同部分。

通过这种方式,neo4j Spatial 支持您期望形成完整拓扑的所有搜索功能,例如组合搜索和对带孔的多边形的搜索等。

请注意,Neo4j Spatial 是 0.7,所以请温柔地询问 http://groups.google.com/group/neo4j/about :)

关于mongodb - 用于空间搜索的 neo4j 与 mongodb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9605271/

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