小编Mat*_*Tan的帖子

gremlin-python 在一笔事务中删除多个顶点和边

我的背景:

  • gremlin-python
  • AWS 海王星

我的问题是:

1) 如果我拥有要删除的顶点和边的所有特定 id,我可以在一笔事务中递归地删除顶点和边吗?目的是编写 python 函数来评估每个边,并确定是否需要删除它,并链接一个 gremlin 查询来删除它。

例如:

要删除的顶点 ID:

'vertex1', 'vertex2', 'vertex3'
Run Code Online (Sandbox Code Playgroud)

要删除的边 id:

'edge1', 'edge2', 'edge3'
Run Code Online (Sandbox Code Playgroud)

链接到 g 的 python 函数的示例如下:

def chain_drop(g, vertex_id):
    g = g.V(vertex_id).drop()
    return g
Run Code Online (Sandbox Code Playgroud)

我希望作为一个事务执行的链式查询理想情况下如下所示:

g.E('edge1').drop()
 .V('vertex1').drop()
 .E('edge3').drop()
 .V('vertex3').drop()
 .iterate() # execute all these queries as one transaction
Run Code Online (Sandbox Code Playgroud)

上面的方法不起作用...而且似乎我不能在我的 gremlin 查询中使用 .E('someid') 。

有点偏离主题,但我最好的尝试(非递归)如下所示:

g.E('edge1', 'edge2', 'edge3').as_('edges')
 .V('vertex1', 'vertex2', 'vertex3').as_('vertices')
 .union(__.select('edges'),
        __.select('vertices'))
 .drop()
 .iterate()
Run Code Online (Sandbox Code Playgroud)

非常感谢任何帮助!

python gremlin amazon-neptune

0
推荐指数
1
解决办法
2392
查看次数

标签 统计

amazon-neptune ×1

gremlin ×1

python ×1