0

我有一个名为的猫鼬模型Products,我从外部系统(谷歌电子表格)提供。

每次电子表格更改时,我都会收到一个事件,我需要找出更改的内容并Products相应地更新集合。

我想到的最简单的方法是:

  1. 在电子表格更改事件中,删除Product集合中的所有文档
  2. 再次将我从电子表格中获得的整个新产品集合插入到Products集合中。

这几乎没有效率,但它是一个简单而干净的解决方案,假设集合不是很大并且不会太频繁地更新。

我能想到的任何其他方法都涉及迭代更新的谷歌电子表格和Products集合并将它们相互比较。

有这样做的继承方式吗?也许是更有效的算法?

4

1 回答 1

0

我的建议是插入一个具有临时名称的新空集合,然后重命名它以原子地覆盖现有集合。

您还可以考虑upsert对电子表格中已创建或更新的每个文档执行一次操作,然后删除所有已删除的文档。

于 2013-07-31T14:56:01.237 回答