问题标签 [gremlinpython]

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

gremlin - Gremlin Python:如果存在,如何使用合并来获取顶点,否则插入

如果存在这样的顶点,是否可以使用 Gremlincoalesce步骤按 id(或属性)选择顶点,否则插入顶点?我尝试使用以下方法执行此操作,但出现'list' object has no attribute 'coalesce'错误,我可以看到这是由.fold().next()返回 python 列表对象引起的:

这样做有什么性能优势,还是我应该简单地将其分解为初始顶点查询的 hasNext() 上的 if/else?

0 投票
1 回答
507 浏览

gremlin - Gremlin - 如何展平分组输出

以下查询将每个给定的输入顶点与其相邻顶点和它们之间的货币对分组,然后在每组分组边上使用两个聚合函数 sum 和 count。

虽然查询有效,但当我翻译成gremlinpython时,它给了我错误"TypeError: Object of type GraphTraversal is not JSON serializable"。(我无法解决这个问题,所以我认为最好修改导致问题的查询)。

在高层次上,我怀疑如果我改变输出格式,那么问题就可以解决。

主要问题是,有没有办法“扁平化”分组输出?

由此:

进入这个:

或这个:

编辑

原来这可能与输出格式无关。这似乎是group破坏它并导致“JSON 可序列化”错误的命令。奇怪的查询,但是有没有不使用 group 命令进行分组的方法?

0 投票
1 回答
835 浏览

gremlin - AWS Neptune 的地理位置距离?

我正在尝试使用 Amazon Neptune,在我的 gremlin 查询中,我需要过滤附近的用户并按其他关系进行过滤,类似于 Tinder(约会应用程序)所做的。所以我需要在查询中计算地理位置距离。我在 tinkerpop 文档或 Neptune 文档中找不到该功能。是否有可能做到这一点?我正在寻找类似 Neo4j 的“空间功能”的东西

幸运的是,我没有开始开发,也没有决定要使用什么数据库引擎,所以如果我不能使用这个基本工具进行编码,我将使用 Neo4j 而不是 AWS Neptune

编辑: 此问题已在评论中链接,但不包含答案: Geolocation search with Gremlin

我想知道如何使用 AWS Neptune 进行地理定位查询

0 投票
2 回答
412 浏览

gremlin - janusgraph 日期值与 gremlin 查询结果不匹配

我有一些带有日期类型值的图形数据。我对日期类型属性的 gremlin 查询正在运行,但输出值不是日期值。

环境:

  • Janusgraph 0.3.1
  • gremlinpython 3.4.3

下面是我的例子:

  • 数据(JanusGraph):{"ID": "doc_1", "MY_DATE": [Tue Jan 10 00:00:00 KST 1079]}
  • 询问:g.V().has("ID", "doc_1").valueMap("MY_DATE")
  • 输出(gremlinpython):datetime(1079, 1, 16)

错误为 6 天 (1079.1.10 -> 1079.1.16)。当年份在 1600 以上时,不会出现这种不匹配。时间戳在 janusgraph 和 gremlinpython 之间是否存在一些序列化/反序列化问题?

谢谢

0 投票
1 回答
946 浏览

gremlin - Gremlin:从一组中查找所有与另一组有连接的节点

给定两个 Gremlin 查询q1及其q2结果ri = qi.toSet(),我想找到其中所有与节点r1有连接的节点,r2而忽略边缘标签和方向。

我目前的方法包括计算两个结果集之间的最短路径:

但是,我发现 Tinkerpop 中的最短路径计算不适用于此目的,因为如果 r1 中有节点而与 r2 中的任何节点没有任何连接,则结果将为空。

相反,我考虑了连接组件,但该connectedComponents()步骤将产生找到的所有连接组件,我必须过滤它们以找到满足上述要求的连接组件。

你对我如何在 gremlin-python 中解决这个问题有什么建议吗?

0 投票
2 回答
1660 浏览

gremlin - 在 Gremlin 中合并多个查询的结果

假设我想从我的数据库中获取一些顶点:

然后我有另一组顶点:

想象一下,它不仅仅是g.V(),而是一些更复杂的遍历来获取我的顶点。但是遍历必须以 开头V(),因为我想从所有节点中进行选择。

让我们也假设我想多次这样做。所以我可能想合并 7 个不同的结果集。每个人都可以有完全不同的方式来获得结果。


现在我想将这两个结果合并到一个结果集中。我的第一个想法是这样的:

但这不起作用。第二次调用fold将清除我的“局部变量”,因为这是一个障碍步骤。

我目前的尝试是这样的:

这可行,但看起来有点太复杂了。如果我想重复 7 次,那将是一个非常复杂的查询。

有没有更好的方法来完成来自两个不同查询的结果的简单合并?

0 投票
1 回答
1005 浏览

gremlin - GremlinServer 错误:499

我在 AWS 上运行 Neptune 服务器,并对 jupyter 笔记本中的 db ipython 单元魔法进行 gremlin 查询。我已经运行了许多遍历,并且我收到了来自aiogoblin他们的resultset.py文件的错误:GremlinServerError: 499: {"requestId":"5bb1e6ea-49ec-4a1d-9364-2b1bf717df9c","code":"InvalidParameterException","detailedMessage":"The [eval] message contains 66 bindings which is more than is allowed by the server 64 configuration"}

如何在不弹出此错误消息的情况下对服务器进行持续查询?

0 投票
1 回答
169 浏览

gremlin - 使用 Gremlin 的自我网络

我是 gremlin 的新手,一直致力于使用 Gremlin 创建一个自我网络。

自我改变连接很容易找到,但问题在于找到改变改变连接。有没有办法编写一个查询来提取 n 半径自我网络中的所有 alter-alter 连接以及 ego-alter 连接?

在此处输入图像描述

例如在众神的图表中。“木星”的 1-半径自我网络具有“木星-海王星”、“木星-冥王星”等自我改变连接。而alter-alter连接是“海王星-冥王星”。如何检索这些连接。

提前致谢。

0 投票
2 回答
71 浏览

gremlin - Gremlin 根据只有入边或出边的顶点识别种群子集

我有一个带有功能的用户的 gremlin 图。图的边缘从用户那里出去并进入特征。用户没有传入边,特征也没有传出边。每个用户顶点都有许多输出边到特征顶点。

我想找到连接到顶点的女性用户子feature_afeature_b。我正在使用gremlinpython并且我知道我可以使用下面的代码在 python 中进行某种设置交集。gremlin 有没有办法做到这一点?

0 投票
2 回答
452 浏览

gremlin - 有没有办法在 asyncio Python 应用程序中使用 Gremlin?

TinkerPop 文档描述了 Python 的 GLV。但是,其中提供的示例是围绕同步代码构建的。有一个aiogremlin库被设计用来在 Python 的 asyncio 代码中使用 Gremlin。不幸的是,该项目似乎已停止。

官方 GLV 是否支持 asyncio 或者有没有办法在异步 Python 应用程序中使用 Gremlin?