使用GremlinJavaScript将完整图形序列化为GraphSON的最佳方法是什么?

使用GremlinJavaScript将完整图形序列化为GraphSON的最佳方法是什么?,javascript,gremlin,tinkerpop,tinkerpop3,gremlin-server,Javascript,Gremlin,Tinkerpop,Tinkerpop3,Gremlin Server,我正在寻找一个可以创建一个完整TinkerGraph图序列化的图的查询 // setup const gremlin = require('gremlin') const connection = new gremlin.driver.DriverRemoteConnection('ws://localhost:8182/gremlin') const g = (new gremlin.structure.Graph()).traversal().withRemote(connection

我正在寻找一个可以创建一个完整TinkerGraph图序列化的图的查询

// setup

const gremlin = require('gremlin')

const connection = new gremlin.driver.DriverRemoteConnection('ws://localhost:8182/gremlin')

const g = (new gremlin.structure.Graph()).traversal().withRemote(connection)
我能够像GraphSON一样分别序列化顶点、边和属性。以下语句仅创建所有顶点的GraphSON序列化。可以使用
E()
查询边,使用
V().properties()
查询属性

是否有一个gremlin javascript方法可以在一个步骤中将所有顶点、边和属性序列化到一起(而不是像上面那样单独)为GraphSON字符串


此外,如果完整图形可以序列化为单个GraphSON字符串,是否还有一个匹配的调用将从GraphSON字符串重新水合图形实例?

启动gremlin 3.4.x您可以使用
io
步骤:

g.io("graph.json").read().iterate()
g.io("graph.json").write().iterate()
这些命令以graphson格式(json文件)读取/写入完整的图形数据。如中所述,还有更多受支持的格式

如果您正在运行gremlin 3.3.x,则可以使用:


请注意,该文件存储在gremlin服务器当前工作目录中。

您有权访问该服务器吗?您使用的是哪个图形服务器?感谢您的回复-我使用的是带有TinkerGraph的gremlin服务器,运行在通过上面的localhost连接字符串访问的虚拟机上。我为clarityBrilliant Thank编辑了这个问题-遗憾的是,在gremlin javascript 3.4.3中找不到
io
属性(,也通过记录对象来确认),因此序列化完整的图形可能不可能,除非有更合适的参数传递给write()方法因为它必须是遍历的第一步,所以它在GraphTraversalSource中实现。请看这里:
g.io("graph.json").read().iterate()
g.io("graph.json").write().iterate()
graph.io(graphson()).writeGraph("graph.json");