我不确定如何构建Firestore数据库,以便可以安全扩展。总体结构是相对较少的项目,但是每个项目可以有成千上万个子项目。将子项目构造为每个项目的子集合更好吗?还是应该在根目录中构造项目和子项目集合,并将子项目链接到父项目?我尝试形象化它。子集合对象应代表一个嵌套集合
{
"projects": { //collection
"project_uid": { //document
"name": "some_name",
"some_url": "some_url",
"createdAt" : 1548418304
},
"project_uid1": { //document
"name": "some_name",
"some_url": "some_url",
"createdAt" : 1548418304
}
},
"subrojects": { //collection
"subroject_uid": { //document
"thread_uid": "some_id",
"title": "some_title",
"content": "some_content"
},
"subroject_uid1": { //document
"thread_uid": "thread_uid1",
"title": "some_title",
"content": "some_content"
},
"subroject_uid2": { //document
"thread_uid": "thread_uid1",
"title": "some_title",
"content": "some_content"
}
}
}
或者对并行集合有意义(如果这甚至可行)?
{
"projects": { //collection
"project_uid": { //document
"name": "some_name",
"some_url": "some_url",
"createdAt" : 1548418304,
"subcollection": { //collection
"subproject_uid": { //document
"title": "some_title",
"content": "some_content"
},
"subproject_uid1": { //document
"title": "some_title",
"content": "some_content"
}
}
},
"project_uid2": { //document
"name": "some_name",
"some_url": "some_url",
"createdAt" : 1548418304,
"subcollection":{ //collection
"comment_uid2": { //document
"title": "some_title",
"content": "some_content"
},
}
}
}