Firestore:集合中的ID是唯一的还是全局的?

时间:2017-10-07 09:35:43

标签: firebase google-cloud-firestore

对于我的数据库结构,我需要知道Firebase Cloud Firestore中自动生成的标识符在集合中或整个数据库中是唯一的。

怎么做?

2 个答案:

答案 0 :(得分:30)

通过在Firestore中调用add()生成的密钥与您调用add()的集合无关。相反,它们是随机标识符,在统计上保证是唯一的。对于Firestore(和Firebase实时数据库),这些密钥是在客户端生成的。

如果您有兴趣,请查看Firestore JavaScript SDK如何实现逻辑:

  1. add calls doc()

  2. doc calls AutoId.newId()

  3. AutoId.newId() generates a client-side ID

  4. 本身的逻辑与Firebase实时数据库生成推送ID的方式类似。主要区别似乎是Firestore的自动生成的密钥不是基于本地时间戳,因此它们不能有意义地用于订购集合中的文档。

答案 1 :(得分:0)