Firestore ID 在整个数据库中是否唯一

Val*_*vip 2 firebase google-cloud-firestore

我的意思是 - 如果我们从所有集合和子集合等中收集所有 id(自动生成的)。它们都是唯一的吗?

做什么的?我正在构建一个新功能,用户可以在其中共享子集合中的项目,所以我不确定 - 我可以在用户子集合之间使用相同的 ID。

谢谢!

Dou*_*son 9

Firestore 文档 ID 在同一集合中必须是唯一的。它们可以在其他集合或子集合中复制。您可以通过手动创建文档来自己测试,并查看它是否正常工作。

实际上,所有自动生成的文档 ID 都将是唯一的,因为它们是随机的,并且其中两个发生碰撞的可能性极低。客户端 SDK 生成 20 个字符的 ID,每个字符允许所有小写字母、所有大写字母和所有数字。所以总共有 (26+26+10)^20 = 7.0e35 种可能的唯一 ID 的可能组合。(这是一个非常大的数字 - 7 后面有 35 个零。)