标签: tinkerpop

TitanDB 索引没有改变状态

到目前为止,我想删除现有索引并按照文档中的步骤进行操作。我现在没有配置单独的索引后端。但是,当我到达必须等待索引状态更改的步骤时,m.awaitGraphIndexStatus它会永远等待更改并超时并出现以下错误:

GraphIndexStatusReport[success=false, indexName='usernameComposite', targetStatus=DISABLED, notConverged={username=INSTALLED}, converged={}, elapsed=PT1M0.092S]
Run Code Online (Sandbox Code Playgroud)

当我尝试创建一个新的时,也会发生同样的情况。任何想法可能导致这种情况?

我正在使用以下代码片段创建 indizes:

graph.tx().rollback()
mgmt = graph.openManagement()
name = mgmt.getPropertyKey('username')
mgmt.buildIndex('username-composite', Vertex.class).addKey(name).unique().buildCompositeIndex()
mgmt.commit()
mgmt.awaitGraphIndexStatus(graph, 'username-composite').call()
Run Code Online (Sandbox Code Playgroud)

gremlin titan tinkerpop

4
推荐指数
2
解决办法
1868
查看次数

泰坦Db无视指数

我有一个带有几个索引的图表.它们是两个具有标签限制的综合指数.(两者在不同的属性/标签上完全相同).一个肯定似乎工作,但另一个没有.我已完成以下配置文件()以加倍检查:

一个叫做KeyOnNode:属性uid和标签node:

