文档中心 TBaaS 购买指南 状态数据库使用说明

状态数据库使用说明

最近更新时间:2019-08-08 11:17:01

状态数据库类型

Fabric 支持两种类型的状态数据库,即 LevelDB 与 CouchDB。

  • LevelDB 是节点上默认的状态数据库。
    • 以 Key-Value 的方式存储智能合约数据。
    • 支持按照特定 Key、Key 的特定范围、复合 Key 进行 Value 查询。
  • CouchDB 是可选的状态数据库。
    • 支持 LevelDB 提供的按照 Key 获取 Value 的功能。
    • 支持对 JSON 串类型的 Value 按特定属性进行富查询,在实际业务场景中更加灵活和有效。

注意:

须在搭建网络之前选择状态数据库,目前 TBaaS 区块链网络不支持两种状态数据库之间的切换。

LevelDB 与 CouchDB 的比较

在相同的应用场景中,分别对比了 LevelDB 和 CouchDB 在存储以及性能方面的数据。结果如下:

  • 对于链上每秒钟的交易数目,LevelDB 完成量约为 CouchDB 的7倍。
  • 对于存储相同的链上数据,CouchDB 所占空间约为 LevelDB 的20倍。

综合来看,LevelDB 存储及性能方面占据优势,CouchDB 支持 JSON Value 的富查询。您可以根据您的实际业务场景进行相应的选择。