问题标签 [tinkerpop3]

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 投票
1 回答
85 浏览

titan - 关于 Titan 和 Tinkerpop 入门的几个基本问​​题

今天早上我决定试试泰坦。我已经使用过 Neo4j 和 OrientDB,并且打算使用其中一个图形数据库来实现多语言持久性模型;但是,由于我已经在使用 Cassandra,所以我决定尝试一下 Titan。

我已经通读了 Titan 文档以及 Tinkerpop 文档,但仍有一些不清楚的地方。Neo4j 和 OrientDB 几乎都是即插即用的。因为 Titan 看起来更像是 Cassandra 等数据库后端之上的一层,所以我不确定如何开始设置它。我可以启动 gremlin 控制台并连接到我的 Cassandra 集群,也可以从控制台启动 Titan 服务器。

我的主要问题是,我应该将 Titan 作为服务安装吗?我是制作自己的初始化脚本,还是使用 supervisor/monit/etc 来管理它?基本上,保持一切运行和可用的正确方法是什么?

0 投票
2 回答
382 浏览

indexing - Tinkerpop API 在从 Titan 检索数据时不使用混合弹性搜索索引

Tinkerpop API 在从 Titan 检索数据时不使用混合弹性搜索索引。虽然如果我们直接使用 Titan API,它确实使用混合弹性搜索索引。

例如,我在名称上创建了一个混合索引。

当我们使用 tinkerpop API :graph.iterator().V().has("name", "Apple")时,它不会在“名称”上使用混合索引并给出警告日志“查询需要遍历所有顶点”。

使用titan API,它可以正常工作并使用“名称”上的混合索引,如下所示

这可能是什么原因?

0 投票
2 回答
7993 浏览

titan - Gremlin:找到两个顶点之间的边的有效方法是什么?

很明显,在两个顶点之间找到一条边的直接方法是:

我觉得这filter一步必须遍历所有边缘,这对于一些边缘很多的应用程序来说真的很慢。

另一种方法可能是:

我假设第二种方法可能会快得多,因为它将使用 ID 索引,这将使其比第一种方法更快。

哪一个更快、更高效(就 IO 而言)?

我正在使用 Titan,所以你也可以让你的答案 Titan 具体。

编辑

就时间而言,似乎第一种方法更快(顶点的边缘为 20kb

IO怎么样?

0 投票
1 回答
706 浏览

stack-trace - TinkerPop 3.1.0 控制台 - 显示堆栈跟踪?

我目前正在使用 TinkerPop 3.1.0 Console Incubating,每次都有一个选项

Display stack trace? [yN]

我无法输入“y”或“N”来显示或不显示堆栈跟踪。它只是换行,让您没有机会输入 yN 答案。这意味着我无法对我的 gremlin 脚本、命令等进行任何调试。

您可以在下图中看到一个示例:Gremlin Console Stack Trace Message

我在运行 TinkerPop 3.1.0 Console Incubating 的两台不同的机器上遇到了这个问题,而我之前测试的 gremlin-2.6.0 Console 版本没有同样的问题。

其他人遇到过这个问题吗?有没有快速修复的可能?还是我需要等待新版本,看看是否能解决问题?

提前致谢。- 男

0 投票
1 回答
79 浏览

graph-databases - Titan Graph:数据模式。将状态放在图中的什么位置

我有一个“产品”顶点,它与“用户”顶点(几个可能的角色)有几个关系/边设置?在边缘属性中?状态在一系列事务期间是临时的,但如果用户中断事务序列或由于网络故障等断开连接,它们需要持久保存到后端存储。(发出请求的客户端来自有损的移动连接)

所以我的顶点和边有我自己的“状态”,它们作为事件和日志都有意义,我正在寻找一种最好的方法来保存(临时)和存储(持久)这些状态?任何人都可以就这个问题给我建议(使用 Titan graph-dynamoDB 设置,现在在本地,意味着远程/云)?非常感激!

0 投票
1 回答
1183 浏览

titan - 使用 TinkerPop3 Restful 接口连接到 Titan Graph DB

我对 Titan/Gremlin/TinkerPop3 非常陌生,并且正在玩/试验 Restful API 接口以在数据库中创建/修改/删除顶点/边缘。

我基本上想看看是否可以使用 tinkerpop3 公开的 API 进行图形处理。

我使用以下方法在 gremlin 服务器中创建了现代图形:

我可以通过 restful API 连接到 Titan 并执行:

但以下内容不返回任何内容:

我读过:http ://tinkerpop.incubator.apache.org/docs/3.0.1-incubating/#_connecting_via_rest

非常感谢任何帮助。提前致谢。

0 投票
1 回答
271 浏览

graph - 如何更改 TitanDb 中边缘的多重性?

如何更改 TitanDb 中边缘的多重性?我将边缘设置为 ONE2MANY,但需要将其更改为 MULTI。

0 投票
2 回答
2924 浏览

titan - 无法删除/删除 Vertex Titan 1.0 Tinkerpop 3 上的多个属性键

非常基本的问题,
我刚刚将我的 Titan 从 0.54 升级到Titan 1.0 Hadoop 1 / TP3 version 3.01

我遇到了删除值的问题

可能是因为升级过程或者只是我对TP3的误解。

现在,我想删除所有值“role1,role2 ....”

//---------------- 预期结果 ----------: 空顶点属性

但不幸的是结果不是空的:

// - - - - - - - - - - 输出 - - - - - - - :

删除后,值仍然很明显!

有任何想法吗?

0 投票
1 回答
392 浏览

titan - 如何使用谓词文本在 Titan 1.0 / TP3 3.01 中的顶点索引之间进行逻辑或

在我从 TP2 0.54 -> TP3 titan 1.0 / Tinkerpop 3.01 迁移期间

我正在尝试构建 gremlin 查询,该查询在不同顶点索引的属性之间使用 Predicate Text 进行“逻辑或”

就像是:

------------------- 预定义的 ES 索引: ------------------

- - - - - - - - - - 预期结果: - - - - - -

我想返回所有具有属性“storyContent”的顶点匹配文本包含前缀,或者所有具有匹配其大小写的属性“userContent”的顶点。
在这种情况下返回 v1 和 v2 ,因为 v3 不匹配并且 v4 重复,因此必须通过 dedup 步骤忽略它

或者可能 :

PS,

我以为使用 TP3 OR step 与 dedup ,但 gremlin 抛出错误......

谢谢你的帮助

维塔利

0 投票
2 回答
267 浏览

scala - 如何在 TinkerPop3 中收集可选分支?

我有一个看起来像这样的图表: 图形

使用gremlin-scala,我试图从 A 遍历并收集这些元组:

(A, Some(A1)), (B, None), (C, Some(A2))

所以本质上我想反复α取出边缘并选择分支到β,收集这些出局。我猜如果没有β优势,我需要注入一个空的“步骤”,但我无法弄清楚如何做到这一点。

我也对如何在遍历后倒带感到有些困惑,β现在jump已经被神秘地删除了(TP 3.1+)

到目前为止,我有类似的东西:

但这不会倒回到主遍历,并且如果“主干”上的任何节点缺少β出边,则会失败