转载请注明出处:www.huamo.online
字节杭州 求贤若渴:
Why CouchDB
CouchDB
是一种NoSQL
解决方案。它是一个面向文档的数据库,文档中的字段都以key-value
映射的形式存储在数据库中。字段可以是一个简单的key-value对
,list
或者map
。除了LevelDB
支持的keyed / composite-key / key-range
查询之外,CouchDB
还能支持所有数据富查询的能力,比如相对于区块链数据的non-key
查询,因为它的数据内容都以JSON
格式存储并且是全部可查询的。因此,CouchDB
可以满足chaincode
,审计,以及在很多应用场景遇到的LevelDB
不能支持的需求。
CouchDB
还可以增强区块链中合规性和数据保护的安全性。因为它可以通过过滤和屏蔽事务中的各个属性来实现字段级的安全性,并且如果需要,可以只授权只读权限。
此外,CouchDB
属于CAP定理中的AP类型(可用性和分区容错性)。它使用了一种具有最终一致性的主-主备份模型。更多详情可以参看Eventual Consistency page of the CouchDB documentation。然而,在每一个fabric peer
中,并没有数据库备份,写数据库是保证一致并持久化的(不是最终一致性)。
CouchDB
是Fabric
第一个外部可插拔的状态数据库,并且可以也应该有其它外部的数据库选择。比如,IBM为它的区块链实现了关系型数据库。并且CP类型(一致性和分区容错性)的数据库可能也是需要的,以便在没有应用级保证的情况下实现数据一致性。
参考文章
转载请注明出处:www.huamo.online