BM 最近在 Voice 上发表了一篇文章,主要内容为在 EOSIO 上使用的数据库系统的发展,以及它们如何有助于提高性能。
优点:可以轻松过滤掉区块链上存在的所有操作的数据集并进行查询。
缺点:其数据库内存的性质意味着将历史信息存储在不稳定的 RAM 中,后续很难进行扩容和维护。
mongodb-plugin 作为 EOSIO 1.1 的一部分于 2018 年 7 月 20 日发布。
优点:与 MongoDB 数据库一样,将一部分历史数据插件数据存储在文档数据中。
缺点:不包含等效于历史记录插件的 HTTP API
这是一个可以帮助开发人员将 EOSIO 中的交易流映射到“链外”数据存储中的 JavaScript 框架。通过 Demux,开发人员可以减少工作量,但不能获取完整交易记录。
于 2019 年 6 月 28 日发布,目前正在使用中。
优点:区块链网络的主要操作不会因历史索引和分析而中断运作 。
缺点:状态历史插件的输出不能直接用作查询历史记录的解决方案。
历史工具(History-tools) / fill-pg:使用状态历史插件的输出,以便满足应用程序高频的操作需求。初始稳定版本即将发布。它创建并完善了一个方便查询的 postgreSQL。
历史工具 / Custom fill-pg:开发人员可以使用它来定制其生成的表,为应用程序提供更合适的功能服务。并且这样将有可能过滤掉无关数据。 这是 Voice.com 正在使用的 功能。
历史工具 / WASM-QL:让合约创建者提供数据序列化程序和特定范围的查询,作为已部署合约的一部分。
DFuse:EOSCanada 的企业服务级产品,为 EOSIO 区块链之提供了一个灵活、快速且基于 GraphQL 的查询引擎。
Hyperion:由 EOSRio 维护的开源产品,它提供了一个可扩展的“v2”版本的历史 API,且这个 API 基于 elastic 的搜索、rabbitMQ 和 redis 共同构建。
“为实现区块链性能有些集成一直处于低效率阶段。下一代基于 EOSIO 的区块链将需要企业级的集成,从而可以通过扩容来发挥无限的潜力。”
来源: