mongodb在文档中使用大型数组的性能

时间:2013-08-22 01:48:19

标签: mongodb schema mongodb-query mongodb-java

我无法想出一个表现良好的mongodb模型。我有200万名员工。我需要存储一组可以访问员工的管理员ID。像这样的图片数据..

{
'fullName':'Jonathan Smith',
'employeeId':'8675309',
'supervisors':[1234,7654,45676,34543,56545]
}

每个阵列可能有数百个元素。元素也可能波动。所以我需要执行快速$ puts和$ pulls来添加和减去数组中的元素。

我很好的示例操作将是..我们有一个主管5555,现在可以访问510,000名员工。因此,我需要更新这510,000名员工,为这些员工阵列添加5555。

然后是一个查询,给我5555有权访问的所有员工。

有更好的方法吗?我能做些什么来确保表现。

1 个答案:

答案 0 :(得分:1)

听起来这些510,000名员工可能实际上属于不同的类别或实体,而不仅仅是“由主管5555管理的员工”。将此课程称为“A”。员工将被标记为属于“A”类(可能还有其他类),5555将被标记为“A”的经理,但不会被标记为个别员工。这是假设“A”级经理更有可能改变,而不是所有510,000名员工都不属于“A”级。