💙 你是DApp吗?我们正在用推广方式帮助DApp吸引更多用户 点击这里联系我们
2020-03-07

关于 EOSIO 数据库系统的发展历史,BM 这次在 Voice 上帮你捋顺了!

history-of-histories-2

BM 最近在 Voice 上发表了一篇文章,主要内容为在 EOSIO 上使用的数据库系统的发展,以及它们如何有助于提高性能。


关于历史插件(history-plugin)

  • 优点:可以轻松过滤掉区块链上存在的所有操作的数据集并进行查询。

  • 缺点:其数据库内存的性质意味着将历史信息存储在不稳定的 RAM 中,后续很难进行扩容和维护。

于 2018 年 8 月 12 日弃用


关于 mongodb 插件

mongodb-plugin 作为 EOSIO 1.1 的一部分于 2018 年 7 月 20 日发布。

  • 优点:与 MongoDB 数据库一样,将一部分历史数据插件数据存储在文档数据中。

  • 缺点:不包含等效于历史记录插件的 HTTP API

于 2019 年 6 月 28 日弃用


关于 Demux

这是一个可以帮助开发人员将 EOSIO 中的交易流映射到“链外”数据存储中的 JavaScript 框架。通过 Demux,开发人员可以减少工作量,但不能获取完整交易记录。


关于状态历史插件(state-history-plugin)

于 2019 年 6 月 28 日发布,目前正在使用中。

  • 优点:区块链网络的主要操作不会因历史索引和分析而中断运作 。

  • 缺点:状态历史插件的输出不能直接用作查询历史记录的解决方案。

history-tools稳定版仍未发布


我们可以期待接下来会发生什么?

  • 历史工具(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 的区块链将需要企业级的集成,从而可以通过扩容来发挥无限的潜力。”

dan history


来源:

telegram_share加入电报