我需要将CouchDB 中的数据从一个数据库复制到另一个数据库,但在此过程中我想更改正在复制的文档,
- 主要剥离特定领域(但评论中提到的其他应用程序)。
- 复制总是 100% 单向(但评论中提到的其他应用程序可以使用双向和同步)
- 我希望这个过程不增加他们的修订 ID,但这可能要求太多。
但我没有看到任何设计文档功能可以做我想做的事情。
似乎没有这样做,有什么计划来添加这个?同时,有什么解决方法?
我需要将CouchDB 中的数据从一个数据库复制到另一个数据库,但在此过程中我想更改正在复制的文档,
但我没有看到任何设计文档功能可以做我想做的事情。
似乎没有这样做,有什么计划来添加这个?同时,有什么解决方法?
不,没有开箱即用的解决方案,因为这将违背多主机 MVCC 逻辑的整个目的和逻辑。
我在这里看到的唯一选择是创建自己的解决方案,但我不会将其称为复制,而是称为 ETL(提取、转换、加载)。对于 ETL,有一些可用的工具可以让你做到这一点,比如(在这里混合开源和商业):
市场上有更多的 ETL 工具。
我相信这里最好的方法是将要过滤的字段分解为单独的文档,然后在复制期间过滤掉该文档。
当然,最好的方法是为此提供内置支持,但我想到的一种解决方法是,而不是在这里使用内置复制,来编码和使用自定义复制,这将执行额外的所需更改/转换,仍然使用而不是使用其他内置插件,并且编码良好,在许多情况下(特别是如果每个主服务器都可以推送到它的从服务器),感觉这可能几乎同样有效。
进一步的实施细节?- 知道的人,请放在这里。
这是一个“社区维基”答案,所以请扩展它。
也请评论任何人/系统的链接和详细信息已经或试图这样做或类似的。