我们知道leveldb默认在snappy上压缩,但是当我进入生产数据文件夹,分类帐数据文件夹时,我会看到以下文件夹:
在链上,我可以看到创建的通道,并且有一个未压缩所有数据的块,我可以清楚地看到所有内容。该文件为33MB,我可以看到频道,配置和升级已经完成了所有操作。
在historyLeveldb上,我可以看到另一个小得多的文件,扩展名为.ldb,并且似乎已压缩。
leveldb何时压缩文件?这两个文件夹和文件的作用是什么?查询分类帐时,它查询什么文件?
答案 0 :(得分:2)
实际分类帐(也称为“区块链”)是基于文件的。这些文件未压缩。
状态数据库(存储所有键的最新值)使用LevelDB(或CouchDB)。
执行诸如“ GetState”之类的操作时,将查询状态数据库。当调用API来访问块和事务时,有一个数据库可以维护文件分类帐的索引/指针,并且实际数据将从分类帐文件中返回。