网站建设资讯

NEWS

网站建设资讯

如何实现将CouchDB中的数据同步到关系型数据库-创新互联

小编给大家分享一下如何实现将CouchDB中的数据同步到关系型数据库,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

专注于为中小企业提供做网站、成都网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业安平免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了成百上千企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

CouchDB的问题

首先,作者不是由于我们上面说的原因而要做这件事。而是由于CouchDB无法满足他们的一些需求。我们知道CouchDB需要预先为所需要的查询操作定义View,然后所有的查询操作其实都是在此View上进行。所以如果你要进行的数据查询条件非常不一定,那么使用CouchDB可能就比较麻烦了。

作者考虑了两个方法:

1.为所有可能的查询顺序建立不同的View–排列组合问题,你可以想像这会造成多么大的资源浪费

2.建立一个View,存储时将不同顺序的字段存多份–这个浪费和上面差不多

而实际上这种需求正是关系型数据库的强项,几乎所有的关系型数据库都支持对数据进行任意顺序的查询,不用预先确定需要进行查询的模式。只要为性能而建立好相应的索引即可。

怎样实现将CouchDB中的数据同步到关系型数据库

解决方案

最后选择的方案是使用CouchDB的ChangeNotifications机制,这个机制允许对数据进行监听,当有写操作时,会执行相应的callback函数来完成你想做的操作。

具体实现流程如下:(主要使用了couchdbkit和django来实现)

1Connectto_changesfeed–连接到_changes接口以获取数据修改操作

2Foreverylineinthefeed–对每一条数据执行如下两步操作

–2.1Determineifyouwanttoactonit–通过过滤规则判断数据是否要处理

–2.2(Ifyes)dosomethingaboutit-如果需要处理,那么就进行相应的处理。

以上是“如何实现将CouchDB中的数据同步到关系型数据库”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


分享名称:如何实现将CouchDB中的数据同步到关系型数据库-创新互联
文章出自:http://cdweb.net/article/dgooco.html