我正在使用mongo 3.0数据库和Java驱动程序。我有一个包含10万多条记录的集合。每天大约会有500次更新和500次插入,这些操作应该进行批处理。我将获得旧字段加上一些新字段的已更新文档,需要存储它们。我不知道哪些是新添加的字段,对于每个字段,我都在维护摘要统计信息。由于我不知道哪些是更改过的,所以我必须获取已存在的记录以查看更新的记录和新记录之间的区别,以适当地设置摘要统计信息。因此,我想了解如何有效地完成这项工作。
我应该删除现有记录并重新插入,还是应该更新500条记录?如果有潜在优势,是否应考虑执行1000个upser?
示例用例:初始记录包含:f=[185, 75, 186]。我将会收到更新请求,如:f=[185, 75, 186, 1, 2, 3],对于相同的记录。另外,上述摘要统计信息存储f中id的计数。因此,1、2、3的计数将增加,而185、75、186的计数保持不变。
我应该删除现有记录并重新插入,还是应该更新500条记录?如果有潜在优势,是否应考虑执行1000个upser?
示例用例:初始记录包含:f=[185, 75, 186]。我将会收到更新请求,如:f=[185, 75, 186, 1, 2, 3],对于相同的记录。另外,上述摘要统计信息存储f中id的计数。因此,1、2、3的计数将增加,而185、75、186的计数保持不变。