如何识别JanusGraph的名称?

时间:2018-07-26 14:16:40

标签: java graph-databases janusgraph gremlin-server

我想将社交网络应用程序从sql移植到JanusGraph。我将使用Java构建后端,因为它在janusgraph的官方网站上提供了惊人的文档。我有一些初学者的问题。

    JanusGraph graph = JanusGraphFactory.open("my_setup.properties");
  • .properties文件是访问图形的唯一标识符吗?还是 文件路径? (在sql中,我们有一个数据库名称。是否有类似图形名称的名称?)
  • 如果我具有相同的属性文件副本 首选项并将其重命名为my_setup_2.properties,它将对其进行访问 同一张图,还是会创建一个新图?
  • 有什么方法可以识别这些顶点属于此图吗? 从我的存储后端还是搜索后端?
  • 用于哪种查询存储后端以及用于哪种查询 查询是使用搜索后端吗?
  • 总有没有转储我的数据库? (用于从一个端口移植图形 服务器到另一个就像sql dump一样)
  • 我只找到Janusgraph 0.1.1的托管服务提供商 (已过时。最新的是0.2.1,它支持最新的elasticsearch)如果我使用janusgraph 0.1.1版本进行生产,如果我将elasticsearch用于搜索后端会对我有多严重?

1 个答案:

答案 0 :(得分:2)

  

.properties文件是访问图形的唯一标识符吗?还是   文件路径? (在sql中,我们有一个数据库名称。   像图名一样?)

JanusGraph具有可插入的存储和索引后端。 .properties文件仅告诉JanusGraph使用哪个后端以及如何配置它们。不同的图实例将仅指向不同的存储文件夹,索引等。通过查看config file的文档,似乎可以指定一个graphname与{{3}一起使用}以ConfiguredGraphFactory.open("graphName")

的方式打开图形
  

如果我具有相同首选项的属性文件副本并重命名   到my_setup_2.properties,它将访问相同的图,否则它将   创建一个新图?

是的,它将访问相同的数据,因此也将访问相同的图形。

  

有什么方法可以识别这些顶点属于此图吗   从我的存储后端还是搜索后端?

我不确定每个存储后端的确切信息,但是对于Elasticsearch,JanusGraph创建的索引以janusgraph为前缀。我认为其他后端也有类似的机制。

  

使用哪种查询存储后端以及哪种查询   查询使用了搜索后端?

每当您在以ConfiguredGraphFactory索引的属性上添加has步骤时,都会使用索引后端。我认为所有其他查询,包括在配置了has的属性上的composite index步骤,都将使用存储后端。对于OLAP工作负载,您甚至可以在存储后端上插入Spark或Giraph来完成繁重的工作。

  

反正有转储我的数据库吗? (用于从一个端口移植图形   服务器到另一个就像sql dump一样)

可以将图形导出和导入为图形文件格式,例如GraphML。例如,它允许您与其他图形工具(如Gephi)进行交互。但是,您将无法从您的SQL数据库进行sql转储并将其直接导入JanusGraph。如果您考虑一次加载很多节点和边缘,请阅读有关mixed index的文档。

  

我只找到Janusgraph 0.1.1的托管服务提供商   (已过时。最新的是0.2.1,它支持最新的   elasticsearch)如果我使用janusgraph 0.1.1版本进行生产   如果我将Elasticsearch用于搜索后端会对我有影响吗?

我不知道JanusGraph 2.x的托管服务提供商。您可以使用JanusGraph 2.x轻松找到用于可插拔存储后端bulk loading的托管服务。