国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種數(shù)據(jù)存儲系統(tǒng)及方法

      文檔序號:6424922閱讀:218來源:國知局
      專利名稱:一種數(shù)據(jù)存儲系統(tǒng)及方法
      技術領域
      本發(fā)明涉及數(shù)據(jù)管理中持續(xù)數(shù)據(jù)保護系統(tǒng),特別涉及一種數(shù)據(jù)存儲系統(tǒng)及方法。
      背景技術
      在數(shù)據(jù)管理系統(tǒng)中,為了獲取到磁盤指定區(qū)域里的磁盤數(shù)據(jù)變化,引入了緩存區(qū)來存放有效磁盤數(shù)據(jù)。即將變化的磁盤數(shù)據(jù)先保存在事先分配的內(nèi)存空間中,當保存到內(nèi)存池中的數(shù)據(jù)達到一個程度時,再將數(shù)據(jù)保存到磁盤中??墒?,事先分配的內(nèi)存空間是有限的,因此無法緩存過多的數(shù)據(jù)。而為了緩存更多的數(shù)據(jù)去劃分出更多的內(nèi)存空間,又將嚴重影響操作系統(tǒng)的性能。

      發(fā)明內(nèi)容
      本發(fā)明所要解決的技術問題是,提供一種數(shù)據(jù)存儲系統(tǒng)及方法,可以在不影響系統(tǒng)性能的前提下,緩存足夠多的數(shù)據(jù)。為了解決上述問題,本發(fā)明公開了一種數(shù)據(jù)存儲系統(tǒng),包括緩存區(qū)、檢測模塊、任務調(diào)度模塊、臨時緩存處理模塊和索引模塊,其中所述檢測模塊,實時檢測緩存區(qū)的緩存狀態(tài);所述任務調(diào)度模塊,在所述檢測模塊檢測出所述緩存區(qū)的緩存狀態(tài)為正常時,觸發(fā)所述緩存區(qū)對當前的磁盤增量數(shù)據(jù)進行緩存操作,在所述檢測模塊檢測出所述緩存區(qū)的緩存狀態(tài)為繁忙時,觸發(fā)所述臨時緩存處理模塊對當前的磁盤增量數(shù)據(jù)進行緩存操作;所述臨時緩存處理模塊,收到所述任務調(diào)度模塊觸發(fā)的緩存操作時,從非易失性存儲器中劃分出一臨時緩存空間,將當前的磁盤增量數(shù)據(jù)緩存到所述臨時緩存空間中;所述索引模塊,順序記錄已緩存的磁盤增量數(shù)據(jù)的索引信息,所述索引信息至少包括緩存位置、緩存時間和磁盤增量數(shù)據(jù)的原始地址。較佳地,上述系統(tǒng)還包括提取模塊,按照所述索引模塊記錄的磁盤增量數(shù)據(jù)的索引信息中的緩存時間和緩存位置,順序提取已緩存的磁盤增量數(shù)據(jù)。較佳地,上述系統(tǒng)中,所述臨時緩存處理模塊,在所述提取模塊從所述臨時緩存空間中提取出緩存的磁盤增量數(shù)據(jù)后,釋放所劃分的臨時緩存空間。較佳地,上述系統(tǒng)還包括恢復模塊,在所述系統(tǒng)異常時,根據(jù)所述索引模塊記錄的磁盤增量數(shù)據(jù)的索引信息恢復已緩存的磁盤增量數(shù)據(jù),其中,對于緩存位置屬于臨時緩存空間的磁盤增量數(shù)據(jù),直接從該臨時緩存空間中恢復出磁盤增量數(shù)據(jù),對于緩存位置屬于緩存區(qū)的磁盤增量數(shù)據(jù),從磁盤增量數(shù)據(jù)的原始地址中恢復出磁盤增量數(shù)據(jù)。較佳地,上述系統(tǒng)中所述檢測模塊實時檢測緩存區(qū)的緩存狀態(tài)指所述檢測模塊,檢測出所述緩存區(qū)的空間占用率低于設定值時,確定所述緩存區(qū)的緩存狀態(tài)為正常;檢測出所述緩存區(qū)的空間占用率達到或超過設定值時,確定所述緩存區(qū)的緩存狀態(tài)為繁忙。
      本發(fā)明還公開了一種數(shù)據(jù)存儲方法,包括實時檢測緩存區(qū)的緩存狀態(tài),當檢測出緩存區(qū)的緩存狀態(tài)為正常時,將當前的磁盤增量數(shù)據(jù)緩存到所述緩存區(qū)中,當檢測出緩存區(qū)的緩存狀態(tài)為繁忙時,從非易性存儲器中劃分出一臨時緩存空間,將當前的磁盤增量數(shù)據(jù)緩存到所述臨時緩存空間中;其中,在上述緩存磁盤增量數(shù)據(jù)的過程中,順序記錄已緩存的磁盤增量數(shù)據(jù)的索引信息,所述索引信息至少包括緩存位置、緩存時間和磁盤增量數(shù)據(jù)的原始地址。較佳地,上述方法還包括,緩存磁盤增量數(shù)據(jù)后,按照所記錄的磁盤增量數(shù)據(jù)的索引信息中緩存時間和緩存位置,順序提取已緩存的磁盤增量數(shù)據(jù)。較佳地,上述方法中,從所述臨時緩存空間中提取出緩存的磁盤增量數(shù)據(jù)后,還釋放所劃分的臨時緩存空間。較佳地,上述方法還包括,數(shù)據(jù)存儲系統(tǒng)異常時,根據(jù)所記錄的磁盤增量數(shù)據(jù)的索引信息恢復已緩存的磁盤增量數(shù)據(jù),其中,對于緩存位置屬于臨時緩存空間的磁盤增量數(shù)據(jù),直接從該臨時緩存空間中恢復出磁盤增量數(shù)據(jù),對于緩存位置屬于緩存區(qū)的磁盤增量數(shù)據(jù),從磁盤增量數(shù)據(jù)的原始地址中恢復出磁盤增量數(shù)據(jù)。較佳地,上述方法中,所述緩存區(qū)的緩存狀態(tài)為正常指,所述緩存區(qū)的空間占用率低于設定值;所述緩存區(qū)的緩存狀態(tài)為繁忙指,所述緩存區(qū)的空間占用率達到或超過設定值。本發(fā)明技術方案提高了緩存數(shù)據(jù)線程處理能力,從而有效地靈活地擴展了緩存數(shù)據(jù)的空間大小,且同時提高了緩存數(shù)據(jù)的可靠性。


      圖1為實施例1中數(shù)據(jù)存儲系統(tǒng)的結(jié)構示意圖。
      具體實施例方式為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,下文將結(jié)合附圖對本發(fā)明技術方案作進一步詳細說明。需要說明的是,在不沖突的情況下,本申請的實施例和實施例中的特征可以任意相互組合。本案申請人針對海量數(shù)據(jù)處理過程中,無法利用系統(tǒng)內(nèi)存空間緩存數(shù)據(jù)的問題, 想到在緩存區(qū)緩存壓力過大(也可以認為是緩存區(qū)處于繁忙狀態(tài))時,可以通過多線程任務先將當前的磁盤增量數(shù)據(jù)緩存在磁盤等非易失性存儲器的指定位置,待緩存區(qū)狀態(tài)趨于平緩時,再由緩存區(qū)進行后續(xù)的數(shù)據(jù)緩存,從而分擔緩存區(qū)的緩存壓力,解決緩存區(qū)頸瓶而導致系統(tǒng)崩潰的問題。并且,本案申請人考慮到持續(xù)數(shù)據(jù)保護技術中,要求緩存數(shù)據(jù)的可靠性較高,即要求緩存數(shù)據(jù)在緩存端和提取端具有一致性,尤其在系統(tǒng)異常(例如,系統(tǒng)掉電導致內(nèi)存緩沖區(qū)數(shù)據(jù)丟失)時,不影響緩存數(shù)據(jù)的提取,因此,本案申請人還提出在緩存數(shù)據(jù)的過程中,記錄索引信息,以便系統(tǒng)異常時,能夠恢復已緩存的數(shù)據(jù)。實施例1本實施例即基于上述思想,提供一種數(shù)據(jù)存儲系統(tǒng),如圖1所示,至少包括如下各部分。緩存區(qū),緩存磁盤增量數(shù)據(jù);
      其中,緩存區(qū),可采用緩存器、內(nèi)存等實現(xiàn),其對磁盤增量數(shù)據(jù)進行解析后,按照指定的存儲規(guī)則(如,將數(shù)據(jù)以指定的數(shù)據(jù)塊或者數(shù)據(jù)長度進行存儲等)進行數(shù)據(jù)緩存,并且緩存區(qū)可支持插入和刪除功能。檢測模塊,在數(shù)據(jù)緩存過程中,實時檢測緩存區(qū)的緩存狀態(tài);其中,緩存區(qū)的緩存狀態(tài)包括繁忙和正常狀態(tài)。具體地,在本實施例中,緩存區(qū)每存放一條數(shù)據(jù),檢測模塊都可以通過緩存區(qū)的空間占用率(即緩存區(qū)中已緩存的數(shù)據(jù)所占的空間與緩存區(qū)的總空間的比例)來判斷緩存狀態(tài)。例如,緩存區(qū)的空間占用率達到或超過設定值,則判斷緩存區(qū)的緩存狀態(tài)為繁忙,反之,緩存區(qū)的空間占用率低于設定值,則判斷緩存區(qū)的緩存狀態(tài)為正常。一般網(wǎng)絡不穩(wěn)定或任務意外斷開連接時,緩存區(qū)的空間占用率可能會上升,已至于空間占用率達到或超過設定值。任務調(diào)度模塊,根據(jù)檢測模塊檢測出的緩存區(qū)的緩存狀態(tài),觸發(fā)相應的緩存操作;其中,當檢測模塊檢測出緩存區(qū)的緩存狀態(tài)為繁忙時,觸發(fā)臨時緩存處理模塊對當前的磁盤增量數(shù)據(jù)進行緩存操作;當檢測模塊檢測出緩存區(qū)的緩存狀態(tài)為正常時,觸發(fā)緩存區(qū)對當前的磁盤增量數(shù)據(jù)進行緩存操作,即與現(xiàn)有技術中的緩存方式相同。臨時緩存處理模塊,收到任務調(diào)度模塊觸發(fā)的緩存操作時,從非易失性存儲器 (例如磁盤)中劃分出一臨時緩存空間,將當前的磁盤增量數(shù)據(jù)緩存到臨時緩存空間中;具體地,臨時緩存處理模塊,收到緩存操作時,解析當前的磁盤增量數(shù)據(jù)的存儲格式,如數(shù)據(jù)塊和數(shù)據(jù)長度,按照該數(shù)據(jù)塊和數(shù)據(jù)長度將當前的磁盤增量數(shù)據(jù)緩存到臨時緩存空間中即可。優(yōu)選方案中,臨時緩存處理模塊所劃分的臨時緩存空間的空間占用率達到或超過一設定值(即臨時緩存空間的緩存壓力也比較大),則可以按照現(xiàn)有技術的方式,僅緩存磁盤增量數(shù)據(jù)的標識即可。索引模塊,順序記錄已緩存的磁盤增量數(shù)據(jù)的索引信息,其中,索引信息至少包括緩存位置、緩存時間和磁盤增量數(shù)據(jù)的原始地址。本實施例中,索引模塊按照3 大小的磁盤增量數(shù)據(jù)塊劃分已緩存的磁盤增量數(shù)據(jù),以記錄磁盤增量數(shù)據(jù)的索引信息。數(shù)據(jù)存儲系統(tǒng)中采用了索引模塊后,一旦出現(xiàn)系統(tǒng)異常,比如系統(tǒng)掉電導致內(nèi)存緩沖區(qū)數(shù)據(jù)丟失,就可以通過索引緩存模塊恢復丟失的數(shù)據(jù),從而保證緩存端和提取端的數(shù)據(jù)的一致性。具體地,可以在優(yōu)選的方案中,增加一恢復模塊,在系統(tǒng)異常時,該恢復模塊可根據(jù)索引模塊記錄的磁盤增量數(shù)據(jù)的索引信息恢復已緩存的磁盤增量數(shù)據(jù),其中,對于緩存位置屬于臨時緩存空間的磁盤增量數(shù)據(jù),由于臨時緩存空間是非易性的存儲器,所緩存的磁盤增量數(shù)據(jù)不會丟失,故直接從該臨時緩存空間中恢復出磁盤增量數(shù)據(jù)即可。而對于緩存位置屬于緩存區(qū)的磁盤增量數(shù)據(jù),恢復模塊則可從磁盤增量數(shù)據(jù)的原始地址中恢復出該磁盤增量數(shù)據(jù)。還有一些實施方案中,上述數(shù)據(jù)存儲系統(tǒng)還可以包括一提取模塊,該模塊按照索引模塊記錄的磁盤增量數(shù)據(jù)的索引信息中的緩存時間和緩存位置,順序提取已緩存的磁盤增量數(shù)據(jù)。還有一些優(yōu)選方案中,臨時緩存處理模塊,可在提取模塊從臨時緩存空間中提取出緩存的磁盤增量數(shù)據(jù)后,釋放所劃分的臨時緩存空間,以便于非易失性存儲器的數(shù)據(jù)存儲使用,提高系統(tǒng)資源利用率。實施例2本實施例介紹上述數(shù)據(jù)存儲系統(tǒng)進行數(shù)據(jù)存儲的過程。實時檢測緩存區(qū)的緩存狀態(tài),當檢測出緩存區(qū)的緩存狀態(tài)為正常時,將當前的磁盤增量數(shù)據(jù)緩存到緩存區(qū)中,當檢測出緩存區(qū)的緩存狀態(tài)為繁忙時,則從非易失性存儲器 (例如,磁盤等)中劃分出一臨時緩存空間,將當前的磁盤增量數(shù)據(jù)緩存到所述臨時緩存空間中。其中,在緩存磁盤增量數(shù)據(jù)的過程中,還順序記錄已緩存的磁盤增量數(shù)據(jù)的索引信息,該索引信息至少包括緩存位置、緩存時間和磁盤增量數(shù)據(jù)的原始地址。在本實施例中,緩存區(qū)的緩存狀態(tài)為正常指緩存區(qū)的空間占用率低于設定值。緩存區(qū)的緩存狀態(tài)為繁忙指緩存區(qū)的空間占用率(即緩存區(qū)中已存儲的數(shù)據(jù)所占空間與緩存區(qū)的總空間的比例)達到或超過設定值。例如,設定值為50%時,則只要緩存區(qū)中已存儲的數(shù)據(jù)所占空間與緩存區(qū)的總空間的比例達到或超過50%,即判斷緩存區(qū)的緩存狀態(tài)為繁忙。還有一些方案中,考慮到緩存區(qū)繁忙時,所劃分出的臨時緩存空間的空間占用率也有可能達到或超過一設定值(即臨時緩存空間的緩存壓力也比較大),則可以按照現(xiàn)有技術的方式,僅緩存磁盤增量數(shù)據(jù)的標識即可。還有一些實施方案中,按照上述過程進行數(shù)據(jù)緩存后,可按照所記錄的磁盤增量數(shù)據(jù)的索引信息中緩存時間和緩存位置,順序提取已緩存的磁盤增量數(shù)據(jù)。還有一些優(yōu)選的方案,考慮到存儲資源的利用率,當臨時緩存空間中緩存的磁盤增量數(shù)據(jù)被提取出后,還可以釋放該臨時緩存空間。由于本實施例在緩存磁盤增量數(shù)據(jù)的過程中,順序記錄了已緩存的磁盤增量數(shù)據(jù)的索引信息,因此,基于此,可提出更優(yōu)選的實施方案。即在數(shù)據(jù)存儲系統(tǒng)異常時,根據(jù)所記錄的磁盤增量數(shù)據(jù)的索引信息恢復已緩存的磁盤增量數(shù)據(jù)。其中,對于緩存位置屬于臨時緩存空間的磁盤增量數(shù)據(jù),直接從該臨時緩存空間中恢復出磁盤增量數(shù)據(jù),而對于緩存位置屬于緩存區(qū)的磁盤增量數(shù)據(jù),從磁盤增量數(shù)據(jù)的原始地址中恢復出磁盤增量數(shù)據(jù)即可。 這樣,該優(yōu)選方案在任何異常情況下,均可以保證緩存端和提取端的數(shù)據(jù)的一致性,尤其符合持續(xù)數(shù)據(jù)保護技術的要求。從上述實施例可以看出,本發(fā)明實施例擴大了存放數(shù)據(jù)的緩存的區(qū)域范圍,有效地利用非易失性存儲器(例如磁盤)空間來擴大緩存數(shù)據(jù)的空間,通過任務調(diào)度來協(xié)助處理數(shù)據(jù),為數(shù)據(jù)保存提供了更高的保障。并且,上述實施例還記錄了緩存數(shù)據(jù)的索引信息, 這樣,在系統(tǒng)異常時,就可以根據(jù)索引信息來恢復緩存的數(shù)據(jù)以保證緩存端和提取端的數(shù)據(jù)的一致性,因此采用這種技術,使其應用在數(shù)據(jù)管理系統(tǒng)軟件中,避免了緩存區(qū)壓力過于增大,從而為系統(tǒng)的高可靠性,提供了有利保障,從而為大大地提高系統(tǒng)整體運作。當然,本發(fā)明還可有其他多種實施例,在不背離本發(fā)明精神及其實質(zhì)的情況下,熟悉本領域的技術人員當可根據(jù)本發(fā)明作出各種相應的改變和變形,但這些相應的改變和變形都應屬于本發(fā)明的權利要求的保護范圍。
      權利要求
      1.一種數(shù)據(jù)存儲系統(tǒng),包括緩存區(qū),其特征在于,該系統(tǒng)還包括檢測模塊、任務調(diào)度模塊、臨時緩存處理模塊和索引模塊,其中所述檢測模塊,實時檢測緩存區(qū)的緩存狀態(tài);所述任務調(diào)度模塊,在所述檢測模塊檢測出所述緩存區(qū)的緩存狀態(tài)為正常時,觸發(fā)所述緩存區(qū)對當前的磁盤增量數(shù)據(jù)進行緩存操作,在所述檢測模塊檢測出所述緩存區(qū)的緩存狀態(tài)為繁忙時,觸發(fā)所述臨時緩存處理模塊對當前的磁盤增量數(shù)據(jù)進行緩存操作;所述臨時緩存處理模塊,收到所述任務調(diào)度模塊觸發(fā)的緩存操作時,從非易失性存儲器中劃分出一臨時緩存空間,將當前的磁盤增量數(shù)據(jù)緩存到所述臨時緩存空間中;所述索引模塊,順序記錄已緩存的磁盤增量數(shù)據(jù)的索引信息,所述索引信息至少包括緩存位置、緩存時間和磁盤增量數(shù)據(jù)的原始地址。
      2.如權利要求1所述的系統(tǒng),其特征在于,該系統(tǒng)還包括提取模塊,按照所述索引模塊記錄的磁盤增量數(shù)據(jù)的索引信息中的緩存時間和緩存位置,順序提取已緩存的磁盤增量數(shù)據(jù)。
      3.如權利要求2所述的系統(tǒng),其特征在于,所述臨時緩存處理模塊,在所述提取模塊從所述臨時緩存空間中提取出緩存的磁盤增量數(shù)據(jù)后,釋放所劃分的臨時緩存空間。
      4.如權利要求1、2或3所述的系統(tǒng),其特征在于,該系統(tǒng)還包括恢復模塊,在所述系統(tǒng)異常時,根據(jù)所述索引模塊記錄的磁盤增量數(shù)據(jù)的索引信息恢復已緩存的磁盤增量數(shù)據(jù),其中,對于緩存位置屬于臨時緩存空間的磁盤增量數(shù)據(jù),直接從該臨時緩存空間中恢復出磁盤增量數(shù)據(jù),對于緩存位置屬于緩存區(qū)的磁盤增量數(shù)據(jù),從磁盤增量數(shù)據(jù)的原始地址中恢復出磁盤增量數(shù)據(jù)。
      5.如權利要求4所述的系統(tǒng),其特征在于,所述檢測模塊實時檢測緩存區(qū)的緩存狀態(tài)指所述檢測模塊,檢測出所述緩存區(qū)的空間占用率低于設定值時,確定所述緩存區(qū)的緩存狀態(tài)為正常;檢測出所述緩存區(qū)的空間占用率達到或超過設定值時,確定所述緩存區(qū)的緩存狀態(tài)為繁忙。
      6.一種數(shù)據(jù)存儲方法,其特征在于,該方法包括實時檢測緩存區(qū)的緩存狀態(tài),當檢測出緩存區(qū)的緩存狀態(tài)為正常時,將當前的磁盤增量數(shù)據(jù)緩存到所述緩存區(qū)中,當檢測出緩存區(qū)的緩存狀態(tài)為繁忙時,從非易性存儲器中劃分出一臨時緩存空間,將當前的磁盤增量數(shù)據(jù)緩存到所述臨時緩存空間中;其中,在上述緩存磁盤增量數(shù)據(jù)的過程中,順序記錄已緩存的磁盤增量數(shù)據(jù)的索引信息,所述索引信息至少包括緩存位置、緩存時間和磁盤增量數(shù)據(jù)的原始地址。
      7.如權利要求6所述的方法,其特征在于,該方法還包括緩存磁盤增量數(shù)據(jù)后,按照所記錄的磁盤增量數(shù)據(jù)的索引信息中緩存時間和緩存位置,順序提取已緩存的磁盤增量數(shù)據(jù)。
      8.如權利要求7所述的方法,其特征在于,從所述臨時緩存空間中提取出緩存的磁盤增量數(shù)據(jù)后,還釋放所劃分的臨時緩存空
      9.如權利要求6、7或8所述的方法,其特征在于,數(shù)據(jù)存儲系統(tǒng)異常時,根據(jù)所記錄的磁盤增量數(shù)據(jù)的索引信息恢復已緩存的磁盤增量數(shù)據(jù),其中,對于緩存位置屬于臨時緩存空間的磁盤增量數(shù)據(jù),直接從該臨時緩存空間中恢復出磁盤增量數(shù)據(jù),對于緩存位置屬于緩存區(qū)的磁盤增量數(shù)據(jù),從磁盤增量數(shù)據(jù)的原始地址中恢復出磁盤增量數(shù)據(jù)。
      10.如權利要求9所述的方法,其特征在于,所述緩存區(qū)的緩存狀態(tài)為正常指,所述緩存區(qū)的空間占用率低于設定值; 所述緩存區(qū)的緩存狀態(tài)為繁忙指,所述緩存區(qū)的空間占用率達到或超過設定值。
      全文摘要
      本發(fā)明公開了一種數(shù)據(jù)存儲系統(tǒng)及方法,涉及數(shù)據(jù)管理中持續(xù)數(shù)據(jù)保護系統(tǒng)。本發(fā)明公開的系統(tǒng)包括檢測模塊,實時檢測緩存區(qū)的緩存狀態(tài);任務調(diào)度模塊,在緩存區(qū)的緩存狀態(tài)為正常時,觸發(fā)緩存區(qū)進行緩存操作,在緩存區(qū)的緩存狀態(tài)為繁忙時,觸發(fā)臨時緩存處理模塊進行緩存操作;臨時緩存處理模塊,收到任務調(diào)度模塊觸發(fā)的緩存操作時,從非易失性存儲器中劃分出一臨時緩存空間,將當前的磁盤增量數(shù)據(jù)緩存到臨時緩存空間中;索引模塊,順序記錄已緩存的磁盤增量數(shù)據(jù)的索引信息,索引信息至少包括緩存位置、緩存時間和磁盤增量數(shù)據(jù)的原始地址。本發(fā)明技術方案有效地靈活地擴展了緩存數(shù)據(jù)的空間大小,且同時提高了緩存數(shù)據(jù)的可靠性。
      文檔編號G06F12/08GK102231137SQ20111013862
      公開日2011年11月2日 申請日期2011年5月26日 優(yōu)先權日2011年5月26日
      發(fā)明者劉少偉, 劉正偉, 劉非 申請人:浪潮(北京)電子信息產(chǎn)業(yè)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1