我正在使用 mongodb 作为数据库存储。
我的网络应用程序必须收集用户响应。
用户响应是 mongodb 中的文档(或 sql 中的一行)。文档的长度约为 10~200。
用户响应被分类(仅属于一个类别)。对于每个类别,用户响应的数量在 100~5000 之间。如果两个文档属于同一类别,则具有相同的长度。(或者它们在 sql 中有相同的列)
可以根据管理员的请求动态创建/删除类别。
目前,我的数据结构是
category collection
{_id, 'name' : 'c1', 'somevalue' : '123'}
{_id, 'name' : 'c2', 'somevalue' : '23'}
{_id, 'name' : 'c3', 'somevalue' : '143'}
{_id, 'name' : 'c4', 'somevalue' : '153'}
...
'c1' collection
{ userresponse1 }
{ userresponse2 }
{ userresponse3 }
...
'c2' collection
{ userresponse1 }
{ userresponse2 }
{ userresponse3 }
...
'c3' collection
{ userresponse1 }
{ userresponse2 }
{ userresponse3 }
...
'cN' collection
{ userresponse1 }
{ userresponse2 }
{ userresponse3 }
..
这是一个明智的决定吗?我担心通过为每个类别分配一个集合而出现问题的可能性。如果我有很多集合,会有一些性能问题吗?我应该合并我的收藏并给用户响应一些标识符吗?