[發明專利]基于區塊鏈的大數據平臺hive數據修改方法以及系統有效
| 申請號: | 202110497644.6 | 申請日: | 2021-05-08 |
| 公開(公告)號: | CN113094753B | 公開(公告)日: | 2023-02-24 |
| 發明(設計)人: | 舒海;楊文逸;羅小東;白慧靜;陳靜 | 申請(專利權)人: | 重慶銀行股份有限公司 |
| 主分類號: | G06F21/62 | 分類號: | G06F21/62;G06F21/64;G06F16/182 |
| 代理公司: | 重慶樂泰知識產權代理事務所(普通合伙) 50221 | 代理人: | 崔雷 |
| 地址: | 400000*** | 國省代碼: | 重慶;50 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 區塊 數據 平臺 hive 修改 方法 以及 系統 | ||
1.一種基于區塊鏈的大數據平臺hive數據修改方法,其特征在于,所述大數據平臺對應有控制中心和分布式文件系統,所述分布式文件系統以共享數據表的形式存儲數據,所述大數據平臺還對應有用于修改分布式文件系統的共享數據表的發起端、多個用于校驗修改真實性的共享端以及對應發起端和每一共享端分別生成的區塊鏈,所述區塊鏈用于存儲對共享數據表的操作信息,所述操作信息包括操作內容和操作結果;所述大數據修改的方法包括以下步驟:
步驟S1、發起端向控制中心發出對一共享數據表的修改請求;所述修改請求的內容包括請求修改的賬號簽名、操作類型和操作內容,修改的操作類型包括追加操作、新增操作和刪除操作;其中,追加操作用于在共享數據表的文件的結尾追加內容;新增操作用于在共享數據表中新增加文件;刪除操作用于刪除共享數據表中的部分或全部文件,刪除部分文件時,操作內容為文件列表list,list中的文件為請求刪除的文件;
步驟S2、控制中心驗證發起端是否有該共享數據表的修改權限;
步驟S3、控制中心檢查各共享端是否滿足本次修改的操作要求;如果滿足要求則執行步驟S4;否則,控制中心拒絕本次修改請求;
步驟S4、發起端對該共享數據表的數據進行修改操作,并將本次修改的操作信息寫入一個新的區塊,把新的區塊連接在發起端對應的區塊鏈的末端,生成一個新的區塊鏈,并將新生成的區塊鏈廣播給各共享端;發起端對該共享數據表的數據進行修改操作的方法包括:
控制中心將發起端的修改請求發給分布式文件系統,同時向發起端返回同意修改的通知,允許對共享數據表進行修改操作;發起端先從分布式文件系統中復制一份共享數據表的數據作為副本數據存放在分布式文件系統用于修改的緩存區的獨立路徑中,然后在緩存區中對副本數據進行操作;
步驟S5、各共享端收到新生成的區塊鏈后,分別根據其區塊鏈記錄的信息對本次操作的真實性進行校驗,并返回校驗是否通過的信息;如果各共享端均返回校驗通過,則執行步驟S6;否則,執行步驟S7;
其中,對追加操作的真實性進行校驗包括:
從分布式文件系統上找出共享數據表中本次修改過的文件,并比對本次區塊信息的操作內容中記錄的操作文件列表,是否完整地包含在這些本次修改過的文件中;如果是則繼續進行校驗;否則,停止校驗,返回校驗不通過的信息;
對本次未修改過的各文件,依次比較該文件的文件名稱、生成時間、占用存儲容量信息與上次區塊的操作結果中記錄的文件名稱、生成時間、占用的存儲容量信息是否一致;如果一致則繼續進行校驗,否則,停止校驗,返回校驗不通過的信息;
讀取本次區塊的操作內容中記錄的各操作文件,依次找到各操作文件在本次追加的數據,檢查寫入數據的賬號簽名和本次區塊記錄的賬號是否一致;如果不一致則返回校驗不通過的信息,如果一致則繼續檢查該操作文件在本次追加之前已有的數據的賬號寫入數據行號范圍和是否與上次區塊的操作結果中記錄的信息一致;如果一致則繼續校驗,否則,停止校驗,返回校驗不通過的信息;
依次讀取各操作文件,檢查本次追加的信息和與本次區塊中記錄的操作內容和操作結果是否一致;如果一致則返回校驗通過的信息;否則,返回校驗不通過的信息;
對新增操作的真實性進行校驗的方法包括:
依次檢查在上次區塊的操作結果記錄的各文件,其文件名稱、生成時間、占用的存儲容量信息是否和本次區塊的操作內容中記錄的文件名稱、生成時間、占用的存儲容量信息一致,并檢測文件范圍是否完整;如果信息一致且文件范圍完整,則繼續進行校驗;否則,停止校驗,返回校驗不通過的信息;
檢查在上次區塊的操作結果中未記錄的文件是否記錄在本次區塊的操作內容中,并依次檢查其數據文件中的賬號簽名、生成時間文件內容是否和本次區塊的記錄的操作來源賬號、生成時間信息一致,操作內容對應的操作結果是否與本次區塊中操作結果記錄的信息一致;如果一致則返回校驗通過的信息;否則,返回校驗不通過的信息;
對刪除操作的真實性進行校驗的方法包括:
當刪除全部文件時,檢查共享數據表的路徑下是否還存儲有文件;如果未存儲文件說明共享數據表的數據已全部刪除,操作結果與操作內容相符,返回校驗通過的信息;否則,說明操作結果與操作內容不相符,返回校驗不通過的信息;
當刪除部分文件,操作內容為文件列表list時,檢查共享數據表的路徑下是否存儲有list中的文件,如果未發現list中的文件,則繼續進行校驗;否則,停止校驗,返回校驗不通過的信息;
檢測該路徑下仍然存儲的文件,其文件名稱、生成時間、占用的存儲容量信息與上次區塊的操作結果中記錄的文件名稱、生成時間、占用存儲容量是否一致;如果一致則返回校驗通過的信息;否則,返回校驗不通過的信息;
步驟S6、各共享端分別將其區塊鏈更新到最新狀態;同時,分布式文件系統對修改的內容進行更新;分布式文件系統對修改的內容進行更新的方法包括:
控制中心下發覆蓋寫入新數據的指令,首先將分布式文件系統中待修改的共享數據表的路徑鎖定,拒絕任何應用訪問,然后將其路徑下的數據文件刪除,再將用于修改的緩存區中修改后的共享數據表副本數據移動到大數據文件系統上該共享數據表的路徑中,最后解除鎖定,允許應用訪問,完成數據覆蓋操作;
步驟S7、將共享數據表的數據還原到修改前的狀態,并使各共享端丟棄新的區塊鏈;使發起端丟棄本次區塊,將區塊鏈回退到修改前的狀態;將共享數據表的數據還原到修改前的狀態的方法包括:
控制中心向共享數據表的各共享端廣播操作失敗的信息,并向分布式文件系統發起回退操作,將緩存區中共享數據表的副本數據刪除,并重新從分布式文件系統上原路徑下復制一份共享數據表的數據放入緩存區的路徑中,從而將數據還原到修改前的狀態。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于重慶銀行股份有限公司,未經重慶銀行股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110497644.6/1.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





