我正在尝试使用mongoimport将一对多关系结构转换为使用csv文件的mongoDB。我的方法是导入“one”文件,然后使用upsert选项将“many”记录附加为嵌套数组,但看起来它只替换原始文档而不是附加。
这是mongoimport的限制还是我做错了什么?
答案 0 :(得分:4)
您可以执行upserts when using mongoimport,但不能像使用正常的更新操作那样使用复杂的运算符来执行数据修改。这是mongoimport的限制 - 实际上,即使您使用upsert功能,您导入的每个数据都必须插入就绪,这基本上是作为输入数据的重复数据删除机制。
如果您希望以更复杂的方式合并,那么最好使用the drivers之一并使用您选择的语言合并数据。这样做的好处是可以避免type fidelity的潜在问题,并允许您对异常等进行编码。