FISCO BCOS迎來數據治理通用組件,協力釋放數據價值

隨着信息化、數字化、智能化的進程加速,特別是後疫情時代,數據在全球經濟運轉中的價值 日益凸顯。 今年三月底,數據更是被作爲一種新型的生產要素寫入中央文件,與土地、勞動力、資本、技術等經典生產要素並列。

數據最終的價值來源於治理。只有經過採集、清洗、分析和處理後的數據,才能在流通中更順暢地使用,其價值才能得到更充分地挖掘。同時,隨着區塊鏈技術的蓬勃發展,區塊鏈漸趨規模化應用,鏈上數據總量呈指數級增長,其中蘊藏的巨大價值,也需要通過高效、規範的數據治理,才能得到充分彰顯。

微衆銀行區塊鏈在多年技術研究和應用實踐的基礎上,積極分析、總結行業需求,研發了一套數據治理通用組件(WeBankBlockchain-Data)解決區塊鏈數據治理的技術難題,多維提升開發、運營、運維效率。

目前,WeBankBlockchain-Data在金融、公益、農牧產品溯源、司法存證、零售等多個行業落地和使用,歷經多個內外部生產環境項目的打磨,不斷以“輕量化、模塊化、通用化”的設計哲學進化,具備處理海量數據、高可用、可審計等能力。

爲助力全行業夥伴提升區塊鏈數據治理的效率,實現數據從要素到資源的轉化,我們秉持一貫開源開放的理念,將WeBankBlockchain-Data面向社區和公衆完全開源,誠邀各行業夥伴攜手共建區塊鏈數據治理體系,爲數據價值的全面釋放提供有效路徑。


數據治理通用組件解決什麼問題?

在區塊鏈底層和區塊鏈應用之間,橫亙着一條區塊鏈技術、業務和產品的鴻溝,存在着區塊鏈數據擴容難度大、鏈上數據難以查詢和分析、典型場景缺乏通用化產品或組件支持等多種挑戰。

社區也經常會有朋友問到:
區塊鏈節點服務器的磁盤快滿了,該怎麼辦?
如何批量查詢智能合約裏的數據?
我想查詢某個賬號發過的所有交易怎麼查?
微衆銀行區塊鏈對賬方案是怎麼做的,有沒有通用的解決方案?
……

爲什麼強大的區塊鏈還有這些問題呢?

首先,隨着區塊鏈數據的“爆炸式”增長,鏈上已經積累了億計的交易、幾T的數據,節點服務器逐漸無法滿足交易數據的存儲需求,單純對節點存儲空間進行擴容不僅開發成本高、硬件成本高,而且在數據擴容過程中因技術要求較高,易引發系統性風險,且不能一勞永逸地解決問題。另一方面,大量交易冷數據不僅浪費空間,而且會影響區塊鏈節點出塊和執行交易的性能。

其次,區塊鏈由於特定的鏈式存儲結構,鏈上數據只能通過智能合約接口的方式獲取和調用,不僅執行效率低下,且隨着鏈上數據的增加,其查詢和計算性能逐級衰減,無法滿足大數據分析和複雜查詢的訴求,比如需要檢索已經部署在鏈上的所有合約。基於特定場景的數據導出解決方案,由於智能合約存在較大差異,需要針對智能合約做特定開發,成本很高,不能複用。

最後,基於區塊鏈的可信數據缺乏通用的產品和可複用的組件,部分場景之間存在類似的需求,比如業務對賬、區塊鏈瀏覽器、業務分析、監管審計等。不同項目之間存在着大量重複的開發,費時費力,同時區塊鏈應用的開發者完成工作目標需要經歷陡峭的學習曲線,還可能在開發、測試中引入各類風險。

WeBankBlockchain-Data 從底層數據存儲層、智能合約數據解析層和應用層等多個層次入手,提供區塊鏈數據挖掘、裁剪、擴容、可信存儲、抽取、分析、審計、對賬、監管等數據治理方面的關鍵能力,滿足數據治理全流程開發場景的需求,如下圖所示:


區塊鏈數據經過區塊鏈共識節點的多方共識,一旦生成就不會被修改。

在運維層,區塊鏈的歷史區塊數據可被數據倉庫組件完整或部分導出到本地。作爲可信存儲鏡像,導出的數據僅在本地有效,被修改不會影響鏈上共識。我們建議使用方建立管理方法,限制對本地數據的修改。

