一種雲計算環境下的海量數據存取方法
2023-04-24 02:24:16 2
專利名稱:一種雲計算環境下的海量數據存取方法
技術領域:
本發明涉及計算機領域的數據管理方法,特指一種雲計算環境下的海量數據存取方法。
背景技術:
雲計算是一種商業計算模型,它將計算任務分布在大量計算機構成的資源池上, 使各種應用程式能夠根據需要獲取計算力、存儲空間和信息服務;對於數據密集型服務而言,海量數據存儲於雲中,在用戶需要時按需提取部分數據,並將計算結果返回給用戶。其將位於網絡中的各種資源整合在一起,為用戶提供服務,用戶按需取用、按用付費,就像水和電一樣方便、快捷。隨著信息技術的高速發展,雲計算已經成為一種趨勢。如圖1所示,現有的用於雲計算環境數據管理方法,一般是運行於應用層,採用應用層的數據管理系統,所有針對應用數據特點做的優化全部在應用層完成,在底層仍然採用作業系統已有的傳統文件系統來存取數據。如=Google的數據管理系統google文件系統(google File System GFS)。Google首先利用網絡爬蟲將網絡上的海量網頁信息收集到自己的雲中,然後在用戶搜索時,將包含用戶指定關鍵字的網頁按一定順序返回給用戶。 這些網頁信息作為一種資源在相當長的時間裡都會保存下來,具有「一旦寫入不再更改」的特點。GFS將數據按塊(稱為Chunk,每塊大小64M)存儲,每個數據塊至少在3個數據伺服器上冗餘備份,每個數據塊副本對應一個文件系統中的64M文件,通過一個元數據伺服器對這些數據塊文件進行管理。GFS不修改作業系統已有的傳統文件系統,運行於應用層。傳統文件系統以文件的方式為用戶提供數據存取的功能。要使用傳統文件系統, 首先需要用磁碟分區工具將磁碟進行分區,然後用傳統文件系統格式化工具將分區格式化為特定的格式。用戶就可以在該分區中創建目錄,目錄裡再創建子目錄,形成一個層次式的數據存儲目錄結構。用戶可以在任意目錄中創建數據文件,並將數據寫入文件中。讀取該數據時,首先通過分區根目錄逐級向下遍歷該數據文件的每一級父目錄,直到找到該文件為止,然後打開文件讀取其中的數據。其具體步驟如下
1、格式化磁碟分區格式化磁碟分區的主要工作是在磁碟分區頭部劃分一個區域,存儲該磁碟分區的一些元數據信息。為了支持文件系統所提供的層次式數據存儲功能,元數據信息通常比較龐雜,以 FreeBSD作業系統所採用的UFS文件系統為例,其分區元數據包括超級塊信息、柱面組信息、inode節點表等。超級塊存儲有關文件系統參數的大量信息,包括柱面組大小,數據塊大小,碎片的大小,還包括文件系統最後掛載時間等,通常位於文件系統起始位置的64KB處。 柱面組信息主要包括該柱面組的目錄數,空閒塊數,空閒inode節點數,空閒碎片數等。每一個柱面組都擁有一個inode節點表,它用於存放本柱面組內的inode節點。每一個inode 節點存儲一個文件的元數據信息。每一個柱面組的inode節點表都位於柱面組的固定位置,一般為第32個碎片處,它的大小由inode節點大小和為柱面組分配的inode節點數決定。
2、打開文件其主要工作是根據用戶所請求的文件路徑查詢並取出目標文件的 inode節點信息,並根據訪問類型的不同,為文件加不同的鎖,以維護數據一致性。在層次式的數據存儲結構中,可以從任意目錄的inode節點信息中檢索到該目錄中的所有文件和子目錄的inode節點信息。下面以打開/a/b/c. txt文件為例,說明查詢目標文件c. txt的 inode節點信息的流程
在磁碟分區的固定位置讀取根目錄的inode節點信息;
(1)讀取根目錄下的所有目錄, 從中匹配目標文件路徑中位於根目錄下的目錄名,即
a ;
(2)讀取a對應的inode節點信息,從中匹配目標文件路徑中位於a下的目錄名,即b;
(3)讀取b對應的inode節點信息,從中匹配目標文件路徑中位於b下的文件名,即
C. txt ;
(4)讀取目標文件(即c.txt)的inode節點信息;
(5)為目標文件(即c.txt)加鎖。3、寫入文件該操作在請求寫入數據的起始位置開始寫入用戶數據,並更新相關的文件元數據和文件系統元數據。4、讀取文件該操作在請求讀取數據的起始位置開始讀取所需要長度的數據,並更新相關的文件元數據和文件系統元數據。5、刪除文件該操作在磁碟中刪除文件,刪除相關的文件元數據,並更新文件系統元數據。6、關閉文件該操作執行解鎖、清內存等操作。由以上步驟可知,傳統文件系統中的層次式目錄結構為用戶提供了靈活便利的數據存取方式,但其並沒有針對雲計算環境下的「一旦寫入不再更改」的數據做專門的優化, 其中的文件尋址、文件打開和關閉、文件的讀寫鎖機制等功能都對系統性能有很大的影響, 因而效率不高。
發明內容
本發明所要解決的技術問題是針對現有技術存在的技術問題,本發明提供一種極度簡化、能提高雲計算環境下的數據存取效率、減少系統內核資源的消耗和提高系統性能的雲計算環境下的海量數據存取方法。為解決上述技術問題,本發明採用以下技術方案
一種雲計算環境下的海量數據存取方法,其特徵在於包括以下步驟
1)格式化磁碟分區並在磁碟分區中設置一隨用戶操作實時更新的分區元數據信息;
2)將經應用層中的數據管理系統分塊處理後的數據塊,逐塊依次寫入磁碟分區中並順序編索引號,用戶通過輸入所述索引號從磁碟分區中讀取對應的數據塊。作為本發明的方法的進一步改進
上述的方法中,寫入數據塊時,在數據塊後存儲一相應的用於檢查數據塊正確性的校驗數據塊,所述校驗數據塊根據所述數據塊的內容計算得到且與數據塊一一對應。上述的方法中,所述分區元數據信息存儲在磁碟分區中的保留數據區域內,所述保留數據區域為兩塊,一塊位於所述磁碟分區的頭部,另一塊位於所述磁碟分區的尾部。
上述的方法中,所述步驟1),具體包括以下步驟 1.1)確定分區元數據信息;
1. 2)將分區元數據信息寫入磁碟分區頭部保留數據區域中;
1.3)將分區元數據信息寫入磁碟分區尾部保留數據區域中,作為冗餘備份。上述的方法中,所述寫入數據塊,具體包括以下步驟
2.1)讀取分區元數據信息,並校驗其完整性;
2. 2)判斷磁碟分區是否已滿,若滿則返回「磁碟已滿」的錯誤,否則繼續; 2. 3)計算數據塊的校驗數據塊;
2. 4)將數據塊寫入磁碟分區中,並將校驗數據塊寫於數據塊後;
2. 5)更新分區元數據信息;
2. 6)將新的分區元數據信息寫入磁碟分區中;
2.7)根據數據塊的寫入位置返回相應的索引號。上述的方法中,所述計算數據塊的校驗數據塊,具體包括以下步驟將所述數據塊分為A個新的校驗塊,定義一校驗變量,並將所述A個新的校驗塊中的每個字節依次與所述校驗變量做異或運算,每個校驗塊算出1個字節的校驗值,共計算出A個字節的校驗值,即為數據塊的校驗數據塊,所述A為校驗數據塊大小。上述的方法中,所述讀取數據塊,具體包括以下步驟
3.1)從磁碟分區中讀取分區元數據信息,並校驗其完整性; 3. 2)導入用戶輸入的索引號,並檢查其合法性;
3. 3)若所述索引號合法,則根據索引號計算數據塊在磁碟分區中的位置;
3. 4)在計算得到的位置處讀取數據塊;
3. 5)在該數據塊後讀取校驗數據塊;
3. 6)根據校驗數據塊檢查數據塊的正確性;
3. 7)若數據塊正確,則將讀取的數據塊返回給用戶,否則返回錯誤。上述的方法中,所述根據校驗數據塊檢查數據塊的正確性,具體包括以下步驟 3. 6. 1)根據讀取的數據塊,重新計算一新校驗數據塊;
3. 6. 2)將所述新校驗數據塊與從磁碟分區中讀取的校驗數據塊逐字節進行比較,若兩者相同,則判定數據塊正確,否則判定數據塊不正確。上述的方法中,所述分區元數據信息包括元數據校驗值、分區元數據大小、數據塊大小、校驗數據塊大小、數據塊總量、已使用數據塊數量和新數據塊起始位置。與現有技術相比,本發明的優點在於
1、本發明的雲計算環境下的海量數據存取方法,針對雲計算環境的「一旦寫入不再更改」的海量數據特點,直接對經應用層數據管理程序分塊後的數據塊進行處理,取消了傳統文件系統中的層次式數據存儲結構,同時取消了文件鎖等功能,通過索引號直接讀寫磁碟分區,僅提供最基本的數據存取功能,極度簡化了數據存取步驟,且減少了內核資源的消耗,可將性能提高到最優。2、本發明的雲計算環境下的海量數據存取方法,為每個數據塊設置一校驗數據塊,以檢查數據塊是否遭到破壞,可保證數據的正確性。3、本發明的雲計算環境下的海量數據存取方法,格式化磁碟分區時,分區元數據信息中僅保留最基本的文件系統元數據信息,進一步減少和優化了數據存取的步驟;將分區元數據信息存於分區頭部和尾部,互為備份,提高了可靠性。
圖1是現有技術的數據存取方法的模塊關係示意圖; 圖2是本發明的應用實例中的模塊組成關係示意圖3是本發明中的總體流程示意圖4是本發明的格式化磁碟分區的流程示意圖5是本發明的寫入數據塊流程示意圖6是本發明的讀取數據塊流程示意圖7為具體實施例中的分區元數據信息的物理存儲格式示意圖8為具體實施例中的分區元數據信息在內存中的數據結構示意圖。
具體實施例方式以下將結合說明書附圖和具體實施例對本發明作進一步詳細說明。如圖2所示,用本發明的雲計算環境下的海量數據存取方法,應用於Linux作業系統中,可實現一可配置塊式文件系統(Configurable Block File System 以下簡稱 CBFS)。該可配置塊式文件系統與作業系統內核中其它相關模塊的關係如圖2所示,其直接通過磁碟驅動讀寫磁碟數據,不採用虛擬文件系統或傳統的文件系統,步驟較傳統的數據存取方法更簡單,效率較高。如圖3、圖4、圖5、圖6所示,本發明的雲計算環境下的海量數據存取方法,包括以下步驟
1、格式化磁碟分區 1.1確定分區元數據信息;
1. 1. 1系統管理員指定待格式化的磁碟分區和支持的數據塊大小。1. 1. 2判斷數據塊大小是否介於4K至IG之間並且是4K的倍數,如果不是,則返回錯誤,否則繼續下一步。1.1.3判斷磁碟分區大小是否大於(DataBlockSize + 2 * MetaDataSize),如果不是則返回錯誤,否則繼續下一步。1.1.4定義一個全局指針變量gpCBFSPartionHeadCache,在內存中創建分區元數據信息,其在內存中的數據結構如圖8所示,其物理存儲格式如圖7所示,並將其地址賦給全局指針變量gpCBFSPartionHeadCache。分區元數據信息的大小為4K,分區元數據信息的前192位元組包括12個16位元組的欄位,依次為
元數據校驗值MetaDataVerifyValue,欄位值的計算公式如下
MetaDataVerifyValue =VersionOreateTime 「 PartitionSize 「 MetaDataSize 「DataBlockSize 「 VerifyDataBlockSize 「 VerifyBlockSize 「 TotalDataBlock 「 DataBlockUsed 「 NextNewPosition 「 LastMTime ; 軟體版本號Version,欄位值為1. O ; 分區創建時間CreateTime,欄位值為當前時間;分區大小PartitionSize,欄位值為當前磁碟分區大小; 分區元數據大小MetaDataSize,欄位值為4K ; 數據塊大小DataBlockSize,欄位值為管理員指定的數據塊大小; 校驗數據塊大小VerifyDataBlockSize,欄位值為IK ; 校驗塊大小VerifyBlockSize,欄位值的計算公式為 VerifyBlockSize = DataBlockSize/VerifyDataBlockSize ; 數據塊總量TotalDataBlock,欄位值的計算公式為
TotalDataBlock = (PartitionSize _ 2 氺 MetaDataSize) / DataBlockSize ; 已使用數據塊數量DataBlockUsed,欄位值為O ; 新數據塊起始位置NextNewPosition,欄位值為O ; 最新分區修改時間LastMTime,欄位值為當前時間; 分區元數據信息的第192位元組以後的區域為保留欄位。1. 2將分區元數據信息寫入磁碟分區頭部的保留數據區域(即磁碟分區的第一個 4K空間)中
將gpCBFS PartionHeadCache內的地址所指向的數據結構中的各欄位值依序寫入磁碟分區頭部的第O到191位元組中,並用O將磁碟分區頭部的保留欄位填滿。1. 3將分區元數據信息寫入磁碟分區尾部的保留數據區域(即磁碟分區的最後一個4K空間)中,作為冗餘備份
將gpCBFSPartionHeadCache內的地址所指向的數據結構中的各欄位值依序寫入磁碟分區尾部的第O到191位元組中,並用O將磁碟分區尾部的保留欄位填滿。2、存取數據——寫入數據塊,將經應用層中的數據管理系統分塊處理後的數據塊,逐塊依次寫入磁碟分區中並順序編索引號,具體包括以下步驟
2.1讀取分區元數據信息,並校驗其完整性
如果gpCBFSPartionHeadCache內存儲的地址不為空(分區元數據信息已經緩存到內存,不用再到磁碟讀取),則跳轉到2. 2步驟;否則從磁碟分區頭部讀取磁碟分區元數據信息到內存,具體包括以下步驟
2. 1. 1在內存中創建一個如圖8的數據結構,作為全局元數據信息緩存空間,並將其地址賦給全局指針變量gpCBFSPart ionHeadCache。2. 1.2讀取磁碟分區頭部保留區域內的前192個字節,將這192個字節的內容作為全局指針變量gpCBFSPartionHeadCache內的地址所指向的數據結構中的各欄位值,即將第一個16位元組作為gpCBFSPartionHeadCache內的地址所指向的數據結構中的第一個欄位的值,第二個16位元組作為gpCBFSPartionHeadCache內的地址所指向的數據結構中的第一個欄位的值,依此類推。2. 1. 3在內存中分配一個16位元組的內存空間作為元數據校驗值的存儲空間。2. 1. 4按照元數據校驗值MetaDataVerifyValue的計算公式,以2. 1. 2步驟所讀取的分區元數據信息作為輸入,重新計算元數據校驗值並存入2. 1. 3步驟分配的元數據校驗值的存儲空間中。2. 1. 5將2. 1. 4步驟計算出來元數據校驗值與2. 1. 2步驟所讀取的分區元數據信息中的元數據校驗值做比較,如果相同,則返回正確,如果不同,則繼續下一步。
2. 1. 6定義一個指針變量pCBFSPartitionhil,在內存中建立如圖8所示的數據結構,作為存儲在磁碟分區尾部的元數據校驗值的存儲空間,並將該數據結構的地址賦給指針變量 pCBFSPartitionTai 1。2.1.7讀取磁碟分區尾部的前192個字節,將這192個字節的內容作為2. 1.6步驟分配的指針變量pCBFSPartitionTail內的地址所指向的數據結構中的各欄位值即將第一個16位元組作為指針變量pCBFSPartitionTail內的地址所指向的數據結構中的第一個欄位的值,第二個16位元組作為指針變量pCBFSPartitionTail內的地址所指向的數據結構中的第二個欄位的值,依此類推。2. 1. 8按元數據校驗值MetaDataVerifyValue的計算公式,以2. 1. 7步驟所讀取的分區元數據信息作為輸入,重新計算元數據校驗值並存入2. 1. 3步驟分配的元數據校驗值的存儲空間。2. 1. 9將2. 1. 8步驟計算出來的元數據校驗值與2. 1. 7步驟所讀取的分區元數據信息中的元數據校驗值做比較,如果相同,則繼續下一步,否則返回錯誤。2. 1. 10用2. 1.7步驟讀取的分區元數據信息存入2. 1. 1步驟分配的全局元數據信息緩存空間,並寫入磁碟分區頭部的元數據存儲區域。2. 2判斷磁碟分區是否已滿,具體方法為
判斷gpCBFSPartionHeadCache內地址所指向的數據結構中的NextNewPosition的值是否為16個OxFF,如果是,則判定磁碟分區已滿,返回「磁碟已滿」的錯誤,否則繼續; 2.3計算數據塊的校驗數據塊,具體包括以下步驟
2. 3. 1將數據塊分為A個新的校驗塊,A為校驗數據塊大小VerifyDataBlockSize。2. 3. 2定義一校驗變量VerifyByte,為校驗變量VerifyByte賦初值為0x00。2. 3. 3將A個新的校驗塊中的每個字節依次與校驗變量VerifyByte做異或運算, 每個校驗塊算出1個字節的校驗值,共計算出A個字節的校驗值,即為數據塊的校驗數據塊。2.4將數據塊寫入磁碟分區中,並將校驗數據塊寫於數據塊後,具體步驟為
2. 4. 1將數據塊寫入磁碟分區中gpCBFSPartionHeadCache內地址所指向的數據結構巾白勺 NextNewPosition @g^h。2. 4. 2將校驗數據塊存入磁碟分區中緊挨數據塊的後面位置,即 (NextNewPosition + DataBlockSize ) &。2. 5更新分區元數據信息,包括以下步驟
2. 5. 1將分區元數據信息中的DataBlockUsed的值加1。2. 5. 2更新分區元數據信息中的「新數據塊的起始位置」,具體方法為
2. 5. 2. 1如果分區元數據信息中的DataBlockUsed的值等於TotalDataBlock的值,則將NextNewPosition中的每一個字節設為OxFF表示磁碟分區已滿,返回正確;否則繼續下 「■步 ο2. 5. 2. 2計算出緊挨校驗數據塊的第一個未使用字節的位置作為新數據塊的起始位置,計算公式為
NextNewPo s i t i on = NextNewPo s i t i on + DataBlockSize + VerifyDataBlockSize 2. 5. 3將分區元數據信息中的「最新分區修改時間」更新為當前時間。
2. 5. 4以最新分區元數據信息作為輸入,按照分區元數據校驗值計算方法重新計算分區元數據校驗值。2. 6將新的分區元數據信息寫入磁碟分區中,具體包括以下步驟
2.6. 1將分區元數據信息中的「元數據校驗值」、「已使用數據塊數量」、「新數據塊起始位置」和「最新分區修改時間」的值分別按順序寫入磁碟分區頭部的保留數據區域中的第0 到15位元組、第144到159位元組、第160到175位元組和第179到191位元組中(即為分區元數據信息的第1、第10、第11和第12個欄位)。2. 6. 2將分區元數據信息中的「元數據校驗值」、「已使用數據塊數量」、「新數據塊起始位置」和「最新分區修改時間」的值分別按順序寫入磁碟分區尾部的保留數據區域中的第0到15位元組、第144到159位元組、第160到175位元組和第179到191位元組中(即為分區元數據信息的第1、第10、第11和第12個欄位)。2. 7根據數據塊的寫入位置返回相應的索引號給用戶,具體步驟為
將該已使用數據塊數量DataBlockUsed的值作為數據塊索引號返回給用戶。3、存取數據——讀取數據塊根據用戶輸入的索引號,從磁碟分區中讀取數據塊並將數據塊內容返回給用戶,具體包括以下步驟
3.1讀取分區元數據信息,並校驗其完整性,詳細步驟與2. 1步驟相同。3.2導入用戶輸入的索引號num,並檢查其合法性,具體方法為 3. 2. 1如果索引號num大於0,則繼續,否則返回錯誤。3.2.2 比較索引號num與DataBlockUsed的值。如果num小於或者等於 DataBlockUsed,則判定索引號num合法,繼續下一步;否則判定索引號num不合法,返回錯誤。3.3根據索引號計算數據塊在磁碟分區中的位置(徹&(^08^1011),計算公式為 ReadPosition = MetaDataSize + (Num - 1) * (DataBlockSize +
VerifyDataBlockSize)
3.4在計算得到的位置處讀取數據塊,即
從3. 3步驟計算的結果ReadPosition位置處讀取DataBlockSize字節的數據作為用戶請求的數據塊到內存。3. 5並在該數據塊後讀取校驗數據塊,即
從(ReadPosition+DataBlockSize)位置處讀取 VerifyDataBlockSize 字節的數據作為數據塊的校驗數據塊到內存。3. 6根據校驗數據塊檢查數據塊的正確性;具體包括以下步驟
3. 6. 1根據讀取的數據塊,重新計算一新校驗數據塊(步驟與2. 3步驟相同); 3. 6. 2將新校驗數據塊與從磁碟分區中讀取的校驗數據塊逐字節進行比較,若兩者每一個字節都相同,則判定數據塊正確,否則判定數據塊不正確。3. 7)若數據塊正確,則將讀取的數據塊返回給用戶,否則返回錯誤。採用上述步驟,取消了傳統文件系統中所有不必要的功能,對用戶僅提供兩個接口 寫入數據塊和讀取數據塊,僅提供最基本的數據存取功能,用戶直接讀寫磁碟分區,這種極度簡化的設計使本發明在性能上做到了最優,能提高雲計算環境下的數據存取效率、 提高系統性能。
以上所述僅是本發明的優選實施方式,本發明的保護範圍並不僅局限於上述實施例,凡屬於本發明思路下的技術方案均屬於本發明的保護範圍。應當指出,對於本技術領域的普通技術人員來說,在不脫離本發明原理前提下的若干改進和潤飾,應視為本發明的保護範圍。
權利要求
1.一種雲計算環境下的海量數據存取方法,其特徵在於包括以下步驟1)格式化磁碟分區並在磁碟分區中設置一隨用戶操作實時更新的分區元數據信息;2)將經應用層中的數據管理系統分塊處理後的數據塊,逐塊依次寫入磁碟分區中並順序編索引號,用戶通過輸入所述索引號從磁碟分區中讀取對應的數據塊。
2.根據權利要求1所述的雲計算環境下的海量數據存取方法,其特徵在於,寫入數據塊時,在數據塊後存儲一相應的用於檢查數據塊正確性的校驗數據塊,所述校驗數據塊根據所述數據塊的內容計算得到且與數據塊一一對應。
3.根據權利要求2所述的雲計算環境下的海量數據存取方法,其特徵在於,所述分區元數據信息存儲在磁碟分區中的保留數據區域內,所述保留數據區域為兩塊,一塊位於所述磁碟分區的頭部,另一塊位於所述磁碟分區的尾部。
4.根據權利要求3所述的雲計算環境下的數據存取方法,其特徵在於,所述步驟1), 具體包括以下步驟1.1)確定分區元數據信息;1. 2)將分區元數據信息寫入磁碟分區頭部保留數據區域中;1.3)將分區元數據信息寫入磁碟分區尾部保留數據區域中,作為冗餘備份。
5.根據權利要求3所述的雲計算環境下的海量數據存取方法,其特徵在於,所述寫入數據塊,具體包括以下步驟2.1)讀取分區元數據信息,並校驗其完整性;2. 2)判斷磁碟分區是否已滿,若滿則返回「磁碟已滿」的錯誤,否則繼續; 2. 3)計算數據塊的校驗數據塊;2. 4)將數據塊寫入磁碟分區中,並將校驗數據塊寫於數據塊後;2. 5)更新分區元數據信息;2. 6)將新的分區元數據信息寫入磁碟分區中;2.7)根據數據塊的寫入位置返回相應的索引號。
6.根據權利要求5所述的雲計算環境下的海量數據存取方法,其特徵在於,所述計算數據塊的校驗數據塊,具體包括以下步驟將所述數據塊分為A個新的校驗塊,定義一校驗變量,並將所述A個新的校驗塊中的每個字節依次與所述校驗變量做異或運算,每個校驗塊算出1個字節的校驗值,共計算出A個字節的校驗值,即為數據塊的校驗數據塊,所述A 為校驗數據塊大小。
7.根據權利要求3所述的雲計算環境下的海量數據存取方法,其特徵在於,所述讀取數據塊,具體包括以下步驟3.1)從磁碟分區中讀取分區元數據信息,並校驗其完整性; 3. 2)導入用戶輸入的索引號,並檢查其合法性;3. 3)若所述索引號合法,則根據索引號計算數據塊在磁碟分區中的位置;3. 4)在計算得到的位置處讀取數據塊;3. 5)在該數據塊後讀取校驗數據塊;3. 6)根據校驗數據塊檢查數據塊的正確性;3. 7)若數據塊正確,則將讀取的數據塊返回給用戶,否則返回錯誤。
8.根據權利要求7所述的雲計算環境下的海量數據存取方法,其特徵在於,所述根據校驗數據塊檢查數據塊的正確性,具體包括以下步驟 3. 6. 1)根據讀取的數據塊,重新計算一新校驗數據塊;.3. 6. 2)將所述新校驗數據塊與從磁碟分區中讀取的校驗數據塊逐字節進行比較,若兩者相同,則判定數據塊正確,否則判定數據塊不正確。
9.根據權利要求1 8中任一項所述的雲計算環境下的海量數據存取方法,其特徵在於,所述分區元數據信息包括元數據校驗值、分區元數據大小、數據塊大小、校驗數據塊大小、數據塊總量、已使用數據塊數量和新數據塊起始位置。
全文摘要
本發明公開了一種雲計算環境下的海量數據存取方法,包括步驟格式化磁碟分區並在磁碟分區中設置一隨用戶操作實時更新的分區元數據信息;將經應用層中的數據管理系統分塊處理後的數據塊,逐塊依次寫入磁碟分區中並順序編索引號,用戶通過輸入所述索引號從磁碟分區中讀取對應的數據塊。本發明具有步驟極度簡化,能提高雲計算環境下的數據存取效率、減少系統內核資源的消耗和提高系統性能等優點。
文檔編號G06F17/30GK102184260SQ20111015327
公開日2011年9月14日 申請日期2011年6月9日 優先權日2011年6月9日
發明者付松齡, 何連躍, 吳慶波, 廖湘科, 戴華東, 李姍姍, 黃辰林 申請人:中國人民解放軍國防科學技術大學