我有一个包含超过3000万行的大型csv文件。我需要每天加载这个文件,并确定哪些行已经改变。不幸的是,没有独特的关键字段,但可以使用其中四个字段来使其具有独特性。一旦我确定了更改的行后,我将要导出数据。我曾尝试使用传统的SQL Server解决方案,但性能太慢,无法正常工作。因此我一直在研究Mongodb--它已经设法在大约20分钟内导入文件(这很好)。现在我没有使用Monogdb的经验,更重要的是要了解最佳实践。所以,我的想法如下:Mongodb导入和解密已更改行
作为一个 - 使用mongoimport将数据导入集合。
复制mongo生成的所有唯一ID并将它们放入单独的集合中。
使用upsert字段将新数据导入到现有集合中,这应该为每个新的和更改的行创建一个新的ID。
将“复制”与新集合进行比较,以列出所有更改的行。
导出已更改的数据。
这对我来说可行,但我希望有一个更好的方法来解决这个问题。
我一定会给diff命令一个去看看它如何执行,这可能正是我所期待的。非常感谢。 – frizzaUK