在應用數據層,數據導出組件支持導出源數據、初步解析和基於合約解析的多維數據。所有參與者均可部署自己的導出服務,作爲本地查詢或分析的可信數據源。

在業務層,業務對賬組件支持機構內外部對鏈上鍊下業務數據進行對賬。


數據治理通用組件包含哪些子組件?

目前,WeBankBlockchain-Data由數據倉庫組件(Data-Stash)、數據導出組件(Data-Export)、數據對賬組件(Data-Reconcile)三個相互獨立、可插拔、可靈活組裝的組件構成,後續會根據業務和場景訴求提供更多的功能和解決方案子組件。

   數據倉庫組件Data-Stash

Data-Stash爲區塊鏈底層平臺FISCO BCOS提供節點數據擴容、備份、裁剪及快速同步的能力。用戶可基於Binlog協議同步區塊鏈底層節點全量數據,實現冷熱數據分離,支持斷點續傳、數據可信驗證,並提供快速同步機制,助力FISCO BCOS輕鬆應對節點海量數據的運維場景。


進一步瞭解數據倉庫組件Data-Stash,請參考 《數據倉庫組件Data-Stash:助力區塊鏈節點“輕裝上陣”》

   數據導出組件Data-Export

Data-Export支持將鏈上數據導出到MySQL、ES等便於進行大數據處理的存儲介質中,解決區塊鏈數據複雜查詢、分析和處理的問題。開發者幾乎無需編碼,只需要簡單配置,即可實時導出個性化的業務數據,提升二次開發的效率,降低開發成本。

同時,Data-Export支持分庫分表、多活部署、兼容分佈式存儲系統等特性,具備金融級高併發、高可用、支持海量數據導出的能力。


進一步瞭解數據導出組件Data-Export,請參考 《數據導出組件Data-Export:數據分析處理“加速器”》

   數據對賬組件Data-Reconcile

Data-Reconcile抽象了交易系統的通用對賬流程,提供靈活可配置的區塊鏈數據對賬解決方案,支持自定義對賬數據和對賬格式,支持定時對賬和觸發對賬任務,提供多種擴展點,以便對賬處理模塊二次開發。

需要指出的是,Data-Reconcile不僅適用於狹義上的交易對賬,而且適用於任何需要進行數據覈對的業務場景。


進一步瞭解數據對賬組件Data-Reconcile,請參考 《數據對賬組件Data-Reconcile:高效可信對賬利器》


數據治理通用組件能怎麼用?  

企業級區塊鏈應用存在多元化角色參與,諸如業務角色、運營人員、開發角色、運維角色等。針對區塊鏈數據,每一個特定的角色都有着不同的數據治理訴求。WeBankBlockchain-Data分別從區塊鏈底層節點數據維護、應用數據處理和業務數據應用三個維度,抽象、設計了對應的組件來滿足不同角色的對數據治理的需求。

   場景1:節點數據維護

數據倉庫組件Data-Stash是一款針對區塊鏈節點數據處理的輕量化、高安全、高可用組件,主要面向運維人員和開發人員。

數據備份 :Data-Stash可以通過Binlog協議對區塊鏈節點數據進行準實時全量備份,區塊鏈節點可以根據實際情況進行冷熱數據裁剪和分離,在確保數據安全可信的基礎上,解決節點擴容問題,降低開發和硬件成本。在解決節點擴容問題的同時,可以使得節點“輕裝上陣”,不僅能夠減少節點空間的開銷,而且能夠有效提升節點執行交易的性能。

數據同步 :對於加入區塊鏈網絡的新節點,可以通過Data-Stash,在Fisco Sync工具的配合下,快速同步區塊鏈網絡的數據,確保節點以最快的速度參與到區塊鏈網絡的“工作”中,降低新節點因等待數據同步而造成的時間浪費。

   場景2:應用數據處理

數據導出組件Data-Export 提供了導出的區塊鏈標準數據、自動基於智能合約代碼智能分析而生成的定製數據,存儲到MySQL和ElasticSearch等存儲介質中,主要面向開發人員。

複雜查詢與分析 :現有區塊鏈對查詢功能不太友好,且鏈上計算非常寶貴,Data-Export支持將鏈上存儲的區塊鏈數據導出到鏈下的分佈式存儲系統中。開發者可以基於已導出的區塊鏈系統基礎數據,智能合約部署合約賬戶、事件和函數等數據,進行二次開發,定製複雜查詢和數據分析的邏輯,快速實現業務需求。例如,開發者可對交易明細根據業務邏輯進行統計和關聯查詢分析,開發各類反洗錢和審計監管報表等等。

