尝试 addVertex() 和 makeType() 时出错

Errors when trying addVertex() and makeType()

我正在根据新网站的需求文档为我们的 SQLServer 指定一个新数据库。在学习 Titan 的过程中,我认为通过使用它来记录模式会很有趣。

我的顶点将代表 Table;边缘将是记录表之间的关系并显示满足要求所需的用户权限。最终这可能会增加各种网页的顶点和边缘以显示使用了哪些表格。

我的问题是:我的环境设置是否正常,因为我在尝试创建自己的模式时不断出错?还是我做错了?

我下载了 TitanDB(下载了 0.5.4),能够导入 GraphOfTheGods 并使用它。

现在我正在尝试构建自己的图形,但在尝试添加顶点时出现异常。

gremlin> g = TitanFactory.build();
==>com.thinkaurelius.titan.core.TitanFactory$Builder@1950e8ac
gremlin> g.set("storage.backend","cassandra");
==>com.thinkaurelius.titan.core.TitanFactory$Builder@1950e8ac
gremlin> g.set("storage.hostname", IP.ADD.RESS.HERE);
==>com.thinkaurelius.titan.core.TitanFactory$Builder@1950e8ac
gremlin> g.open();
==>titangraph[Cassandra:[IP.ADD.RESS.HERE]]
gremlin> g.addVertex()
No signature of method: com.thinkaurelius.titan.core.TitanFactory$Builder.addVertex() is applicable for arguments types: () values: []
gremlin> g.addVertex(null)
No signature of method: com.thinkaurelius.titan.core.TitanFactory$Builder.addVertex() is applicable for arguments types: (null) values: [null]

.open(); 之后,我在存储引擎中看到一个名为 "titan" 的新键空间。

所以我发现了这个(认为我需要定义类型):How to Define Data Type for Titan Graph DB Vertex?.

当我尝试这样做时: gremlin> graph.makeType().name("name").dataType(String.class).functional().makePropertyKey()

我明白了:groovysh_parse: 83: expecting anything but ''\n''; got it anyway @ line 83, column 79. functional().makePropertyKey()

感谢您对有关创建自己的图形结构的教程的任何帮助或指导。

问题是 TitanFactory.build() returns 是 TitanFactory$Builder 而不是 titangraph.open() 生成您要使用的 titangraph 实例。

要想做你想做的事,你需要改变一下:

gremlin> graphBuilder = TitanFactory.build();
==>com.thinkaurelius.titan.core.TitanFactory$Builder@1950e8ac
gremlin> graphBuilder.set("storage.backend","cassandra");
==>com.thinkaurelius.titan.core.TitanFactory$Builder@1950e8ac
gremlin> graphBuilder.set("storage.hostname", IP.ADD.RESS.HERE);
==>com.thinkaurelius.titan.core.TitanFactory$Builder@1950e8ac
gremlin> g = graphBuilder.open();
==>titangraph[Cassandra:[IP.ADD.RESS.HERE]]
gremlin> g.addVertex()

它应该按预期工作。