如何确保文档字段在ArangoDB集群中是唯一的

rfbsl7qr  于 2022-12-09  发布在  Go
关注(0)|答案(1)|浏览(147)

我有一个3节点的Arango集群(社区版)。我创建了一个writeConcern=3和replicationFactor=3的数据库,以及一个shards=3和replicationFactor=3的集合。我在该集合的一个字段上创建了一个哈希索引,并将唯一属性设置为true。但是,我仍然可以使用相同的字段值创建不同的文档。
我想知道是否有一些策略来确保集群中集合字段的唯一性。

flvlnr44

flvlnr441#

Arango文档中的片段索引一节说明了以下内容:
仅当用于确定分片键的字段也包含在索引的属性路径列表中时,才允许对分片集合建立唯一索引(哈希索引、跳过列表索引、持久索引
其原因很简单-如果不能保证所有具有相同x值的文档都存储在同一节点上,那么确保属性x的唯一性将是 * 非常 * 昂贵的。

相关问题