區塊鏈數據可視化 :Data-Export會自動生成Grafana的配置文件,無需開發,即可實現區塊鏈數據可視化。區塊鏈數據可視化不僅能夠作爲區塊鏈數據大盤、數據查看、運營分析的工具,同時也可以運用在應用開發、調試、測試階段,以可見即可得的方式提升研發體驗和效率。此外,Data-Export還提供了Restful API供外部系統集成。運維人員可以通過Grafana實時監控業務系統的狀態,業務人員可以在集成後的業務後臺系統上獲得該業務的實時進展。

區塊鏈中間件平臺WeBASE的數據導出子系統已經整合了Data-Export,同時,Data-Export也可以獨立與區塊鏈底層集成,以靈活地支持業務需求,迄今已在數十個生產系統中穩定、安全運行。

如今,Data-Export作爲區塊鏈數據治理的關鍵組件,以開源形式發佈,由社區夥伴通力完善,以適應更多的使用場景、打造更多的功能。

   場景3:業務數據應用

在業務層,數據對賬是區塊鏈交易系統中最常見的場景之一。基於數個區塊鏈DAPP應用的開發和實踐經驗,我們封裝和開發了數據對賬組件Data-Reconcile,提供基於區塊鏈智能合約賬本的通用化數據對賬解決方案,並提供了一套可動態延展的對賬框架,支持定製化開發,主要面向開發人員,爲業務人員提供服務。

企業內部對賬 :Data-Reconcile支持企業內部系統之間的對賬,例如區塊鏈鏈上數據與鏈下業務系統之間的對賬。開發人員可以利用Data-Reconcile快速進行二次開發,將業務系統數據和鏈上數據進行覈算比對,保證了企業內部業務系統數據的可靠和運行安全。

企業間對賬 :Data-Reconcile可以幫助開發者快速構建跨機構間的對賬應用系統。例如,在結算時,A企業定期將自身業務系統交易數據導出爲對賬文件,發送至與文件存儲中心。B企業可藉助Data-Reconcile定期拉取A企業對賬文件,配合Data-Export,與企業內部的鏈上數據進行對賬處理。Data-Reconcile在保證對賬結果可信的同時提升了對賬的效率,可實現準實時對賬。

綜上所述,WeBankBlockchain-Data 是一套穩定、高效、安全的立體化區塊鏈數據治理解決方案,旨在通過提供一系列相互獨立、可插拔、可靈活組裝的組件,應對和處理區塊鏈海量數據的問題,爲用戶帶來更加便捷、簡單、低成本和輕量化的用戶體驗,從而推動區塊鏈數據治理的發展。

   開源地址

github代碼庫地址:
Data-Stash 數據倉庫組件
https://github.com/WeBankBlockchain/Data-Stash
Data-Export 數據導出組件
https://github.com/WeBankBlockchain/Data-Export
Data-Reconcile 數據對賬組件
https://github.com/WeBankBlockchain/Data-Reconcile

gitee代碼庫地址:
Data-Stash 數據倉庫組件
https://gitee.com/WeBankBlockchain/Data-Stash
Data-Export 數據導出組件
https://gitee.com/WeBankBlockchain/Data-Export
Data-Reconcile 數據對賬組件
https://gitee.com/WeBankBlockchain/Data-Reconcile

文檔地址:
Data-Stash 數據倉庫組件
https://data-doc.readthedocs.io/zh_CN/latest/docs/WeBankBlockchain-Data-Stash/index.html
Data-Export 數據導出組件
https://data-doc.readthedocs.io/zh_CN/latest/docs/WeBankBlockchain-Data-Export/index.html
Data-Reconcile 數據對賬組件
https://data-doc.readthedocs.io/zh_CN/latest/docs/WeBankBlockchain-Data-Reconcile/index.html

歡迎參與WeBankBlockchain的社區建設:
  • 如項目對您有幫助,歡迎點亮我們的小星星(點擊項目左上方Star按鈕)。

  • 歡迎提交代碼(Pull requests)。
  • 提問和提交BUG。
  • 如果發現代碼存在安全漏洞,可通過https://security.webank.com/上報。




FISCO BCOS的代碼完全開源且免費

下載地址↓↓↓

https://github.com/FISCO-BCOS/FISCO-BCOS



本文分享自微信公衆號 - FISCO BCOS開源社區(FISCOBCOS)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章