我遇到将图形数据导入数据库的情况。我正在使用Docker的cassandra(版本3)和elasticsearch(版本6.6.0)运行janusgraph(最新版本),建议使用gryo格式。所以我尝试了这个命令
graph.io(IoCore.gryo()).reader().create().readGraph(ToInputStream.from("my_graph.kryo"), graph);
但最终出现错误
No such property: ToInputStream for class: Script4
我要关注的文档在这里。请查看一下,然后按照正确的步骤进行操作。提前致谢!
ToInputStream不是Gremlin或JanusGraph的函数。我相信这只是IBM Compose的功能,因此,除非您在该特定平台上运行JanusGraph,否则此命令将不起作用。
ToInputStream
使用TinkerPop 3.4.x的JanusGraph版本将支持该io()步骤,这是加载gryo(以及graphson和graphml)文件的首选方式。
io()
Graph graph = ... // setup JanusGraph instance GraphTraversalSource g = traversal().withGraph(graph); // might use withRemote() here instead depending on how you are connecting I suppose g.io("graph.kryo").read().iterate()
请注意,如果要远程连接-似乎由于错误而正在将脚本发送到Docker实例-那么请确保Docker可访问“ graph.kryo”文件路径。这就是ToInputStreamCompose 的优点,因为它允许您访问远程源。