问题标签 [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 回答
1028 浏览

graph - 查找 2 个顶点之间的路径时 orient DB 的检索时间

我们有一个用例,我们需要使用图形数据库。周围有

10000 个节点和 1000000 条边(大约)。

现在我需要像这样查询。对于任何 2 个顶点,找到它们之间的所有可能路径。

origntDb 需要多长时间?我希望检索时间非常短。这是否受 orientDB 支持?

两个顶点的距离大约为 20。但每个顶点可能有大约 10 个出边。

0 投票
1 回答
3262 浏览

gremlin - 通过仅考虑propertyname = value的顶点找到2个顶点之间的所有路径

我有一个遍历用例,如下所示。orientDb 支持吗?

1)查找从节点 1 到节点 2 的所有路径。仅遍历那些具有属性 xyz="val1" 的节点 2)查找最短路径。仅遍历那些具有属性 xyz="val1" 的节点 3)查找最长路径。仅遍历那些节点具有属性 xyz="val1"

注意:请注意我在大写字母中提到的条件

0 投票
2 回答
689 浏览

gremlin - Gremlin:如何在查询中引用循环变量?

我坚持使用 gremlin 查询来rank根据作为参数传递给查询的排序键列表为节点分配值。由“uniqueId”值标识的每个节点都应根据重新排列的数组中的出现顺序分配一个等级。

这有效:

但这不是(用 for 循环变量替换 int ):

你知道为什么这不起作用吗?我也很高兴能用更简单的想法来达到同样的目标。

0 投票
1 回答
1284 浏览

sorting - Neo4j - Gremlin - 如何对 .groupCount.cap() 返回的结果进行排序

我有一个问题。这个查询:

返回哈希映射

如何订购?输出需要为 v[619]=7, v[10]=4,, v[138]=3, v[140]=3, ...

谢谢

0 投票
1 回答
1284 浏览

graph - orientDB中的嵌套记录和查询相同

我需要存储一个带有顶点和边的图。我的用例如下:

每个顶点具有以下属性。

有一些基本属性,如姓名、年龄等,然后有一些记录类型的属性

注意:这是只有一个顶点的属性。这些是嵌套属性的一种。嵌套属性是关系数据库中的一种记录。

1)现在我想在这些嵌套属性/记录上触发类似 SQL 的查询。这可能吗?例如,仅当 Prop2="1" 时才查找 Prop5 的每个顶点值。这些是一种关系数据库查询。

Eg2:计算 Prop5 值 = 7 的嵌套记录数

OrinetDB 是否支持此功能?如果是,如何?

0 投票
1 回答
1978 浏览

performance - OrientDB - 大数据的性能

我在我的项目中使用 OrientDB,我真正关心的是性能。我创建了大数据来测试它,有 500 000 人和 500 000 个兴趣,以及人和人之间的随机关系(2 496 540 个关系),以及人和兴趣(3 322 060 个关系)。

我需要做的是遍历顶点和边。我试过格雷姆林。对于朋友少于100的人,获得共同的朋友大约需要10-20秒,但如果一个人有数千个朋友,这将无法正常工作,需要太多时间。

对于朋友少于 100 的人来说,获得朋友推荐大约需要 40-50 秒,但当一个人有数千个朋友时也是如此。

这些是 OrientDB 快速进行这种遍历的任何方式吗?

OrientDB SQL遍历只支持深度优先遍历,两个人之间似乎不可能找到共同好友,好友推荐复杂。我错过了什么?

感谢您的回答!

0 投票
1 回答
2970 浏览

graph - Tinkerpop - 我如何在图中找到一个节点?

如果不遍历整个事物,我似乎无法在图中找到特定节点。有什么我想念的吗?

我正在使用 tinkerpop 蓝图。

Orientdb 为诸如“#8:1”之类的节点提供了某种无语义的 id - 我如何在不知道 id 的情况下找到它?顶点有一个像'user=jason'这样的属性来识别它。我在想我将只使用 redis 来存储用户/位置对或以其他方式使用超级节点(不,谢谢)

0 投票
1 回答
922 浏览

neo4j - Gremlin sideEffect 变量赋值不起作用

我正在尝试使用以下构造完成逐顶点子图匹配:

我应该说地图比较出人意料地工作得很好,但是副作用部分似乎没有以p适当的方式修改 -vertex 。当我在执行这些 Gremlin 步骤后打印时p- 它看起来像一条管道。但更明确p = g.v(p.out.id)的,p = g.v(p.outE.inV.id)甚至数字i++的副作用似乎根本不会修改该值。

我在 Neo4j Gremlin shell 和 Groovy 中都试过这个。

0 投票
2 回答
816 浏览

lucene - 如何从 neo4j 返回所有最新节点?

是否可以查询 neo4j 的最新节点?在这种情况下,索引属性“timestamp”以毫秒为单位记录每个节点上的时间。

我发现的所有密码示例都涉及图形类型查询-“从节点 n 开始并遵循关系。返回按一个字段排序的结果集的一般最佳方法是什么?这在诸如 node4j 之类的图形数据库中是否可能?

0 投票
2 回答
760 浏览

graph - Tinkerpop - 将 Redis 用于键值属性索引还是使用 KeyIndexableGraph 更好

非常简单的问题,但我找不到我想要的信息 - 是否建议使用 tinkerpop 的 KeyIndexableGraph 或在 redis 等性能最高和专业的商店上推出自己的超高性能键/索引解决方案来获取节点/边缘您需要的位置?

在我看来,Redis 作为一种只关注键/值查找然后将地址传递到图表的技术在这里应该更好,但我想证明成本是合理的。

tinkerpop 的承诺是索引查找应该是 log(n) 对使用非常好的属性进行索引的文章。是否有可能在 redis 中做得更好,或者 n*constant 比在图形查找中要好得多?

编辑:我后来意识到这不是一个真正的智能问题——Redis 是一个内存存储,因此受内存的限制。查找图形节点位置仍然需要在图形中再次查找节点。