假设我有全国各地的高中生数据。每个高中数据彼此不相关,也从不需要彼此相关(划分区域)。如果我使用mongoDB,建议使用哪一个:
1)使用以下属性创建单个集合继承:
high_school_id, student_id, name, address
2)使用以下属性创建多个集合(可能是数千个):
student_id, name, address
集合名称将遵循school_data_<X>
格式,其中X
为high_school_id
。因此,要查询,我的程序可以动态构造集合名称。
我来自MySQL,PostgreSQL背景,其中有数千个表不常见(因此,选项(1)更有意义)。它在MongoDB中是怎么回事?
答案 0 :(得分:3)
我建议您使用第一个选项,因为MongoDB对集合数量有限制。有关此内容的更多信息docs。
您可能需要考虑第三种选择:与学生一起创建一个集合,其中每个学生的记录将包括高中数据。重复数据没有错,你不应该在MongoDB中考虑这个问题,但你应该考虑使用数据更方便的方法。