couchbase如何确保id的唯一性?

问题描述 投票:1回答:1

根据documentation主索引(文档密钥索引)在Couchbase中是可选的。 Couchbase如何在没有索引的情况下有效地确保文档密钥的唯一性?

indexing couchbase n1ql
1个回答
1
投票

文档引用的主要索引仅适用于N1QL查询,与强制唯一性无关。

相反,唯一性由键/值数据服务强制执行。来自"Data" overview documentation

每个值(二进制或JSON)由唯一键标识,由用户或应用程序在保存项目时定义。密钥是不可变的:一旦项目被保存,密钥就无法更改。

我不是Couchbase内部的专家,但是唯一的密钥是Couchbase如何存储/检索/分片数据的基础。查看Understanding vBuckets获取更多信息('vBucket'类似于'shard')。这是一个片段:

通过CRC32散列算法将项目写入vBuckets并从中检索,该算法应用于项目的密钥,因此生成项目所在的vBucket的编号。

© www.soinside.com 2019 - 2024. All rights reserved.