您好,登錄后才能下訂單哦!
這篇文章主要介紹Hyperledger中worldstate和SAP CRM的CRMD_CUMULAT_H是怎么樣的,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
Hyperledger fabric是基于區塊鏈技術的一個開源項目,由Linux基金會于2015年發起,目的是推進區塊鏈數字技術和交易驗證的發展和落地。
Hyperledger由多個區塊構成了一個有序鏈表,每個區塊里包含多條交易(trasanction,縮寫為tx)。Jerry在學習賬本的數據結構時,發現一個有趣的現象:上圖中WorldState(世界狀態)的設計目的,是為了提升性能。比如,有一個channel里共發生了1千次交易,為了獲取該channel的當前狀態值,需要沿著區塊鏈的首塊出發執行這1千次交易,有點像SAP HANA內存數據庫實時計算的思路。
而Hyperledger Fabric選擇了在每次新交易處理完后,都同步更新一個稱之為levelDB的數據庫。這樣每次查詢當前狀態時,無需遍歷區塊鏈每個區塊重復執行交易,只需要查詢該levelDB數據庫即可。
這個levelDB的概念和CRM里的訂單抬頭的很多字段,比如總價,毛重(Gross weight)等等設計思路是一樣的。
比如我在ID為IMU的產品主數據里維護了1個ST的單位重50KG,那么下圖訂單包含了兩個行項目,一共8個ST,毛重50 × 8 = 400KG。
這個400KG是存儲在表CRMD_CUMULAT_H的GROSS_WEIGHT字段。
顧名思義,這個字段的值是從另一張存放行項目明細信息的表CRMD_PRODUCT_I里的GROSS_WEIGHT累加而來的,這也是這張表的部分名稱CUMULAT的由來:(cumulate累積)
每次行項目里產品數量發生變化時,會觸發one order框架的回調函數,更新CRMD_CUMULAT_H的GROSS_WEIGHT.
最后數據更新通過CRM_CUMULAT_H_UPDATE_DU寫回到CRMD_CUMULAT_H里。CRMD_CUMULAT_H扮演的角色同Hyperledger Fabric里的levelDB相同。
以上是“Hyperledger中worldstate和SAP CRM的CRMD_CUMULAT_H是怎么樣的”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。