[發明專利]一種維護數據一致性的方法及裝置在審
| 申請號: | 201410363170.6 | 申請日: | 2014-07-28 |
| 公開(公告)號: | CN104104731A | 公開(公告)日: | 2014-10-15 |
| 發明(設計)人: | 王歡;吳楠 | 申請(專利權)人: | 浪潮(北京)電子信息產業有限公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08;G06F17/30 |
| 代理公司: | 北京安信方達知識產權代理有限公司 11262 | 代理人: | 王丹;李丹 |
| 地址: | 100085 北京市海*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 維護 數據一致性 方法 裝置 | ||
技術領域
本申請涉及分布式存儲技術,尤指一種分布式系統中維護數據一致性的方法及裝置。
背景技術
隨著大數據海量信息的爆發,傳統的存儲架構已經無法滿足日益增長的數據存儲需要,也無法滿足海量數據的存儲性能需要。分布式存儲架構早先在高性能計算(HPC)領域已經廣泛使用,為的就是在高性能集群做數據的統一存儲和統一管理,在多臺的存儲節點上進行數據的分布。
采用分布式存儲時,需要對文件存儲的位置進行及時有效的更新,才能實現對存儲文件的有效讀取和分析,因此需要維護數據和保存有數據分布是位置信息的元數據的一致性。數據存儲的分布式位置主要通過以下兩種方法維護數據一致性,一是通過統一的地址來進行記錄,即采用元數據的方法進行數據一致性維護;二是通過一致性哈希算法維護數據,但是,一致性哈希算法進行數據一致性維護時,無法達到數據及時分布的負載均衡,當進行大量數據移動時,采用一致性哈希算法給集群帶來很大的網絡負載和復雜性管理。
由于采用一致性哈希算法實用性不強,目前主要通過元數據服務器進行數據與元數據的一致性維護,主要包括有二次提交算法、三次提交算法、日志記錄方法,;雖然以上算法可以實現數據與元數據一致性的維護,但是現有實現數據與元數據一致性維護的方法較為復雜,二次提交算法采用的是阻塞協議,在執行的過程中需要鎖住其他元數據更新操作,且不容錯,在進行處理請求過程中包含有兩個階段,每個階段都可能產生故障;三次提交算法同樣采用阻塞協議,在三個階段均可出現故障,且每次一旦出錯,都要執行事務的回滾恢復操作,且在回滾恢復過程中同樣又會產生異常,因此,二次提交算法和三次提交算法復雜度高。日志記錄方法,是將日志保存在內存或磁盤中,在每次進行處理請求的操作時,進行日志的記錄,在斷電的情況下,保存在內存的日志或造成丟失,而在磁盤上保存日志,大量的處理請求,會嚴重影響磁盤的工作性能?,F有方法,日志記錄方法在內存中保存日志,在斷電時,容易造成數據丟失,在磁盤中保存日志,影響磁盤的工作性能。而二次提交算法和三次提交算法給原本就復雜的分布式系統添加了更大的復雜性,不符合設計當中應當注重簡約的原則(簡稱KISS原則)。
發明內容
為了解決上述問題,本發明提供一種維護數據一致性的方法及裝置,能夠簡單地維護數據的一致性。
為了達到本發明的目的,本申請提供一種維護數據一致性的方法;包括:
在客戶端出現宕機或網絡異常時,元數據服務器獲取客戶端發送的對文件進行處理的處理請求;
元數據服務器根據處理請求查看處理請求的文件的存在情況,
若處理請求的文件不符合處理的狀態,根據文件的處理請求執行文件的處理;并在完成處理請求后,刪除元數據服務器獲取的處理請求,同時更新元數據服務器和將完成處理請求的內容反饋給客戶端;
若處理請求的文件符合處理的狀態,直接刪除獲得的處理請求并反饋給客戶端。
進一步地,文件的處理請求至少包含:對文件進行增加的請求,和/或刪除的請求,和/或修改的請求。
進一步地,該方法還包括:當客戶端正常時,客戶端發送處理請求到元數據服務器和數據服務器,數據服務器根據處理請求進行文件處理,并通知元數據服務器處理請求的文件處理的狀態,以完成元數據同步。
進一步地,當數據服務器完成處理請求時,數據服務器出現宕機或網絡故障,未通知元數據服務器完成元數據同步時,該方法還包括:元數據服務器根據接收的處理請求訪問數據服務器,確定是否完成所述處理請求。
另一方面,本申請還提供一種維護數據一致性的系統,包括:元數據服務器、客戶端和數據服務器;其中,
元數據服務器,用于在客戶端出現宕機或網絡異常時,獲取客戶端發送的對文件進行處理的處理請求;根據處理請求查看處理請求的文件的存在情況,
若處理請求的文件不符合處理的狀態,根據文件的處理請求執行文件的處理;并在完成處理請求后,刪除獲取的處理請求,同時更新元數據和將完成處理請求的內容反饋給客戶端;若處理請求的文件符合處理的狀態,直接刪除獲得的處理請求并反饋給客戶端;
數據服務器,用于根據元數據服務器的獲取的處理請求完成文件的處理;
客戶端,用于接收元數據服務器,關于處理請求完成的反饋。
進一步地,文件的處理請求至少包含:對文件進行增加的請求,和/或刪除的請求,和/或修改的請求。
進一步地,客戶端還用于,在正常工作時,發送處理請求到元數據服務器和數據服務器;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浪潮(北京)電子信息產業有限公司,未經浪潮(北京)電子信息產業有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410363170.6/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種云存儲系統元數據服務集群的數據同步方法
- 下一篇:傳輸數據的方法及裝置





