高性能廉價磁盤冗余陣列raid機制的處理方法及裝置的制造方法
【專利摘要】本發(fā)明提供了一種高性能廉價磁盤冗余陣列RAID機制的處理方法及裝置,其中該方法包括:獲取需要寫輸入/輸出的一個或多個數(shù)據(jù)的模型;將一個或多個數(shù)據(jù)的模型與指定分條進行比較,將小于分條的數(shù)據(jù)寫入第一硬盤中,其中,第一硬盤用于緩存并合并小于分條的數(shù)據(jù)至滿分條;對第一硬盤中的滿足滿分條的數(shù)據(jù)執(zhí)行寫操作。通過本發(fā)明,解決了相關(guān)技術(shù)中基于RAID執(zhí)行寫數(shù)據(jù)的方式步驟冗余導(dǎo)致性能低的問題,進而達到了提高RAID執(zhí)行寫數(shù)據(jù)的效率的效果。
【專利說明】
高性能廉價磁盤冗余陣列RAID機制的處理方法及裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及存儲領(lǐng)域,具體而言,涉及一種高性能廉價磁盤冗余陣列RAID機制的處理方法及裝置。
【背景技術(shù)】
[0002]廉價磁盤冗余陣列(RedundantArray of Inexpensive Disks簡稱為RAID),RAID技術(shù)將一個個單獨的磁盤以不同的組合方式形成一個邏輯硬盤,從而提高了磁盤讀取的性能和數(shù)據(jù)的安全性,不同的組合方式用RAID級別來標識。
[0003]相關(guān)技術(shù)中應(yīng)用最廣的RAID5和RAID6在隨機寫輸出/輸出I/O模型下存在很大的性能瓶頸,而隨機寫I/O模型又是目前最常見的業(yè)務(wù)模型,以RAID5為例來描述一下RAID處理寫I/O的流程。
[0004]圖1是相關(guān)技術(shù)中基于RAID的硬盤分條示意圖,如圖1所示,RAID按照固定的大小將每個硬盤切分成不同大小的分條單元(如:64K、128K等),然后按順序?qū)⒂脖P的分條單元組成一個個分條,比如用戶寫入512Κ的數(shù)據(jù),RAID將512K的數(shù)據(jù)按64K依次存儲下圖的Dl?D8,但是RAID寫入到硬盤中的數(shù)據(jù)不僅僅只是用戶數(shù)據(jù),同時寫入硬盤的還有按分條計算出的校驗數(shù)據(jù)Pl和P2,校驗數(shù)據(jù)由用戶數(shù)據(jù)通過異或算法計算得出,如Pl = Dl異或D2異或D3異或D4。
[0005]可見,依據(jù)以上的RAID原理來看,用戶如果只是隨機的寫入一小塊數(shù)據(jù),如4K,那RAID的流程就復(fù)雜了,圖2是相關(guān)技術(shù)中隨機寫入數(shù)據(jù)的示意圖,隨機寫入64K數(shù)據(jù),如圖2所示,其中,該隨機寫入的方法步驟包括:
[0006]步驟S202:用戶隨機寫入4K數(shù)據(jù)Dl ’ ;
[0007]步驟S204:分別讀出硬盤中DI和PI的4K舊數(shù)據(jù);
[0008]步驟S206:計算出新的校驗數(shù)據(jù)P1’ ;
[0009]其中,由于Pl = Dl異或D2異或D3異或D4,所以Dl異或Pl = D2異或D3異或D4 ;ΡΓ = D1’異或D2異或D3異或D4 = D1’異或Dl異或Pl ;
[0010]步驟S208:寫入用戶新數(shù)據(jù)D1’和新校驗數(shù)據(jù)Ρ1’。
[0011]從上面的流程可以看出,相關(guān)技術(shù)中為了寫入一小塊數(shù)據(jù),需要額外多讀出兩塊數(shù)據(jù)。
[0012]針對相關(guān)技術(shù)中基于RAID執(zhí)行寫數(shù)據(jù)的方式步驟冗余導(dǎo)致性能低的問題,目前尚未提出有效的解決方案。
【發(fā)明內(nèi)容】
[0013]本發(fā)明的主要目的在于提供一種高性能廉價磁盤冗余陣列RAID機制的處理方法及裝置,以至少解決相關(guān)技術(shù)中基于RAID執(zhí)行寫數(shù)據(jù)的方式步驟冗余導(dǎo)致性能低的問題。
[0014]根據(jù)本發(fā)明的一個方面,提供了一種廉價磁盤冗余陣列RAID機制的處理方法,包括:獲取需要寫輸入/輸出的一個或多個數(shù)據(jù)的模型;將所述一個或多個數(shù)據(jù)的模型與指定分條進行比較,將小于所述指定分條的數(shù)據(jù)寫入第一硬盤中,其中,所述第一硬盤用于緩存并合并所述小于所述指定分條的數(shù)據(jù)至滿分條;對所述第一硬盤中的滿足滿分條的數(shù)據(jù)執(zhí)行寫操作。
[0015]進一步地,所述第一硬盤用于緩存并合并所述數(shù)據(jù)至滿分條包括:緩存所述一個或多個數(shù)據(jù)中模型小于所述指定分條的數(shù)據(jù)并合并所述小于所述指定分條的數(shù)據(jù)至大于等于所述指定分條。
[0016]進一步地,對所述第一硬盤中的滿足滿分條的數(shù)據(jù)執(zhí)行寫操作包括:將合并后的數(shù)據(jù)寫入第二硬盤中,其中,所述第二硬盤用于執(zhí)行輸入/輸出數(shù)據(jù)的滿分條寫操作。
[0017]進一步地,所述方法還包括:將所述一個或多個數(shù)據(jù)中模型大于等于所述指定分條的數(shù)據(jù)寫入所述第二硬盤中。
[0018]進一步地,所述第一硬盤為固態(tài)硬盤SSD,所述第二硬盤為串行連接的小型計算機系統(tǒng)接口 SAS盤或串行高級技術(shù)附件SATA盤。
[0019]根據(jù)本發(fā)明的另一個方面,提供了一種高性能廉價磁盤冗余陣列RAID機制的處理裝置,包括:獲取模塊,用于獲取需要寫輸入/輸出的一個或多個數(shù)據(jù)的模型;第一寫入模塊,用于將所述一個或多個數(shù)據(jù)的模型與指定分條進行比較,將小于所述指定分條的數(shù)據(jù)寫入第一硬盤中,其中,所述第一硬盤用于緩存并合并所述小于所述指定分條的數(shù)據(jù)至滿分條;執(zhí)行模塊,用于對所述第一硬盤中的滿足滿分條的數(shù)據(jù)執(zhí)行寫操作。
[0020]進一步地,所述第一寫入模塊,還用于緩存所述一個或多個數(shù)據(jù)中模型小于所述指定分條的數(shù)據(jù)并合并所述小于所述指定分條的數(shù)據(jù)至大于等于所述指定分條。
[0021]根據(jù)權(quán)利要求7所述的裝置,其特征在于,
[0022]所述執(zhí)行模塊,還用于將合并后的數(shù)據(jù)寫入第二硬盤中,其中,所述第二硬盤用于執(zhí)行輸入/輸出數(shù)據(jù)的滿分條寫操作。
[0023]根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述裝置還包括:
[0024]第二寫入模塊,用于將所述一個或多個數(shù)據(jù)中模型大于等于所述指定分條的數(shù)據(jù)寫入所述第二硬盤中。
[0025]進一步地,所述第一硬盤為固態(tài)硬盤SSD,所述第二硬盤為串行連接的小型計算機系統(tǒng)接口 SAS盤或串行高級技術(shù)附件SATA盤。
[0026]通過本發(fā)明,采用在獲取到需要執(zhí)行寫輸入/輸出(I/O)數(shù)據(jù)的模型之后,將一個或多個數(shù)據(jù)的模型與指定分條進行比較,將小于分條的數(shù)據(jù)寫入第一硬盤中,其中,第一硬盤用于緩存并合并小于分條的數(shù)據(jù)至滿分條,從而可以通過第一硬盤緩存和合并將小于指定分條的數(shù)據(jù)合并至滿分條,進而可以對數(shù)據(jù)執(zhí)行滿分條寫操作,這樣就可以直接計算校驗值,然后把數(shù)據(jù)寫入硬盤。通過本發(fā)明,解決了相關(guān)技術(shù)中基于RAID執(zhí)行寫數(shù)據(jù)的方式步驟冗余導(dǎo)致性能低的問題,進而達到了提高RAID執(zhí)行寫數(shù)據(jù)的效率的效果。
【附圖說明】
[0027]此處所說明的附圖用來提供對本發(fā)明的進一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。在附圖中:
[0028]圖1是相關(guān)技術(shù)中基于RAID的硬盤分條示意圖;
[0029]圖2是相關(guān)技術(shù)中隨機寫入數(shù)據(jù)的示意圖;
[0030]圖3是根據(jù)本發(fā)明實施例的高性能廉價磁盤冗余陣列RAID機制的處理方法流程圖;
[0031]圖4是根據(jù)本發(fā)明實施例的高性能廉價磁盤冗余陣列RAID機制的處理裝置結(jié)構(gòu)框圖;
[0032]圖5是根據(jù)本發(fā)明實施例的高性能廉價磁盤冗余陣列RAID機制的處理裝置可選結(jié)構(gòu)框圖;
[0033]圖6是根據(jù)本發(fā)明可選實施例的實現(xiàn)尚性能RAID機制的不意圖;
[0034]圖7是根據(jù)本發(fā)明可選實施例的系統(tǒng)讀請求處理方法的流程圖;
[0035]圖8是根據(jù)本發(fā)明可選實施例的系統(tǒng)寫請求處理方法的流程圖;
[0036]圖9是根據(jù)本發(fā)明可選實施例的I/O分流模塊處理I/O請求方法流程圖。
【具體實施方式】
[0037]需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。下面將參考附圖并結(jié)合實施例來詳細說明本發(fā)明。
[0038]本實施例提供了一種高性能廉價磁盤冗余陣列RAID機制的處理方法,圖3是根據(jù)本發(fā)明實施例的高性能廉價磁盤冗余陣列RAID機制的處理方法流程圖,如圖3所示,該方法的步驟包括:
[0039]步驟S302:獲取需要寫輸入/輸出(I/O)的一個或多個數(shù)據(jù)的模型;
[0040]步驟S304:將一個或多個數(shù)據(jù)的模型與指定分條進行比較,將小于指定分條的數(shù)據(jù)寫入第一硬盤中;
[0041]其中,第一硬盤用于緩存并合并小于指定分條的數(shù)據(jù)至滿分條;
[0042]步驟S306:對所述第一硬盤中的滿足滿分條的數(shù)據(jù)執(zhí)行寫操作。
[0043]通過本實施例,采用在獲取到需要執(zhí)行寫輸入/輸出I/O數(shù)據(jù)的模型之后,將一個或多個數(shù)據(jù)的模型與指定分條進行比較,將小于分條的數(shù)據(jù)寫入第一硬盤中,其中,第一硬盤用于緩存并合并小于分條的數(shù)據(jù)至滿分條,從而可以通過第一硬盤緩存和合并將小于指定分條的數(shù)據(jù)合并至滿分條,進而可以對數(shù)據(jù)執(zhí)行滿分條寫操作,這樣就可以直接計算校驗值,然后把數(shù)據(jù)寫入硬盤。通過本實施例,解決了相關(guān)技術(shù)中基于RAID執(zhí)行寫數(shù)據(jù)的方式步驟冗余導(dǎo)致性能低的問題,進而達到了提高RAID執(zhí)行寫數(shù)據(jù)的效率的效果。
[0044]對于本實施例中涉及到的第一硬盤用于緩存并合并數(shù)據(jù)至滿分條的方式,在本實施例的一個可選實施方式中可以通過如下方式來實現(xiàn):緩存一個或多個數(shù)據(jù)中模型小于指定分條的數(shù)據(jù)并合并該小于指定分條的I/o數(shù)據(jù)至大于等于指定分條。
[0045]而基于上述緩存并合并小I/O的操作,在本實施例的另一個可選實施方式中,在小于該指定分條的數(shù)據(jù)在該第一硬盤中緩存并合并至滿分條之后,再對合并后的數(shù)據(jù)在第二硬盤中進行滿分條寫操作。
[0046]而對于本實施例中涉及到的大于指定分條的數(shù)據(jù)將直接寫入第二硬盤中,在該第二硬盤中進行滿分條寫操作。
[0047]也就是說,本實施例采用了判斷該I/O的大小是否大于等于分條大小,即是否可以按照滿分條寫的方式下盤,如果I/O小于分條大小,將小于分條的I/O緩存并合并,在合并后的I/O大于等于分條時,再對合并后的數(shù)據(jù)進行滿分條寫入,保證了每次執(zhí)行寫入的數(shù)據(jù)都是能夠執(zhí)行滿分條的寫入。需要說明的是,上述方式僅僅是本發(fā)明的可選實施方式,并不夠成對本發(fā)明的限定。
[0048]對于本實施例涉及到的第一硬盤和第二硬盤,在不同的應(yīng)用場景中可以采用相應(yīng)的硬盤,可選地,在本實施例中第一硬盤為固態(tài)硬盤(Solid State Drives簡稱為SSD),第二硬盤為串行連接的小型計算機系統(tǒng)接口(Serial Attached SCSI簡稱為SAS)盤或串行高級技術(shù)附件(Serial Advanced Technology Attachment簡稱為SATA)盤。需要說明的是,上述僅僅是對第一硬盤和第二硬盤進行舉例說明,并不夠成對第一硬盤和第二硬盤選擇的限定。
[0049]也就是說,在本實施例的一個可選應(yīng)用場景中,對于小于分條的I/O數(shù)據(jù)將數(shù)據(jù)寫入RAIDlO固態(tài)硬盤SSD中,而不寫入該數(shù)據(jù)本應(yīng)該寫入的串行連接SCSI (SAS)盤或串行高級技術(shù)附件SATA盤中,待SSD中緩存合并為滿分條后,再由后臺線程寫入SAS盤或SATA盤。
[0050]在本實施例中還提供了一種高性能廉價磁盤冗余陣列RAID機制的處理裝置,該裝置用于實現(xiàn)上述實施例及可選實施方式,已經(jīng)進行過說明的不再贅述。如以下所使用的,術(shù)語“模塊”可以實現(xiàn)預(yù)定功能的軟件和/或硬件的組合。盡管以下實施例所描述的裝置較佳地以軟件來實現(xiàn),但是硬件,或者軟件和硬件的組合的實現(xiàn)也是可能并被構(gòu)想的。
[0051]圖4是根據(jù)本發(fā)明實施例的高性能廉價磁盤冗余陣列RAID機制的處理裝置結(jié)構(gòu)框圖,如圖4所示,該裝置包括:獲取模塊42,用于獲取需要寫輸入/輸出的一個或多個數(shù)據(jù)的模型;第一寫入模塊44,與獲取模塊42耦合連接,用于將一個或多個數(shù)據(jù)的模型與指定分條進行比較,將小于指定分條的數(shù)據(jù)寫入第一硬盤中,其中,第一硬盤用于緩存并合并小于指定分條的數(shù)據(jù)至滿分條;執(zhí)行模塊46,與第一寫入模塊44耦合連接,用于對第一硬盤中的滿足滿分條的數(shù)據(jù)執(zhí)行寫操。。
[0052]可選地,第一寫入模塊44,還用于緩存一個或多個數(shù)據(jù)中模型小于指定分條的數(shù)據(jù)并合并小于該指定分條的數(shù)據(jù)至大于等于指定分條。
[0053]可選地,執(zhí)行模塊46,還用于將合并后的數(shù)據(jù)寫入第二硬盤中,其中,第二硬盤用于執(zhí)行輸入/輸出數(shù)據(jù)的滿分條寫操作。
[0054]圖5是根據(jù)本發(fā)明實施例的高性能廉價磁盤冗余陣列RAID機制的處理裝置可選結(jié)構(gòu)框圖,如圖5所示,該裝置還包括:第二寫入模塊52,與獲取模塊42耦合連接,用于將一個或多個數(shù)據(jù)中模型大于等于指定分條的數(shù)據(jù)寫入第二硬盤中。
[0055]可選地,對于本實施例裝置中涉及到的第一硬盤可以為固態(tài)硬盤SSD,第二硬盤可以為串行連接的小型計算機系統(tǒng)接口 SAS盤或串行高級技術(shù)附件SATA盤。
[0056]下面結(jié)合本發(fā)明可選實施例,對本發(fā)明進行舉例說明;
[0057]相對于相關(guān)技術(shù)中的RAID實現(xiàn)方法,本可選實施例通過識別寫I/O的模型,并利用高性能的固態(tài)硬盤來緩存合并寫數(shù)據(jù),將隨機寫1的模型轉(zhuǎn)換為滿分條的大1模型,將隨機寫1的性能提升幾十倍,甚至達到順序?qū)憥挼男阅埽鉀Q了相關(guān)技術(shù)中RAID算法的性能瓶頸的問題。
[0058]圖6是根據(jù)本發(fā)明可選實施例的實現(xiàn)高性能RAID機制的示意圖,如圖6所示,在本可選實施例中,I/O分流模塊,用于識別寫I/O的模型,按照分條大小為粒度,判斷該I/O的大小是否大于等于分條大小,是否可以按照滿分條寫的方式下盤,如果I/O小于分條大小,那么則將數(shù)據(jù)寫入RAIDlO固態(tài)硬盤SSD中,而不寫入該數(shù)據(jù)本應(yīng)該寫入的串行連接SCSI盤SAS或的串行高級技術(shù)附件SATA盤中,待SSD中緩存合并為滿分條后,再由后臺線程寫入SAS盤或SATA盤。
[0059]RAIDlO SSD,用于緩存那些非滿分條的小1的存儲空間,由于SSD盤比SAS或SATA盤的隨機讀寫性能高出幾十倍?幾百倍,并且RAIDlO的隨機寫性能比RAID5和RAID6高出幾倍,所以通過RAIDlO SSD的緩存作用能解決現(xiàn)有RAID的性能問題。該方法的步驟包括:
[0060]步驟S602:識別寫I/O的模型;
[0061]步驟S604:判斷該I/O的大小是否大于等于分條大??;在I/O大于等于分條時執(zhí)行步驟S608 ;在I/O小于分條時,執(zhí)行步驟S606 ;
[0062]步驟S606:在RAIDlO SSD中緩存并合并小于分條的I/O ;在合并后的I/O大于等于分條后,執(zhí)行步驟S610;
[0063]步驟S608:將大于分條的I/O數(shù)據(jù),通過后臺線程寫入SAS盤或SATA盤。
[0064]下面通過本實施例的可選實施方式進行詳細說明;
[0065]可選實施方式一:用戶配置使用高性能RAID機制;
[0066]步驟S21:用戶選擇需要配置的VD或POOL ;
[0067]步驟S22:系統(tǒng)檢測該VD或POOL是否能配置該功能;
[0068]其中,要求VD或POOL對應(yīng)的RAID級別為非RAID1/10/0的其他RAID級別;
[0069]步驟S23:用戶選擇已存在的RAIDlO SSD緩存區(qū),如果希望新建,則用戶選擇需要添加的SSD盤,并創(chuàng)建出RAIDlO SSD緩存區(qū);
[0070]步驟S24:點擊確定,建立其VD或POOL和RAID10 SSD緩存區(qū)的對應(yīng)關(guān)系。
[0071]可選實施方式二:
[0072]圖7是根據(jù)本發(fā)明可選實施例的系統(tǒng)讀請求處理方法的流程圖,如圖7所示,該方法的步驟包括:
[0073]步驟S702:1/0分流模塊根據(jù)數(shù)據(jù)查找渡請求對應(yīng)的分條信息;在查找到分條信息時執(zhí)行步驟S704 ;在未找到分條信息時執(zhí)行步驟S706 ;
[0074]步驟S704:RAID SAS根據(jù)讀請求的地址信息,將讀請求下發(fā)到硬盤;之后執(zhí)行步驟 S712 ;
[0075]步驟S706:根據(jù)分條信息中記錄的數(shù)據(jù)記錄位圖來確定該請求餓哪些數(shù)據(jù)存放在RAIDlO SSD中,拆分出RAIDlO SSD存放數(shù)據(jù)讀請求;
[0076]步驟S708 =RAIDlO SSD根據(jù)讀請求的地址信息,將讀請求下發(fā)到硬盤,拆分出RAID5SAS存放數(shù)據(jù)的讀請求;
[0077]步驟S710:RAID SAS根據(jù)讀請求的地址信息,將讀請求下發(fā)到硬盤;
[0078]步驟S712:返回讀1/0成功結(jié)果及數(shù)據(jù);
[0079]步驟S714:1/0分流模塊合并SSD和SAS上讀出的數(shù)據(jù)。
[0080]可選實施方式三:
[0081]圖8是根據(jù)本發(fā)明可選實施例的系統(tǒng)寫請求處理方法的流程圖,如圖8所示,該方法的步驟包括:
[0082]步驟S802:1/0分流模塊根據(jù)1/0請求的RAID地址和長度,判斷該寫請求是否為滿分條寫;在判斷結(jié)果為是時執(zhí)行步驟S804 ;在判斷結(jié)果為否時,執(zhí)行步驟S806 ;
[0083]步驟S804:RAID SAS計算校驗,然后將數(shù)據(jù)寫入對應(yīng)的硬盤;之后執(zhí)行步驟S812 ;
[0084]步驟S806:1/0分流模塊根據(jù)元素查找該寫請求對應(yīng)的分條信息;
[0085]步驟S808:如果沒有查找到分條信息,則分配一個新的分條及其對應(yīng)的RAIDlOSSD硬盤空間根據(jù)分條信息記錄的RAID地址,將請求下發(fā)給配置的RAIDlO SSD處理;
[0086]步驟S810 =RAIDlO SSD根據(jù)鏡像關(guān)系,將數(shù)據(jù)寫入對應(yīng)的硬盤;
[0087]步驟S812:返回寫請求成功。
[0088]可選實施方式四:
[0089]圖9是根據(jù)本發(fā)明可選實施例的I/O分流模塊處理I/O請求方法流程圖,如圖9所示,該方法的步驟包括:
[0090]前臺處理:
[0091]步驟S902:1/0分流模塊根據(jù)寫I/O請求的RAID地址和長度,判斷出該寫請求為非滿分條寫;
[0092]步驟S904:查找該請求對應(yīng)的分條信息;
[0093]其中,依據(jù)RAID ID、地址和請求長度計算出唯一的分案索引;
[0094]步驟S906:如果查找到分條信息,分配新的分條信息結(jié)果;如果找到分條信息,則按已有的分條信息處理;
[0095]步驟S908:1/0分流模塊向RAIDlO SSD下發(fā)寫請求;
[0096]步驟S910 =RAIDlO SSD向I/O分流模塊返回寫成功;
[0097]步驟S912:修改分條信息中記錄臟數(shù)據(jù)的位圖;
[0098]其中,按扇區(qū)標記,I表示有臟數(shù)據(jù),O表示無臟數(shù)據(jù)。
[0099]后臺線程:包括場景一和場景二 ;
[0100]場景一:
[0101]步驟S914:后臺線程掃描分條信息,找出已湊齊分滿分條的分條;
[0102]步驟S916:1/0分流模塊向RAIDlO SSD下發(fā)讀請求;
[0103]步驟S918 =RAIDlO SSD向I/O分流模塊返回讀出的數(shù)據(jù);
[0104]步驟S920:1/0分流模塊向RAIDlO SAS下發(fā)寫請求;
[0105]步驟S922 =RAIDlO SAS向I/O分流模塊返回寫成功。
[0106]場景二:
[0107]步驟S924:1/0分流模塊確定如果臟數(shù)據(jù)站SSD空間的比例已超過高水位,則啟動強制將SSD中的數(shù)據(jù)寫入SAS ;
[0108]步驟S926:1/0分流模塊根據(jù)分條終端餓數(shù)據(jù)從躲到少的排序方式,一次將SSD中的數(shù)據(jù)寫入SAS ;
[0109]步驟S928:1/0分流模塊向RAIDlO SSD下發(fā)讀請求;
[0110]步驟S930:1/0分流模塊度該分條中,SSD上沒有的數(shù)據(jù);
[0111]步驟S932 =RAIDlO SSD向I/O分流模塊返回讀出的數(shù)據(jù);
[0112]步驟S934 =RAIDlO SAS向I/O分流模塊返回讀出的數(shù)據(jù);
[0113]步驟S936:1/0分流模塊合并從SSD和SAS上讀出的數(shù)據(jù);
[0114]步驟S938:1/0分流模塊向RAIDlO SAS下發(fā)寫請求;
[0115]步驟S940 =RAIDlO SAS向I/O分流模塊返回寫成功。
[0116]通過本本可選實施例,在RAIDlO系統(tǒng)中,用戶寫入一塊數(shù)據(jù)不需要計算校驗,直接采用寫兩份數(shù)據(jù)的方式來保證可靠性,相較于RAID5,隨機小塊寫的性能高出很多倍。
[0117]在另外一個實施例中,還提供了一種軟件,該軟件用于執(zhí)行上述實施例及優(yōu)選實施方式中描述的技術(shù)方案。
[0118]在另外一個實施例中,還提供了一種存儲介質(zhì),該存儲介質(zhì)中存儲有上述軟件,該存儲介質(zhì)包括但不限于:光盤、軟盤、硬盤、可擦寫存儲器等。
[0119]顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述本發(fā)明的各模塊或各步驟可以用通用的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
[0120]上述僅為本發(fā)明的可選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
【主權(quán)項】
1.一種高性能廉價磁盤冗余陣列RAID機制的處理方法,其特征在于,包括: 獲取需要寫輸入/輸出的一個或多個數(shù)據(jù)的模型; 將所述一個或多個數(shù)據(jù)的模型與指定分條進行比較,將小于所述指定分條的數(shù)據(jù)寫入第一硬盤中,其中,所述第一硬盤用于緩存并合并所述小于所述指定分條的數(shù)據(jù)至滿分條; 對所述第一硬盤中的滿足滿分條的數(shù)據(jù)執(zhí)行寫操作。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述第一硬盤用于緩存并合并所述數(shù)據(jù)至滿分條包括: 緩存所述一個或多個數(shù)據(jù)中模型小于所述指定分條的數(shù)據(jù)并合并所述小于所述指定分條的數(shù)據(jù)至大于等于所述指定分條。3.根據(jù)權(quán)利要求2所述的方法,其特征在于,對所述第一硬盤中的滿足滿分條的數(shù)據(jù)執(zhí)行寫操作包括: 將合并后的數(shù)據(jù)寫入第二硬盤中,其中,所述第二硬盤用于執(zhí)行輸入/輸出數(shù)據(jù)的滿分條寫操作。4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述方法還包括: 將所述一個或多個數(shù)據(jù)中模型大于等于所述指定分條的數(shù)據(jù)寫入所述第二硬盤中。5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述第一硬盤為固態(tài)硬盤SSD,所述第二硬盤為串行連接的小型計算機系統(tǒng)接口 SAS盤或串行高級技術(shù)附件SATA盤。6.一種高性能廉價磁盤冗余陣列RAID機制的處理裝置,其特征在于,包括: 獲取模塊,用于獲取需要寫輸入/輸出的一個或多個數(shù)據(jù)的模型; 第一寫入模塊,用于將所述一個或多個數(shù)據(jù)的模型與指定分條進行比較,將小于所述指定分條的數(shù)據(jù)寫入第一硬盤中,其中,所述第一硬盤用于緩存并合并所述小于所述指定分條的數(shù)據(jù)至滿分條; 執(zhí)行模塊,用于對所述第一硬盤中的滿足滿分條的數(shù)據(jù)執(zhí)行寫操作。7.根據(jù)權(quán)利要求6所述的裝置,其特征在于, 所述第一寫入模塊,還用于緩存所述一個或多個數(shù)據(jù)中模型小于所述指定分條的數(shù)據(jù)并合并所述小于所述指定分條的數(shù)據(jù)至大于等于所述指定分條。8.根據(jù)權(quán)利要求7所述的裝置,其特征在于, 所述執(zhí)行模塊,還用于將合并后的數(shù)據(jù)寫入第二硬盤中,其中,所述第二硬盤用于執(zhí)行輸入/輸出數(shù)據(jù)的滿分條寫操作。9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述裝置還包括: 第二寫入模塊,用于將所述一個或多個數(shù)據(jù)中模型大于等于所述指定分條的數(shù)據(jù)寫入所述第二硬盤中。10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述第一硬盤為固態(tài)硬盤SSD,所述第二硬盤為串行連接的小型計算機系統(tǒng)接口 SAS盤或串行高級技術(shù)附件SATA盤。
【文檔編號】G06F3/06GK106033320SQ201510106848
【公開日】2016年10月19日
【申請日】2015年3月11日
【發(fā)明人】舒坦
【申請人】中興通訊股份有限公司