Google cloud firestore firebase中的子集合

Google cloud firestore firebase中的子集合,google-cloud-firestore,saas,Google Cloud Firestore,Saas,我正在为SaaS构建Firestore数据库,我认为这种结构: user1 -table1 --subcollection ---data -table2 --Subcollection ---data -tabe3 --subcollection ---row ---data ----subcollection -----row ------data ------data user2 -table1 --subcollection ---data -t

我正在为SaaS构建Firestore数据库,我认为这种结构:

user1

-table1

--subcollection

---data


-table2

--Subcollection

---data

-tabe3

--subcollection

---row

---data

----subcollection

-----row

------data

------data


user2

-table1

--subcollection

---data

-table2

--Subcollection

---data

etc.
当一个人注册时,将为该用户创建一个集合,我将对表使用子集合并保存信息,而不会为每个用户创建一个id为的集合

我的问题是:

我可以使用多少子集合?影响我的数据库性能

在这个结构中,我必须使用许多子集合

这个结构好用吗?还是更好地使用集合并为用户使用唯一ID

例如:

table1


-row

--data

---id (user)

---data...



table2

-row

--data

---id (user)

---data...

etc.
就像这样,我不必一直使用子集合


感谢您的支持。

我认为第二种选择是更好的解决方案。因为大型嵌套集合不是个好主意。获取数据时,大型嵌套集合将非常缓慢。 您可以在用户创建的事件上使用云函数触发器

table1

---id (user)

---data...

table2

---id (user)

---data...

“获取数据时,大型嵌套收集将非常缓慢”虽然使用子收集有很好的理由,但数据检索的性能不应是其中之一,因为数据检索的性能不取决于收集中的数据量。因此,如果使用嵌套子收集,是否存在问题?我读了这一页,只说限制是消除子集合的困难,但用户没有消除子集合的可能性,这个链接用户说这是好的,因为其他用户不需要像SaaS一样与其他用户交互,但可以为用户或支付使用根集合如果将这些模式添加为屏幕截图,则会更加有用。