长安链数据存储源码分析

这篇具有很好参考价值的文章主要介绍了长安链数据存储源码分析。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

概述

存储模块负责持久化存储链上的区块、交易、状态、历史读写集等账本数据,并对外提供上述数据的查询功能。区块链以区块为单位进行批量的数据提交,一次区块提交会涉及到多项账本数据的提交,比如:交易提交,状态数据修改等,所以存储模块需要维护账本数据的原子性。长安链支持常用的数据库来存储账本数据,如LevelDB、BadgerDB、TikvDB、MySQL等数据库,业务可选择其中任意一种数据库来部署区块链。

账本数据主要分为5类:

  1. 区块数据,记录区块元信息和交易数据:

    • 区块元数据包括:区块头、区块DAG、区块中交易的txid列表,additionalData等;

    • 交易数据,即序列化后的交易体,为了提供对单笔交易数据的查询,所以对交易数据进行了单独存储。

  2. 状态数据,记录智能合约中读写的链上状态数据,即世界状态。

  3. 历史数据,长安链对每笔交易在执行过程中的状态变化历史、合约调用历史、账户发起交易历史都可以进行记录,可用于后续追溯交易、状态数据的变迁过程。

  4. 合约执行结果读写集数据,长安链对每笔交易在执行过程中的所读写的状态数据集进行了单独保存,方便其他节点进行快速的数据同步。

  5. 事件数据,合约执行过程中产生的事件日志

leveldb、badgerdb、tikvdb,长安链,区块链,chainmaker,数据库

待完善

 文章来源地址https://www.toymoban.com/news/detail-528877.html

到了这里,关于长安链数据存储源码分析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 长安区块链:服务器时间不一致导致调用合约失败

    区块链业务调用合约失败:最终找到的原因是业务服务器和区块链部署服务器两台服务器时间不一致。 调用区块链的ID为:org.chainmaker.sdk.ChainClient@4916e52d参数为:{deptName=[B@72f87e55, shareDate=[B@20fb3bd0, contactInfo=[B@16500a50, file_name=[B@6891ba3a, dataName=[B@59aa7bab, checkDate=[B@2076fef5, checkSta

    2024年02月14日
    浏览(49)
  • 区块链学习5-长安链并发测试(3)_发送并发交易请求

    区块链学习4-长安链并发测试(2)_部署链_fvafuc的博客-CSDN博客 参考官方文档: https://docs.chainmaker.org.cn/quickstart/通过命令行体验链.html#cmc 修改cmc的sdk_config.yml,使其连接到指定的一个或多个节点: 参考官方文档: https://docs.chainmaker.org.cn/quickstart/通过命令行体验链.html#id14 ​ ​

    2024年02月02日
    浏览(41)
  • 腾讯云区块链服务平台(TBaaS)长安链体验网络公测试用感受

    前阵InfoQ社区看到腾讯云腾讯云区块链服务平台(TBaaS)长安链体验活动,一顿操作猛如虎报了个名,体验完用一个字概括:强。 非要再加几个字的话,总体感受下来装配模式灵活高效,配套工具完整辩解。话不多说开始主题本文目录结构分为 区块链分类 和 TBaaS平台介绍 、

    2023年04月09日
    浏览(52)
  • 区块链-蚂蚁链(阿里系产品),至信链(腾讯系),长安链(国家队)

    目录 区块链-蚂蚁链(阿里系产品),至信链(腾讯系),长安链(国家队) ①蚂蚁链ÿ

    2024年02月05日
    浏览(50)
  • 区块链学习6-长安链部署:如何创建特定共识节点数和同步节点数的链

    正常prepare的时候只支持4 7 13 16个节点个数,想要创建10个节点,其中5个是共识节点,如何实现? 1. 注释掉prepare.sh的这几行: 2. 修改 crytogen的模板文件: 如果是cert模式:chainmaker-cryptogen/config/crypto_config_template.yml 如果是pk模式:chainmaker-cryptogen/config/pk_config_template.yml 例如在配

    2024年02月13日
    浏览(56)
  • 区块链数据存储流程一览

    区块链技术正在进入各行各业,区块链、Web3 等概念也开始深入人心。区块链已经彻底改变了我们存储信息和数据的方式。过去,数据通常存储在集中式数据库中,而现在,它们可以分散存储在成千上万个节点上,并且可以由任何想要验证数据的人进行验证。这使得数据共享

    2024年02月12日
    浏览(48)
  • 基于lighthouse+长安链的轻量级云服务器产品,实现部署合约、区块链服务一系列操作文档

    长安链已上架一款lighthouse+长安链的轻量级云服务器产品 体验入口:轻量应用服务器Lighthouse_香港轻量服务器_海外轻量服务器-腾讯云 区块链概览 获取区块链ID(DApp需要配置) 合约管理 智能合约git地址:https://git.chainmaker.org.cn/fish/fish1208-chainmaker-lighthouse/-/tree/master/contract EV

    2023年04月08日
    浏览(40)
  • 二、RocketMQ消息存储源码分析

    Broker模块涉及到的内容非常多,本课程重点讲解以下技术点: 1、Broker启动流程分析 2、消息存储设计 3、消息写入流程 4、亮点分析:NRS与NRC的功能号设计 5、亮点分析:同步双写数倍性能提升的CompletableFuture 6、亮点分析:Commitlog写入时使用可重入锁还是自旋锁? 7、亮点分析

    2024年02月16日
    浏览(40)
  • 区块链的数据结构和数据存储

    区块链主要分三种,本质上是一种块状存储的链,与寻常的链表不同,链条的每一个节点是根据场景衍生的区块,一般用分布式存储数据,防篡改可溯源: 公链 联盟链 私链 上述三种区块链是基于不同场景诞生的不同业务结构,因此其核心的数据结构和数据存储方式略有不同

    2024年02月02日
    浏览(40)
  • 区块链:OpenDataPlatform如何与区块链结合用于数据存储和管理

    作者:禅与计算机程序设计艺术 区块链(Blockchain)近年来受到越来越多人的关注,因为其能够提供不可篡改、透明、安全、高效率的数据存证功能。随着其功能的不断完善,越来越多的创业公司都开始使用区块链技术进行数据存证及管理。然而,不同于传统互联网应用中的数据

    2024年02月12日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包