【发布时间】:2021-12-13 02:04:53
【问题描述】:
我们在项目中使用 Gremlin JavaScript 语言变体和 Amazon Neptune,并且我们有多个用于批量创建顶点和边的用例。
一个简单的例子是一个包含 200 到 1000 个用户的数组。我需要执行一个批处理查询来检查用户是否存在。如果用户存在,则添加具有属性的顶点,否则忽略该用户。所有这些条件都需要批量完成。
注意:需要避免使用 Gremlin 脚本。所以遍历是我正在寻找的。strong>
【问题讨论】:
-
你能分享一下你目前尝试过的Gremlin吗?我假设您想要结合
inject和coalesce来执行此操作? -
我是 Gremlin 的新手,所以我不知道注入和合并的目的。我尝试了简单的批处理。例如:g.addV("User").property(id, "user1").property("name", "user1").as("user1")。 addV("User").property(id, "user2").property("name", "user2").as("user2").next()。这最多可以添加 200 到 1000,并且此查询正在添加顶点而不检查图中是否存在数据。
-
我会尽快写一个例子作为答案。本质上,您可以
inject将地图放入遍历中并使用它来填充顶点和/或边。coalesce步骤有助于更新插入模式,例如“如果不存在则创建”
标签: gremlin amazon-neptune gremlin-server gremlinjs