OrientDB为每条记录创建一个记录ID。许多例子包括" ID"他们自己的课程领域。哪个用?

时间:2015-02-13 20:37:43

标签: etl orientdb

这是推荐做法,还是应该尝试将@rid用作我班级的主键?

例如,示例JSON导入页面使用此记录定义:

{
  "name": "Joe",
  "id": 1,  // <---- Surrogate key for this class
  "friends": [2,4,5],
  "enemies": [6]
 }

这使我更容易创建可以正常工作的Edges,而无需在加载时查询刚刚插入的对象的@rid。

这是推荐的最佳做法吗?

1 个答案:

答案 0 :(得分:0)

当OrientDB生成记录时,它会自动分配一个唯一的单元标识符,称为记录ID或RID。记录ID的语法是带有群集标识符和位置的井号。格式如下:

#<cluster>:<position>

记录永远不会丢失标识符,除非它们被删除。删除后,OrientDB永远不会回收标识符,除了本地存储。此外,您可以直接通过其记录ID访问记录。因此,您不需要创建一个字段作为主键,就像在关系数据库中一样。

希望有所帮助

此致