美文网首页
区块链和HyperLedger Fabric(五)共享账本

区块链和HyperLedger Fabric(五)共享账本

作者: 宋song一 | 来源:发表于2018-12-22 22:33 被阅读29次

一.Fabric 1.0 账本分类

1.1 账本内容分类

  1. Block ledger (事件)
  • File system based, only new Blocks appending
  • Blocks are stored on all committers and optional subset of(可选子集) ordering service nodes
    超过64M会新建文件。保存交易数据
  1. State ledger / World State
    Stored on all committers(记账节点)
  2. History ledger (1.0加入,可选项)
  • Stored on all committers
  • Index stored in KVS and hidden from developer by chaincode APIs(对state账本的key值作索引),LevelDB

1.2 文档和代码实现的分类

peer ledger:存储在背书节点和记账节点
orderer ledger:存储在order service node

Chaincode是无状态的。Chaincode存储在节点上,账本只会存储hash值

账本的隔离和隐私性用多通道(Multiple Channels)技术来保护

二.Chaincode和Ledger的交互

  • Single key operations
  • Key range queries
  • Non-Key queries on data content(LevelDB不支持,CouchDB支持,将JSON存储在StateDB中)

Query System Chaincode(QSCC)
背书节点需提前设定,也作为记账节点
transaction事务处理流
• 应用向一个或多个Peer节点(背书节点)发送对事务的背书请求;
• 背书节点模拟执行ChainCode,但并不将结果提交到本地账本(不会修改底层账本),只是将结果(读写集)返回给应用;
• 应用收集所有背书节点的结果后,(去除不确定无效的交易,1.0未实现)将结果广播给Orderers;
• Orderers执行共识过程,并生成Block,通过消息通道批量的将Block发布给Peer节点(记账节点);
• 各个Peer节点验证交易,并提交到本地账本中

相关文章

网友评论

      本文标题:区块链和HyperLedger Fabric(五)共享账本

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