我想将社交网络应用程序从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用于搜索后端会对我有多严重的影响?

最佳答案

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


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


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


是的,它将访问相同的数据,从而访问相同的图形。


  有什么办法可以确定这些顶点是否属于此图
  从我的存储后端还是搜索后端?


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


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


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


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


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


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


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

10-06 10:00