问题标签 [neo4j-spatial]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
186 浏览

neo4j - Neo4j 空间索引删除

如何删除空间索引及其所有数据?我有添加到此索引的节点,但现在我已将其添加到另一个空间索引。我不再需要旧索引。

0 投票
2 回答
343 浏览

neo4j - 国家县市的neo4j空间索引

我刚开始使用 neo4j-spatial,并且对空间几何的基础知识有很好的理解——多边形、点、线。

因此,我们正在构建需要基于 OSM 行政区域(如国家、县和市)索引旅游信息(仅点)的 Web 应用程序。如何使用 neo4j-spatial 存储和索引此类数据?我熟悉 RDBMS,因此我们能够使用 PostGIS链接到解决方案来创建解决方案

我为每个行政区域创建了图层和索引。

创建的多边形节点

另外,如何根据给定的 GPS 旅游点确定行政区域,以便为其创建节点?

0 投票
2 回答
172 浏览

neo4j - 这两个 Cypher 查询有什么区别?

我有点难过。

在我的数据库中,我有这样的关系:

我想对给定用户执行查询,在哪里找到该用户和其他所有用户之间的共同艺术家。

为了大致了解我的数据库的大小,我有大约 600 个用户、47,546 位艺术家以及用户和艺术家之间的 184,211 个关系。

我尝试的第一个查询如下:

这需要大约 20 秒才能返回。此查询的配置文件如下:

我很沮丧。这似乎不需要 20 秒。

后来我又回到了这个问题上,并尝试从一开始就对其进行调试。

我开始分解查询,我注意到我得到了更快的结果。如果没有 Neo4J Spatial 查询,我在大约 1.5 秒内得到结果。

我终于添加了一些东西,最后得到了以下查询:

此查询在 4240 毫秒内返回。5倍的提升!此查询的配置文件如下:

而且,为了证明我连续运行它们并得到了非常不同的结果:

除非我发疯了,否则这两个查询之间的唯一区别是节点的名称(我已将“me”更改为“u”,将“other”更改为“u2”)。

为什么这会导致 5 倍的改进??!?!

如果有人对此有任何见解,我将永远感激不尽。

谢谢,

-亚当


编辑 8.1.14

根据@ulkas 的建议,我尝试简化查询。

结果是:

~4 秒

~20 秒

太奇怪了。似乎从字面上看,“其他”和“我”的命名节点导致查询时间急剧增加。我很困惑。

谢谢,-亚当

0 投票
0 回答
98 浏览

neo4j - Neo4j 2.1.3 密码内的距离解析错误

我一直在寻找这个问题几乎 2 天没有任何结果我在 stackoverflow 和 neo4j 组中发现了不同的问题,但没有一个解决了问题(可能我做错了什么?)

我最近下载了 neo4j 2.1.3 企业版并尝试在密码中使用 withinDistance(也在 2.0.1 中测试过)

我在 stackoverflow 中发现了这个问题并做了彼得的建议,但没有改变 Neo4j Spatial 'WithinDistance' Cypher 查询返回空,而 REST 调用返回数据

我做的步骤

创建图层

创建索引

创建了一个具有经度和纬度属性的节点之后将节点添加到索引

最后将节点添加到图层

对于测试,我使用 lon, lat (1,1) Using findGeometriesWithinDistance by REST 工作,但使用 withinDistance 的密码查询不起作用:(

任何帮助我真的考虑放弃neo4j因为这个:(

0 投票
1 回答
24 浏览

cypher - 我可以在空间索引查询中使用计算查询字符串吗?

我有一组标记为“Foo”的节点以及相关的地理信息,对于该组中的每个节点,我想从第二组中找到地理位置附近的节点。第二组中的节点已添加到名为“树”的空间索引中。我试图按照以下方式构建查询

但我得到了错误

无效输入 ')':需要标识符字符、空格或 '='

此错误与第 3 行中的最后一个字符有关。

是否可以使用构造的查询字符串?如果是这样,我错过了什么?

0 投票
1 回答
256 浏览

neo4j - Neo4j / Cypher Query 使用 withinDistance 返回 0 行

我刚刚在我的服务器上设置了 Neo4j Spatial 插件,我正在使用 SDN 3.1.2 创建我的 wkt 索引:

整体效果很好,我可以像这样使用 HTTP 控制台进行查询withinDistance,返回匹配的节点:

但是,我想像这样使用 Cypher 进行查询:

无论值如何,它都只返回 0 行。

我遇到了这篇文章,建议手动将 Car 节点添加到空间索引:CarsLocation。

所以我执行了这个命令:

但它也不能使密码查询起作用。

我还尝试通过 http 调用执行 Cypher:

也不行。

但是,当我指定大量公里(IMO 超过限制)时,这个通过:

(返回我的 Car 节点 30)。

我错过了什么重要的事情吗?

我不知道哪里可能是错误,阻止 Cypher 查询工作。

我指出我正在使用 Neo4j 2.1.2。

0 投票
1 回答
350 浏览

neo4j - Neo4j / Cypher / 遍历具有特定标签的节点

我正在使用 Neo4j Spatial 插件。

让我们假设这个基本查询:

它返回 34 公里内的所有汽车。

如果我只想检索赛车(使用标签)怎么办。

如果没有空间,我会这样做:

现在,如果我想要34 公里内的所有赛车,我会:

=> Cannot add labels or properties on a node which is already bound
确实,c已经绑定在第一行了。

我不想这样做:

这将迫使我打开所有节点,检查是否相等... => 性能不佳,尤其是当查询变得更复杂时(即使 id 已被索引)。

什么是有效的解决方案?

更新 - - - - - - - - - -

也许只比较节点更有效:

是吗?

0 投票
1 回答
106 浏览

java - 使用 Neo4j Spatial 查找节点

使用 Neo4j Spatial 核心 java api,我已经能够将代码放在一起,允许我在距给定点的特定距离内查找节点,但是,我希望能够根据节点的集水半径来包含节点。

例如,如果我位于我所在地区或更远地区的比萨公司可以交付给我的任何给定点(给定他们自己的交付半径)

关于如何使用 Neo4j Spatial 实现这一点的任何想法?

0 投票
1 回答
100 浏览

lucene - Neo4j空间查询中节点的排序和过滤

是否可以通过地理距离和节点属性过滤 Neo4j 中的节点,返回节点的某个顺序而不是它们的距离(如时间戳)。我可以使用标准的基于 lucene 的索引和 neo4j 地理层来做一个或另一个,但我似乎无法将两者结合起来以提供全面的查找。任何关于如何实现这一目标的想法都将不胜感激。非常感谢,詹姆斯。

0 投票
1 回答
1378 浏览

neo4j - 如何仅使用密码在 Neo4j 中创建空间索引?

我想玩 neo4j 和空间索引。我找不到任何文档来演示如何通过密码来做到这一点,只能通过 REST API。

是否可以通过 Cypher 创建空间索引,比如在 neo4j Web 控制台中?