Orientdb 小叮当小精灵:独立于供应商的顶点ID

Orientdb 小叮当小精灵:独立于供应商的顶点ID,orientdb,gremlin,gremlin-server,Orientdb,Gremlin,Gremlin Server,摘要 我正在为orientdb和neo4j编写一个小精灵脚本 对于示例,假设我们要加载id为1的顶点 对于neo4j,我们将编写如下的gremlin脚本 g.V(1)对于orientDBg.V('17:0') 这样我的脚本就可以同时为两个数据库运行?您不能拥有独立于供应商的元素标识符,因为大多数图形系统不允许您分配标识符,Neo4j或OrientDB也不允许这样做。您可能无论如何都不应该在代码中硬编码标识符,因为我相信这些标识符可以根据图形系统的不同从您的下方更改 正确的方法是依赖索引,并更愿意

摘要

我正在为orientdb和neo4j编写一个小精灵脚本

对于示例,假设我们要加载id为1的顶点 对于neo4j,我们将编写如下的gremlin脚本
g.V(1)
对于orientDB
g.V('17:0')


这样我的脚本就可以同时为两个数据库运行?

您不能拥有独立于供应商的元素标识符,因为大多数图形系统不允许您分配标识符,Neo4j或OrientDB也不允许这样做。您可能无论如何都不应该在代码中硬编码标识符,因为我相信这些标识符可以根据图形系统的不同从您的下方更改

正确的方法是依赖索引,并更愿意将遍历编写为:

g.V().has('myId', 1234)
在这种情况下,任何图形数据库都可以解决这个问题。如果您使用本机图形标识符,我建议您在代码中将它们视为变量,如下所示:

Object vid = g.V().has('myId', 1234).id().next()
...
g.V(vid).out().....

您不能拥有独立于供应商的元素标识符,因为大多数图形系统不允许您分配标识符,Neo4j或OrientDB都不允许这样做。您可能无论如何都不应该在代码中硬编码标识符,因为我相信这些标识符可以根据图形系统的不同从您的下方更改

正确的方法是依赖索引,并更愿意将遍历编写为:

g.V().has('myId', 1234)
在这种情况下,任何图形数据库都可以解决这个问题。如果您使用本机图形标识符,我建议您在代码中将它们视为变量,如下所示:

Object vid = g.V().has('myId', 1234).id().next()
...
g.V(vid).out().....