使用hyperledger架构的leveldb是否压缩数据?

时间:2019-09-05 15:49:46

标签: hyperledger-fabric hyperledger leveldb

我们知道leveldb默认在snappy上压缩,但是当我进入生产数据文件夹,分类帐数据文件夹时,我会看到以下文件夹:

  • 簿记员
  • 链条
  • configHistory
  • historyLeveldb
  • ledgerProvider
  • pvtdataStore

在链上,我可以看到创建的通道,并且有一个未压缩所有数据的块,我可以清楚地看到所有内容。该文件为33MB,我可以看到频道,配置和升级已经完成了所有操作。

在historyLeveldb上,我可以看到另一个小得多的文件,扩展名为.ldb,并且似乎已压缩。

leveldb何时压缩文件?这两个文件夹和文件的作用是什么?查询分类帐时,它查询什么文件?

1 个答案:

答案 0 :(得分:2)

实际分类帐(也称为“区块链”)是基于文件的。这些文件未压缩。

状态数据库(存储所有键的最新值)使用LevelDB(或CouchDB)。

执行诸如“ GetState”之类的操作时,将查询状态数据库。当调用API来访问块和事务时,有一个数据库可以维护文件分类帐的索引/指针,并且实际数据将从分类帐文件中返回。