iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 16
0
Blockchain

區塊鏈開發(Blockchain/DLT Application Development)系列 第 16

Hyperledger Fabric:共享賬本(Ledger)

  • 分享至 

  • xImage
  •  

區塊鏈是共享分類帳技術的一部分,記錄了所有歷史紀錄,允許網路中的任何參與者查詢。

區塊鏈平台的賬本(Ledger)架構,大致上概念相符,只是實作方式不同。

賬本(Ledger)

區塊鏈實際以文件系統(File System)方式儲存,而資料庫中儲存了所有交易資料及區塊所引的最新狀態,以便系統快速查詢。

賬本(Ledger)由 3 個部分組成;

  • Block Ledger
    • File System:文件系統
      • 交易紀錄(Transation Log)
        • 批次交易陣列(tx array)
          • 區塊(block):批次交易
  • State Ledger
    • LevelDB / CouchDB:鍵值(Key Value, KV) / 文件(Document)資料庫
      • 狀態(State)資料庫:儲存所有資料的最新狀態
  • History Ledger
    • LevelDB:鍵值(Key Value, KV)資料庫
      • 區塊索引(Block Index):儲存所有交易的索引值

https://ithelp.ithome.com.tw/upload/images/20181028/20103635XBv8rZybmo.jpg

區塊資料結構(Block Structure)

Block
{
	Transactons
	[
		{
			"Id":txUUID2
			,"Invoke":“Method(arg1,arg2,..,argN)"
			,"TxRWSet":
			[
				{
					"Chaincode":"ccId"
					,"Reads":[{"key":"key1","version":"v1"}]
					,"Writes":[{"key":"key1","value":bytes1}]
				}
			]
		}
		,{//另一個交易}
	]
}

系統鏈碼 - 查詢(Querier System Chaincode, QSCC)

提供以下查詢 API:

GetChainInfo
GetBlockByNumber
GetBlockByHash
GetTransactionByID

上一篇
Hyperledger Fabric:Chaincode 開發
下一篇
Hyperledger Fabric:共識機制(Consensus)
系列文
區塊鏈開發(Blockchain/DLT Application Development)30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言