问题标签 [gremlin]

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 回答
657 浏览

php - OrientDB PHP/Gremlin 桥

我正在使用 OrientDb 并想通过 PHP 运行 Gremlin 命令。有人知道是否有任何可以连接这两种语言的桥梁或产品吗?

虽然我知道 OrientDB-PHP 和 OrientDB-REST 包,但它们都不允许执行 Gremlin 命令。

或者,从哪里开始学习如何编写和实现这样一段脚本的最佳地点?

0 投票
1 回答
79 浏览

neo4j - 边缘迭代器返回错误的结果

我正在尝试使用图表中的特定边,但通过它的 id 引用它是行不通的。

我可以通过属性查询来抢占优势:

当我检查这个边缘时,它是我感兴趣的那个。所以我尝试通过它的索引来指定它3042

为什么控制台返回3335

0 投票
1 回答
672 浏览

java - 为什么我不能在 Java 中使用 Gremlin 为新顶点设置 ID?

我将 Gremlin 与 Java 和 Neo4j 图一起使用。我创建了 3 个新顶点并尝试将它们的 ID 设置为 1、2、3,但它似乎不起作用,我做错了什么?

返回:

为什么是这样?如何将 ID 设置为 1、2、3?我也可以将 ID 设置为字符串吗?

谢谢!

0 投票
2 回答
2347 浏览

sorting - 如何使用 Gremlin 对 Noe4j 结果进行排序和限制?

这是您可以使用 Gremlin 对 Neo4j 图表中的结果进行排序(排序)的方式:

或者

这是如何使用偏移/跳过和限制来限制结果:

但是,如果您结合排序和限制

它会抛出一个错误......

0 投票
2 回答
181 浏览

graph - 如何加载具有相关顶点的顶点作为集合

GraphDb 端

顶点:用户

边缘:有

顶点:汽车

对象侧

问题

我想通过 Gremlin 从 Neo4J 获取具有 Cars 属性的用户 X?(我正在使用 Neo4jClient)

它与 Linq to Entity 的 Include 方法非常相似。

此致

0 投票
4 回答
1419 浏览

gremlin - 通过 Gremlin 查询从节点返回属性子集

有没有办法使用 Gremlin 查询仅返回图形节点的所有属性的子集?

我知道您可以使用转换管道来连接属性值,但我更感兴趣的是获得结构化结果(如 propertyName1 = value1,propertyName2 = value2)。

0 投票
1 回答
2061 浏览

nosql - 在图形数据库中进行聚合的想法

我知道肯定有很多人在做这件事。

使用 neo4J 进行项目。假设我有一个名为 Photo 的实体。现在它出现在互联网上,有一百万人喜欢它。将这百万个赞放入图表中,然后导航该图表以计算聚合,以便我可以显示计数似乎很愚蠢。当然,索引可以使这更有效,特别是如果索引用于计算聚合(就像它们在 SQL 中一样),但是大量的搜索让我认为情况并非如此。当然,许多聚合只是特定节点的关系计数,但这似乎仍然是错误的(例如,从 Photo 到 Like 事件的图关系看起来很难看)。

也许最好的方法是仅将图形数据库用于它的好处,然后将它们用于事件之类的事情,将它们放入 SQL 数据库中。一个反驳的论点可能是我可以解决所有这些麻烦,然后想要一个汇总,比如“有多少朋友的朋友喜欢这个?” 我就回到了图表的后院。

那里的选择似乎是编写一些 java或一堆密码查询。

0 投票
1 回答
599 浏览

python - Neo4j:基于节点属性和位置选择单个节点的查询方法是什么?

我无法评估何时使用哪种 Neo4j 查询机制(Gremlin、Cypher、遍历、内置算法)。例如,我想在整个图中选择单个节点

  • 边数最多的;
  • 在距 4 个起始节点之一的特定路径长度内;
  • 具有一定价值的财产。

我正在使用 Python neo4jrestclient,并且可以单独执行基本的 Gremlin/Cypher 脚本和遍历某些需求(例如,使用 Gremlin 计算 In/OutDegree),但我缺少关于如何组合它们的大局观。

有什么建议么?

0 投票
2 回答
606 浏览

nosql - 图 DB 等效于二分网络投影?

假设一个网络有两种节点,比如用户和地点,关系为“一直在”。这是一个二分网络,通常由 networkx 之类的模块提供网络在两个方向中的任何一个方向的“投影”,这样我们就可以生成地点网络(链接的权重与普通用户的数量相同)或用户网络(链接的权重与公共场所的数量相同)。

我应该如何在 Graph 数据库中生成这样的网络?您能否提供最常见的开源示例,例如 OrientDB、Neo4j、FlockDB ......

更具体地说,如何用 gremlin 做到这一点?

在这种情况下(gremlin)我自己已经粘贴了一个答案,但是它从幸存的节点开始,从将要被投影的节点开始会更有效,因为通常第一步是一些间隔子选择

所以我们只对那些在某一天或某个其他时间段都在同一个地方相关的用户网络感兴趣。

0 投票
3 回答
4402 浏览

python - 选择合适的方式在 Python 中使用 Neo4j

我目前正在为 neo4j 使用嵌入式 python 绑定。我目前没有任何问题,因为我的图非常小(稀疏且最多 100 个节点)。我正在开发的算法涉及图上的大量遍历,更具体地说,通常是图上的 DFS 以及不同的子图上的遍历。将来我打算在大型图上运行该算法(据说稀疏且具有数百万个节点)。

在这里阅读了与 python/neo4j 绑定性能相关的不同线程后,我想知道我是否应该已经切换到 Python 的一些 REST API 客户端(如bulbflow、py2neo、neo4jrestclient),直到我无法更改所有代码。

不幸的是,我没有找到任何全面的信息来源来比较不同的方法。

任何人都可以提供有关此问题的进一步见解吗?在选择其中一个选项时,我应该考虑哪些标准?