美文网首页我爱编程区块链技术深度剖析
比特币区块数据结构之关系数据库设计

比特币区块数据结构之关系数据库设计

作者: bjgpdn | 来源:发表于2018-05-28 12:09 被阅读0次

  比特币区块的存储是通过扁平化的区块文件(也可理解为区块“数据库”)以及索引数据库实现的,由于不是使用通用的关系型数据库,理解起来比较困难,通过关系型数据库设计是否会更好理解?然后再通过编程,将区块数据提取插入到关系型数据库中,例如MSSQLServer、MySQL等数据库中。最后还可以通过各种编程语言实现区块浏览器或与各种应用业务结合。

  设计初稿如下:

一、E-R图设计

二、数据表简要设计

1、区块表:ID(主键:偏移量)、nVersion、hashPrevBlock、hashMerkleRoot、nTime、nBits、nNonce、vTxCount

2、交易表:ID(主键)、BlockHeaderID(外键关联)、TxNo、nVersion、InCount、OutCount、LockedTime

3、输入表:ID(主键)、TxID(外键关联)、TxInNo、TxOutHash、TxOutIdx、scriptSig、nSequence

4、输出表:ID(主键)、TxID(外键关联)、TxOutNo、TxOut_nValue、scriptPubKey

5、索引表:ID(主键)、phashKey(索引)、pprevID、pnextID、phashBlock、nFile(区块表)、nBlockPos(nBlockID)、nHeight、nVersion、hashMerkleRoot、nTime、nBits、nNonce、hashPrev、hashNext

6、钱包表:

    ???

7、最优链表:

    ???

  说明:通过设计触发器,控制表中的数据只能添加、不能删除和修改。

         添加数据时,通过程序(挖矿)控制写入,同时,写入,验证链上数据是否被篡改。

--------------------------------------------------------------------------------------

8、业务数据表

  将增、删、改、查等业务操作,作为一笔交易,交由管理员审核或自动审核。

相关文章

  • 区块链起源及比特币概述

    1 比特币、区块链与数字货币的关系 比特币是最早的数字货币,基于比特币的底层设计思想,衍生出了区块链的概念,再基于...

  • 解读“区块链”

    区块链和比特币的关系 比特币与区块链,更像是鸡与蛋的关系。 比特币是区块链技术的第一个应用,区块链技术也是由比特币...

  • 比特币区块数据结构之关系数据库设计

    比特币区块的存储是通过扁平化的区块文件(也可理解为区块“数据库”)以及索引数据库实现的,由于不是使用通用的关系型数...

  • 时代的召唤 —— 区块链 1.0 VS 2.0

    区块链1.0 比特币和区块链的关系 在最初的文章中,我将比特币和区块链的关系描述为区块链是比特币的分布式账本。其实...

  • 7.区块链 - 精通比特币笔记

    简介 区块链是由包含交易信息的区块从后向前有序链接起来的数据结构。比特币核心采用Google的LevelDB数据库...

  • 比特币和区块链的关系

    比特币和区块链的关系 想要了解比特币和区块链的关系,那就先了解它们的区别。 比特币(BTC):最早是一种网络虚拟货...

  • 《【砂糖橘解说】比特币篇:区块链技术的发展历史#19》

    《【砂糖橘解说】比特币篇:区块链技术的发展历史#19》 一、区块链和比特币是什么关系 区块链技术是比特币的底层技术...

  • 区块链通俗解说

    谈起区块链,不能不说比特币,区块链和比特币的关系就像爱因斯坦著名的质能转换公式与原子弹的关系一样,区块链是比特币采...

  • 比特币

    区块链 什么是区块链? 区块链是一种分布式的去中心化的数据库。 比特币 什么是比特币?比特币本质是一个记账簿。它是...

  • 区块链到底是什么?――《区块链重塑经济与世界》读书笔记之四

    区块链本质上是一个去中心化的分布式账本数据库,是比特币的底层技术,和比特币是相伴相生的关系。 当比特币在跌入低谷的...

网友评论

    本文标题:比特币区块数据结构之关系数据库设计

    本文链接:https://www.haomeiwen.com/subject/uaawjftx.html