gremlin> g.V().hasLabel("node").has("uid", "xxxxxxxx").profile().cap(...)
==>Traversal Metrics
Step                                                               Count  Traversers       Time (ms)    % Dur
=============================================================================================================
TitanGraphStep([~label.eq(node), uid.eq(dammit_...                     1           1           2.565    96.84
  optimization                                                                                 1.383
  backend-query                                                        1                       0.231
SideEffectCapStep([~metrics])                                          1           1           0.083     3.16
                                            >TOTAL                     -           -           2.648        -
Run Code Online (Sandbox Code Playgroud)

以上是完全可以接受的,效果很好.我假设魔术线是backend-query.

另一种叫做NameOnSuperNode:属性name和标签supernode:

gremlin> g.V().hasLabel("supernode").has("name", "xxxxxxxx").profile().cap(...)
==>Traversal Metrics
Step                                                               Count  Traversers       Time (ms)    % Dur
=============================================================================================================
TitanGraphStep([~label.eq(supernode), name.eq(n...                     1           1        5763.163   100.00
  optimization                                                                                 2.261
  scan                                                                                         0.000
SideEffectCapStep([~metrics])                                          1           1           0.073     0.00 …
Run Code Online (Sandbox Code Playgroud)

gremlin titan tinkerpop tinkerpop3

4
推荐指数
1
解决办法
1977
查看次数

值映射返回数组

在 Tinkerpop3 valueMap 返回一个数组时,如何获得真正的键值对(没有数组)?

gremlin> Gremlin.version()
==>3.0.1-incubating

:> def trav = g.V().hasLabel('Group'); trav.valueMap()
==>{joinTime=[2016-12-05T22:27:01.088Z], groupId=[9de5-45cf-b40d-e357b40e87b1], mCanInvite=[true]}

:> def trav = g.V().hasLabel('Group'); trav.local(properties().group().by(key()).by(value()))
==>{joinTime={2016-12-05T22:27:01.088Z=1}, groupId={9de5-45cf-b40d-e357b40e87b1=1}, mCanInvite={true=1}
Run Code Online (Sandbox Code Playgroud)

gremlin tinkerpop tinkerpop3

4
推荐指数
1
解决办法
1753
查看次数

Gremlin 按顶点属性分组并获取同一顶点中其他属性的总和

我们有顶点来存储各种作业及其类型,并算作属性。我必须按状态和数量进行分组。我尝试了以下查询,该查询适用于一个属性(receiveCount)

g.V().hasLabel("Jobs").has("Type",within("A","B","C")).group().by("Type").by(fold().match(__.as("p").unfold().values("receiveCount").sum().as("totalRec")).select("totalRec")).next()
Run Code Online (Sandbox Code Playgroud)

我想提供 10 个以上的属性,例如 successCount、FailedCount 等。有没有更好的方法来提供呢?

graph gremlin datastax-enterprise tinkerpop tinkerpop3

4
推荐指数
1
解决办法
6679
查看次数

Tinkerpop/gremlin 合并顶点(和边)

有没有一种简单的方法来替换或合并顶点并保留/合并现有边?或者只是手动复制顶点的所有属性并重新创建现有的边和所有(元)属性,然后删除多余的顶点?

gremlin tinkerpop

4
推荐指数
1
解决办法
2116
查看次数

Tinkerpop Gremlin 深度优先搜索顺序

我有一个非常简单的示例图,我试图对其进行深度优先查询。假设图的边看起来像这样

A->B
A->C
B->D
B->E
C->F
C->G
Run Code Online (Sandbox Code Playgroud)

从 A 开始的深度优先搜索应该返回

A-B-D-E-C-F-G
Run Code Online (Sandbox Code Playgroud)

但如果我能得到下面的订单那就更好了

D-E-B-A-F-G-C-A
Run Code Online (Sandbox Code Playgroud)

如何创建将输出此订单的 Gremlin 查询?如果我做这样的事情

g.V('A').repeat(outE().inV()).emit()
Run Code Online (Sandbox Code Playgroud)

我得到的顺序是 A、B、C、D、E、F、G,即广度优先。我不知道如何获得上面我想要的订单。

gremlin tinkerpop

4
推荐指数
1
解决办法
1172
查看次数

如何列出正在运行的gremlin查询?如何取消慢速或长时间运行的查询?

大多数数据库为用户提供了列出正在运行的查询的机制,并在需要时取消它们 这对于终止花费大量时间的查询特别有用.例如,在MySQL中你会做这样的事情:

mysql>show processlist;
mysql> kill <pid>;
Run Code Online (Sandbox Code Playgroud)

我怎样才能在gremlin服务器上做类似的事情?到目前为止,唯一可用的旋钮是scriptEvaluationTimeoutyaml配置,它允许您在超时时终止请求.我对能够列出所有正在运行的查询的API以及可以让我按ID删除查询的API感兴趣.如果不支持,tinkerpop是否有计划在较新版本中支持它?就像是:

g.query()
g.query('123')
g.query('123').cancel()
Run Code Online (Sandbox Code Playgroud)

graph-databases gremlin tinkerpop tinkerpop3 gremlin-server

4
推荐指数
1
解决办法
290
查看次数

如何从gremlin中的顶点获取id和所有属性?

我正在将 AWS Neptune 与 gremlin 一起使用,并且我想在一个查询中获取具有顶点所有属性的顶点的 id。我怎样才能做到这一点?

我试过了

g.V().hasLabel('file').valueMap(true) 
Run Code Online (Sandbox Code Playgroud)

但输出是:

{ "fileSize": [ "9170" ], "Gremlin.Net.Process.Traversal.T": "f1fce58306f85ca7050503160640d735c9919c8fc85881d65de80bfe31b5ca24", "mimeType": [ "text/html" ] }
Run Code Online (Sandbox Code Playgroud)

没有标签,也没有 ID。问题在于

project('id','label',' fileSize', 'mimeType', 'malwareSource').
    by(id).
    by(label).
    by('fileSize').
    by('mimeType').
    by('malwareSource') 

Run Code Online (Sandbox Code Playgroud)

是属性malwareSource 有时是文件顶点的一部分,有时不是。因此,如果没有malwareSource 属性,则会引发异常。

gremlin tinkerpop

4
推荐指数
2
解决办法
7546
查看次数

Cassandra/Scylla作为图形数据库支持JanusGraph和使用GraphQl公开的API

我正在寻找使用Scylla或Cassandra作为后端的Graph数据库,然后将web api暴露为GraphQl.

你能帮我验证我是否有正确的跟随堆栈:

  1. GraphQl或TinkerPop // Api架构,暴露api
  2. JanusGraph(私有Titan)//数据库层促进grap结构
  3. Cassasndra或Scylla

cassandra tinkerpop graphql scylla janusgraph

3
推荐指数
1
解决办法
887
查看次数

SWI Prolog程序可以从外部数据库获取其事实吗?

我正在计划SWI Prolog程序(语义自然语言解析器),它具有庞大而动态的事实集(具有大约30.000个条目的词典).是否可以将这些事实存储在外部数据库中.由于其他要求,我正在考虑Apache TinkerPop/JanusGraph/Cassandra作为我的数据库,但我也对SQL/JDBC/ODBC数据库支持感到满意.

database prolog swi-prolog tinkerpop

3
推荐指数
1
解决办法
133
查看次数