问题标签 [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 投票
2 回答
515 浏览

java - 在多线程中使用泰坦图的最佳实践是什么?

我用 Spring Boot 构建了一个 Web 服务。我将泰坦图用作跨 Web 服务访问的单例。因此,如果对 Web 服务有多个请求,Web 服务器将产生线程来处理请求,并且在这些线程中将使用泰坦图。这种方法有什么问题吗?我使用的是 Titan graph 1.0.0 和 tinkerpop 3.0.1-incubating。所以泰坦图对我来说很新,我不知道在多线程中使用泰坦图是否有任何冲突。如果这种方法有问题,那么在多线程中使用泰坦图的最佳实践是什么?感谢您的帮助。

0 投票
1 回答
703 浏览

titan - Gremlin-Server REST API 中的查询比 Gremlin Shell 慢

我正在使用 tinkerpop3 gremlin server

我执行一个简单的查询(使用标准 REST api)来获取顶点的边缘。

当有很多结果(大约 2000-3000)时,查询很慢,20 多秒才能得到 JSON-results 响应。

有趣的是,当我使用 gremlin shell 运行相同的查询时,接收边缘对象结果大约需要 1 秒!

我不确定,但我怀疑 gremlin-server 的 JSON 解析器(我正在使用 GraphSon)可能有问题(可能非常慢)。

有任何想法吗?谢谢

0 投票
1 回答
433 浏览

cassandra - Gremlin-Server Cassandra

我开始与 Titan 合作,我使用 cassandra 作为后端存储。

当我启动 titan.sh cassandra 和 elasticsearch 时,gremlin 服务器没有启动。

我正在查看 titan.sh,我看到它使用 conf/gremlin-server/gremlin-server.yaml 启动 gremlin 服务器。问题是 gremlin-server.yaml 配置如下: graphs: { graph: conf/gremlin-server/titan-berkeleyje-server.properties}

使用 BerkeleyDb。我还没有看到 Gremlin Server 的 cassandra.yaml。

如何为 Cassandra 配置它?

谢谢

0 投票
0 回答
225 浏览

garbage-collection - Gremlin-Server 占用过多内存并挂起


我正在使用 gremlin-server (v3.02) 和 titan-hbase。我使用的是默认配置设置。服务器是 8GB 内存和 4 核。

经过几个小时的工作,服务器停止响应查询请求.. 必须说服务器上的请求强度不高,几乎是中低(每小时几个请求,可能低于那个)。

当检查 gremlin 的最后一条服务器日志消息时,我看到它与 Hbase 会话超时有关,并重试重新连接 hbase。
此时服务器 CPU 和内存为 90-100%。

Redhat 上的 JDK 1.8.0_45-b14 64bit
使用 jstat -gc 我可以将所有时间都花在 GC 上,oldgen 也是 100%。
我已经设置了“-Xmx 8g”,但是 htop 中的虚拟内存高达 12g,通过 xmx 的一些测试,我发现虚拟内存总是大约为“-Xmx + 4g”。
Jmap -histo 给了我大约 2g 的 [B (Byte[]) 以及 CacheRelation 的 gig 和 CacheVertex 的 gig。

重新启动 gremlin-server 后,一切恢复正常,并再次工作。

有任何想法吗?

0 投票
2 回答
215 浏览

gremlin - TinkerPop3 - 在边缘之​​间找到相同的属性

我正在尝试从现代图中创建的具有相同边属性(权重:0.4)的顶点输出。

谢谢。

0 投票
1 回答
675 浏览

titan - Titan 检索顶点属性

我在高度多线程的环境中创建图表,但遇到了一个奇怪的错误。在运行时,我有时会收到一个错误,即我尝试访问的属性不存在。

为了解决这个问题,我在发生错误时设置了一个断点,并发现了一些奇怪的行为。

当我运行时:

我看到了我期望的所有属性的列表,例如"PROP1""PROP2""PROP3"。但是,当我运行以下命令时:

我收到该属性不存在的错误。更奇怪的是,它vertex.property(xxx).value();适用于其他属性"PROP2""PROP3". 什么会导致这种奇怪的行为?

0 投票
1 回答
84 浏览

titan - 如何通过 gremlin 路径仅带来完整路径?

我的 gremlin 查询如下所示:

结果:

但我不希望结果中有中间路径。我只需要两条完整的路径:例如:

有任何想法吗?

0 投票
0 回答
91 浏览

groovy - 将 Neo4j 导入 TitanDB

我试图通过使用这个片段来实现这一点, 但class org.apache.tinkerpop.gremlin.neo4j.structure.Neo4jGraph不支持图形计算机。

有没有其他方法可以做到这一点?

0 投票
1 回答
72 浏览

titan - 在 Titan 1.0 上批量删除边缘

我有一长串边缘 ID(大约 120 亿个),我愿意从我的 Titan 图(托管在 HBase 后端)中删除它们。

我怎样才能快速有效地做到这一点?

我尝试通过 Gremlin 去除边缘,但这对于那么多边缘来说太慢了。

是否可以直接在 HBase 上执行 Delete 命令?我该怎么做?(如何组装要删除的密钥?)

谢谢

0 投票
1 回答
337 浏览

graph-databases - 如何在 Titan Graph 数据库上实现 A*?

我使用 Titan 1.0.0 和 Cassandra 作为后端。

我有位置数据(纬度,经度)作为这些节点之间的节点和边。我想找到从节点 A 到节点 B 的最短路径。图非常大。目前我正在使用此查询来查找两个节点之间的路径。

这个查询效率很低,并且路径大小超过 10 时会出现内存错误。在阅读了最短路径算法之后,我知道实现 A* 将比实现 Dijkstra 更可行,因为将探索更少的图。

现在我可以使用 JUNG 并将 TitanGraph 加载到内存中并实现我自己的 A* 以获得最短路径。但我不希望整个图表都在内存中。

请建议我如何在 TitanGraph 上实现 A*。我应该使用 API 查询图形,还是应该先将图形加载到内存中,然后在内存图形上运行 A*。

我也会感谢任何其他建议。