一種云存儲系統內主從設備數據快速同步的方法
【技術領域】
[0001 ]本發明涉及云存儲系統中數據可靠性技術,具體地說,涉及一種云存儲系統內主 從設備數據快速同步的方法。
【背景技術】
[0002] 云存儲系統是一種典型的分布式存儲系統,用戶的存儲請求由主存儲器來處理, 主存儲設備處于工作狀態。為了保證云存儲系統的可靠性,采用輔助存儲器設備一直保持 熱備份狀態,當主存儲設備出現故障時輔助存儲器代替主存儲器,由熱備狀態切換到工作 狀態。因此,在云存儲系統中主存儲器與輔助存儲直接的數據應該保存嚴格的一致性,否則 當故障發生時就會出現丟失用戶數據的嚴重損失。
[0003] 現有云存儲系統中主存儲器和輔助存儲器直接數據同步采用操作日志同步技術, 用戶對主存儲器的數據存取請求操作以日志的方式記錄下來,同時對輔助存儲器也進行相 同的數據存取,特別是對數據的寫操作等改變數據的操作。但是現有數據同步操作技術經 常會出現寫操作瓶頸,導致主從存儲器直接數據同步效率很低,嚴重時會大大降低云存儲 系統的性能和可靠性。
【發明內容】
[0004] 為了克服現有技術中存在的缺陷,本發明提出了一種云存儲系統內主從設備數據 快速同步的方法,本發明還提供了針對于此分布式存儲系統的更新和查詢方法。為提高云 存儲的性能和可靠性提供基本的技術支持。實現云存儲系統中主存儲設備和輔助存儲設備 之間高效的數據同步。改善并優化現有操作日志同步方法的弊端,克服大量并發寫操作引 起的數據同步瓶頸,提高云存儲系統的數據可靠性。
[0005] 其技術方案如下:
[0006] -種云存儲系統內主從設備數據快速同步的方法,包括以下步驟:
[0007] 第一步,采用數據讀寫操作日志分離方法。首先把數據操作分為讀和寫兩大類,分 別建立讀操作日志和寫操作日志。由于讀操作不涉及數據同步問題,因此忽略讀操作日志 重點考慮寫操作引起的數據不一致。其次,專門為寫操作建立一個線程池來調度CHJ資源來 實現獨立的寫操作運算,從技術角度使用可緩沖線程池來處理大量用戶的寫操作數據同 步,可緩沖線程池能夠根據用戶負載的大小動態調整處理線程的數量,提高了云存儲系統 的資源利用率。
[0008] 第二步,使用局部時間片延遲提交同步操作的技術。對于大量用戶的寫數據操作, 以一個固定時間窗為單位選擇該時間片內的所有寫操作一起完成數據同步。也就是當有寫 操作出現時并不是立即對輔助存儲設備進行數據同步,而是把一個時間片的所有寫操作集 中進行同步處理,這樣避免了大量的硬盤尋道時間。
[0009] 第三步,為了解決延遲同步時主存儲設備發生故障對數據可靠性的影響,對局部 時間片延遲周期中的用戶請求提供事務回滾服務。當用戶提交的寫操作請求處于延遲時間 片內,而此時主存儲器設備又發生了故障需要切換輔助存儲器,那么該延遲時間片內所有 的用戶寫操作全部退回用戶,需要重新發起請求。總之,這種延遲時間片內回滾服務僅僅為 了避免極端故障出現,對用戶的云存儲服務造成一定的負面影響。
[0010]本發明的有益效果為:
[0011]本發明針使得系統具有高可用性、高查詢并行度、和大數據容量的管理和擴展能 力,并能夠有效降低管理和維護成本。
【具體實施方式】
[0012] 下面結合【具體實施方式】對本發明的技術方案作進一步詳細地說明。
[0013] 本發明在仿真實驗環境中進行測試,仿真環境中有40個存儲節點的分布式集群系 統,其中一個主存儲服務器,一個輔助存儲服務器。然后利用隨機算法模擬用戶的讀寫數據 請求,以泊松分布構造請求模型來產生200次/分鐘的負載壓力,然后逐漸增加寫請求的負 載壓力,并測試主存儲器和輔助存儲器直接數據同步延遲(毫秒為單位),對比未使用該方 法和使用該方法的時間來驗證發明的有效性。測試結果如表1所示:
[0014] 表1數據同步性能對比表
[0015]
[〇〇16」 以上所還,彳乂為本友明較佳的具體買施萬式,本友明的保F范圍小|很亍此,仕何熟 悉本技術領域的技術人員在本發明披露的技術范圍內,可顯而易見地得到的技術方案的簡 單變化或等效替換均落入本發明的保護范圍內。
【主權項】
1. 一種云存儲系統內主從設備數據快速同步的方法,其特征在于,包括以下步驟: 第一步,采用數據讀寫操作日志分離方法;首先把數據操作分為讀和寫兩大類,分別建 立讀操作日志和寫操作日志;讀操作不涉及數據同步問題,忽略讀操作日志重點考慮寫操 作引起的數據不一致;其次,專門為寫操作建立一個線程池來調度CHJ資源來實現獨立的寫 操作運算,從技術角度使用可緩沖線程池來處理大量用戶的寫操作數據同步,可緩沖線程 池能夠根據用戶負載的大小動態調整處理線程的數量,提高了云存儲系統的資源利用率; 第二步,使用局部時間片延遲提交同步操作的技術;對于大量用戶的寫數據操作,以一 個固定時間窗為單位選擇該時間片內的所有寫操作一起完成數據同步;也就是當有寫操作 出現時并不是立即對輔助存儲設備進行數據同步,而是把一個時間片的所有寫操作集中進 行同步處理,這樣避免了大量的硬盤尋道時間; 第三步,為了解決延遲同步時主存儲設備發生故障對數據可靠性的影響,對局部時間 片延遲周期中的用戶請求提供事務回滾服務;當用戶提交的寫操作請求處于延遲時間片 內,而此時主存儲器設備又發生了故障需要切換輔助存儲器,那么該延遲時間片內所有的 用戶寫操作全部退回用戶,需要重新發起請求。
【專利摘要】本發明公開了一種云存儲系統內主從設備數據快速同步的方法,采用數據讀寫操作日志分離方法;使用局部時間片延遲提交同步操作的技術;為了解決延遲同步時主存儲設備發生故障對數據可靠性的影響,本發明還提供了針對于此分布式存儲系統的更新和查詢方法。為提高云存儲的性能和可靠性提供基本的技術支持。實現云存儲系統中主存儲設備和輔助存儲設備之間高效的數據同步。改善并優化現有操作日志同步方法的弊端,克服大量并發寫操作引起的數據同步瓶頸,提高云存儲系統的數據可靠性。
【IPC分類】G06F3/06
【公開號】CN105468297
【申請號】CN201510795567
【發明人】王海峰, 劉海濤, 王瑾, 曹云鵬
【申請人】臨沂大學
【公開日】2016年4月6日
【申請日】2015年11月18日