标签: titan

将数据加载到Titan数据库中

我有一组平面文件形式的日志数据,我想从中形成一个图形(基于日志中的信息)并将其加载到Titan数据库中.这个数据的大小是几千兆字节.我正在探索批量加载选项Faunus和BatchGraph(我在https://github.com/thinkaurelius/titan/wiki/Bulk-Loading中读到过).选项卡分隔的日志数据我需要对文件的每一行进行一些处理,以形成我想到的图形节点和边缘.Faunus/BatchGraph会服务于这个用例吗?如果是,我的输入文件应采用什么格式才能使这些工具正常工作?如果没有,是否正在使用BluePrints API?由于我是新手,因此非常感谢您可以在建议中分享的任何资源.谢谢!

graph-databases titan faunus

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

哪个图形数据库(Orient或Titan)适用于spring和liferay?

请帮助我,我在决定使用图形数据库时非常困惑,我正在开发一个社交网站.所以请建议我必须使用哪个.

我使用spring和liferay 6.2开发这个项目.

请帮我 .

提前致谢.

spring graph-databases orientdb liferay-6 titan

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

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
查看次数

Gremlin-Server添加具有多个属性的顶点(Titan 1.0.0)

我正在创建一个Titan图(由Dynamodb支持); 我正在使用Titan 1.0.0并运行Gremlin-Server 3(在TinkerPop3上).

我正在尝试将一个顶点添加到我的图表中,并在一行中添加标签和多个属性.我能够添加一个带有标签和单个属性的顶点,并且我可以在创建顶点后为顶点添加多个属性,但似乎我无法一次完成所有操作.

为了测试我在gremlin shell中运行命令,但最终用例是通过REST api与它进行交互(已经正常工作).

作为一个说明,我在每次交易后回滚,所以我有一个清白的板岩.

以下是我发起会话的方式:

gremlin> graph = TitanFactory.open('conf/gremlin-server/dynamodb.properties')
==>standardtitangraph[com.amazon.titan.diskstorage.dynamodb.DynamoDBStoreManager:[127.0.0.1]]
gremlin> g = graph.traversal()
==>graphtraversalsource[standardtitangraph[com.amazon.titan.diskstorage.dynamodb.DynamoDBStoreManager:[127.0.0.1]], standard]
Run Code Online (Sandbox Code Playgroud)

我可以创建一个带有标签和单个属性的顶点,如下所示:

gremlin> graph.addVertex('date_of_birth').property('date_of_birth','1949-01-01')
==>vp[date_of_birth->1949-01-01]
gremlin> g.V().hasLabel('date_of_birth').has('date_of_birth','1949-01-01').valueMap()
==>[date_of_birth:[1949-01-01]]
Run Code Online (Sandbox Code Playgroud)

我也可以创建一个顶点,然后在我刚刚创建的顶点开始遍历遍历许多属性:

gremlin> v1 = graph.addVertex('date_of_birth')
==>v[409608296]
gremlin> g.V(v1).property('date_of_birth','1949-01-01').property('year_of_birth',1949).property('date_of_birth','1949-01-01').property('day_of_birth',1).property('age',67).property('month_of_birth',1)
==>v[409608296]
gremlin> g.V(v1).valueMap()
==>[day_of_birth:[1], date_of_birth:[1949-01-01], month_of_birth:[1], age:[67], year_of_birth:[1949]]
Run Code Online (Sandbox Code Playgroud)

这一切都很好,但我试图避免进行2次调用来实现这个结果,所以我想一次创建具有所有这些属性的顶点.从本质上讲,我希望能够执行以下操作,但失败超过1 .property():

gremlin> graph.addVertex('date_of_birth').property('date_of_birth','1949-01-01').property('year_of_birth',1949).property('date_of_birth','1949-01-01').property('day_of_birth',1).property('age',67).property('month_of_birth',1)
No signature of method: com.thinkaurelius.titan.graphdb.relations.SimpleTitanProperty.property() is applicable for argument types: (java.lang.String, java.lang.String) values: [date_of_birth, 1949-01-01]
Run Code Online (Sandbox Code Playgroud)

我也尝试使用.property()具有多个属性的1 (以及我能想到的所有其他语法变体),但它似乎只捕获第一个:

gremlin> graph.addVertex('date_of_birth').property('date_of_birth','1949-01-01','year_of_birth',1949,'date_of_birth','1949-01-01','day_of_birth',1,'age',67,'month_of_birth',1)
gremlin> g.V().hasLabel('date_of_birth').has('date_of_birth','1949-01-01').valueMap()
==>[date_of_birth:[1949-01-01]]
Run Code Online (Sandbox Code Playgroud)

我查看了所有可以从我找到的所有来源获得的文档,我找不到任何关于"一次性"的方法.有没有人以前做过这个或知道怎么做?

提前致谢!

amazon-dynamodb gremlin titan tinkerpop3 gremlin-server

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

泰坦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
查看次数

Gremlin 查询以获取边等于 2 的顶点

考虑我从 v1 到 v5 大约有 5 个顶点。并且在它们之间有边缘。结构如下。

v1->v2
v1->v3
v4->v2
v2->v1
v2->v3
v3->v5
v5->v1
Run Code Online (Sandbox Code Playgroud)

现在我想编写一个 gremlin 查询来显示出边为 2 的顶点。

例如 v1 有 2 个到 v2 和 v3 的传出边,所以这里的查询应该显示 v1,v2,v3

gremlin titan

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

Titan:添加新顶点或边后刷新图形

我在Spring Web应用程序中使用Titan.当我添加新边缘,或删除它实际删除但不反映在我的网页中的顶点.我的查询仍然获得旧边或顶点.

要做到这一点,我必须重新启动我的应用程序.

g.commit()每次新增或删除后我都在做.

titan

3
推荐指数
2
解决办法
922
查看次数

基于索引的查询太慢

首先,我不是泰坦和图形数据库的专家,因此任何评论都将受到赞赏.

目前我有大约12.000.000个顶点和16.000.000个边缘.我创建了2个索引,为Vertex索引"fbid",为边缘索引"dateInMs".

graph.makeKey("fbid").dataType(String.class).single().indexed(Vertex.class).unique().make();
graph.makeKey("dateInMs").dataType(Long.class).indexed(Edge.class).make();
Run Code Online (Sandbox Code Playgroud)

然后,我运行以下查询.

g.query().interval("dateInMs",1394247600000,1394420400000).edges()
Run Code Online (Sandbox Code Playgroud)

数字代表ms的两个日期(2014-03-08和2014-03-10)

因为我基于索引字段查询,所以我期待快速响应,但是查询速度太快,所以我不知道它是否是预期的结果或者我做错了什么.

注意:当我运行查询时,我收到以下消息: com.thinkaurelius.titan.graphdb.transaction.StandardTitanTx - Query requires iterating over all vertices [(dateInMs >= 1394247600000 AND dateInMs < 1394420400000)]. For better performance, use indexes,

但是我正在使用索引dateInMs.

有线索吗?

performance graph titan

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

如何在java中向vertex属性添加属性?

我想将属性添加到顶点属性.在gremlin中我将属性"phone"添加到顶点属性"places",其值为"place1"

g.V(v).properties('places').hasValue('place1').property('phone',"123456789")
Run Code Online (Sandbox Code Playgroud)

没有使用事务提交它工作正常.但是当我在java代码中使用这种方式时,它没有用.那么在java代码中,如何向vertex属性添加属性?谢谢您帮忙.

java gremlin titan tinkerpop3

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

Titan Gremlin Server提供错误"不是WebSocket握手请求:缺少升级"

我从网址上下载了EC2服务器上的Titan Version 1.0

带有Hadoop 1的Titan 1.0.0 - 推荐

然后我用以下命令解压缩并运行titan服务器:

bin/titan.sh启动

Forking Cassandra...
Running `nodetool statusthrift`... OK (returned exit status 0 and printed string "running").
Forking Elasticsearch...
Connecting to Elasticsearch (127.0.0.1:9300).... OK (connected to 127.0.0.1:9300).
Forking Gremlin-Server...
Connecting to Gremlin-Server (127.0.0.1:8182).... OK (connected to 127.0.0.1:8182).
Run gremlin.sh to connect.
Run Code Online (Sandbox Code Playgroud)

然后我尝试从Titan 1.0版本的HTTP请求(在titan 0.4版本Rexster工作正常)但我得到以下错误

不是WebSocket握手请求:缺少升级Titan 1.0 HTTP请求错误

gremlin titan rexster tinkerpop3 gremlin-server

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