发布于 2011-10-22 14:12:52
这意味着文档相当大(BigData、网络带宽、速度),并且具有描述性的密钥名实际上会造成伤害,因为它们加在一起会导致文档的大小。
加http://wiki.fluidproject.org/display/fluid/Schema-less+Databases
这意味着在所有文档中强制执行一个字段的唯一性是不安全的,例如,强制执行用户名是唯一的。CouchDB无法支持事务的典型概念的另一个后果是,像inc/递减一个值并将其保存回来这样的事情也是危险的。没有多少实例我们想简单地减少一些值,这样我们就不能单独地存储各个文档并将它们聚合到一个视图中。
如果数据在第三范式中很有意义,并且我们试图在CouchDB中遵循这种形式,我们会遇到很多麻烦。解决这个问题的一个可能的方法是使用视图排序,但是我们可能会不断地与系统进行斗争。如果可以对数据进行重新格式化,使其更加非规范化,那么CouchDB就可以正常工作了。
这方面的问题是大型数据集上的CouchDB临时视图非常慢。使用CouchDB和永久视图可以很好地工作。然而,在大多数情况下,面向列的数据库是一个更好的工具,为数据仓库工作。
但CouchDB Rocks!
但是不要让它与您不一致:用Erlang编写的NoSQL DB (CouchDB,Riak)是最好的,因为Erlang是用于分布式系统的。和库奇玩得开心!
发布于 2011-10-22 11:02:07
还有两件事,这让我在使用CouchDB时哭了(虽然它很棒):
发布于 2011-12-13 09:39:57
作为一个老looking,我把CouchDB作为一个新项目的替代方案,我发现在Couchvs.Domino中,阅读器的局限性非常弱。在我的应用程序中,安全性是一个重要的考虑因素,Couch需要一个中间件层来处理读者安全。
如果您的数据库中所有定义的用户都可以查看所有文档,那么Couch就像是一个有趣的平台。
如果需要限制读取,那么您将需要寻找中间件解决方案,或者考虑另一种选择。
CouchDB开发人员注意:改进平台安全选项。我意识到当使用时,它们会降低性能,但请注意,并提供选项。
现在回到决定使用哪个数据库..。
https://stackoverflow.com/questions/7858699
复制相似问题