【问题标题】:Load example GraphSON file in Gremlin with Cassandra使用 Cassandra 在 Gremlin 中加载示例 GraphSON 文件
【发布时间】:2015-04-19 13:06:24
【问题描述】:

我正在尝试使用 loadGraphSON 函数加载与 Titan 一起分发的示例 众神图 文件。我已经执行了以下步骤,并且正在使用 Titan 0.5.4 和 Hadoop 2。

  1. 使用 Hadoop 2 下载并解压新的 Titan 0.5.4。
  2. 使用命令bin/titan.sh -c cassandra-es start 启动 Titan、Rexster、Cassandra、ElasticSearch
  3. 运行 Gremlin:bin/gremlin.sh
  4. 使用所需设置打开一个新的 TitanFactory 实例:g = TitanFactory.open('conf/titan-cassandra-es.properties')
  5. 然后我尝试使用g.loadGraphSON("examples/graph-of-the-gods")examples 目录加载 众神图

我没有收到错误消息,但尝试使用 g.V 显示所有顶点不会返回任何内容。我在这里执行了权利步骤,还是我做错了什么?

【问题讨论】:

    标签: cassandra titan gremlin


    【解决方案1】:

    请注意,此问题已在 Aurelius Graphs 邮件列表中得到解答:

    https://groups.google.com/d/msg/aureliusgraphs/FiCvX891r6g/BkmWj3xc3ikJ

    基本上:

    1) 文件名应该是examples/graph-of-the-gods.json

    2) 你也可以使用 GraphOfTheGodsFactory.load(g) 来创建索引和类型定义

    我想说上面的第二点是加载众神图的首选方式。

    【讨论】:

    • 错误的文件名是我在 StackOverflow 上的拼写错误,我在 Titan 中使用了正确的文件名。不幸的是,正确的文件名也不会将众神图数据加载到图中。我知道我可以使用 GraphOfTheGodsFactory,但我也想使用我自己的自定义 JSON 文件并将它们加载到图表中。那我当然不能使用 GraphOfTheGodsFactory。
    • g.V 在您 loadGraphSON 之后或通过 Rexster 查询时是否在控制台中不返回任何内容?
    • 确切地说,它不返回节点,只返回一个警告:WARN com.thinkaurelius.titan.graphdb.transaction.StandardTitanTx - 查询需要遍历所有顶点 [()]。为了获得更好的性能,请使用索引
    • 我认为您的问题是 graph-of-the-gods.json 文件是供 titan-hadoop 使用的 - 它是邻接列表格式。 loadGraphSON 旨在读取 GraphSON,表示为:raw.githubusercontent.com/tinkerpop/rexster/master/…
    • 另一种 GraphSON 格式(链接中的那个)确实可以按预期工作并将数据加载到图中。感谢您的帮助!
    【解决方案2】:

    如果您没有设置 Titan Hadoop 作业,您可以尝试使用 Blueprints GraphSON 阅读器来加载图形数据。见https://github.com/tinkerpop/blueprints/wiki/GraphSON-Reader-and-Writer-Library

    在 Gremlin shell 中,它看起来有点像这样:

    inStream = new FileInputStream("../examples/graph-of-the-gods.json")
    GraphSONReader.inputGraph(g, inStream)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-11
      • 1970-01-01
      • 2016-05-12
      • 1970-01-01
      • 2015-12-06
      相关资源
      最近更新 更多