本技術(shù)涉及計(jì)算機(jī),特別涉及一種數(shù)據(jù)處理方法、裝置、設(shè)備及介質(zhì)。
背景技術(shù):
1、針對raid磁盤進(jìn)行讀寫時(shí),同一操作請求可能需要操作多個(gè)條帶,操作多個(gè)條帶就可能需要對同一磁盤進(jìn)行反復(fù)讀寫。以8塊磁盤組成的raid的寫操作為例,一個(gè)寫操作需要操作條帶1和條帶2對應(yīng)的磁盤7的存儲(chǔ)空間,磁盤7被反復(fù)寫不僅會(huì)增加寫延時(shí),還會(huì)降低寫操作效率。
2、因此,如何降低跨條帶io的處理延遲,是本領(lǐng)域技術(shù)人員需要解決的問題。
技術(shù)實(shí)現(xiàn)思路
1、有鑒于此,本技術(shù)的目的在于提供一種數(shù)據(jù)處理方法、裝置、設(shè)備及介質(zhì),以降低跨條帶io的處理延遲。其具體方案如下:
2、第一方面,本技術(shù)提供了一種數(shù)據(jù)處理方法,包括:
3、接收連續(xù)的多個(gè)操作請求;
4、按照預(yù)設(shè)的聚合配置信息將所述多個(gè)操作請求中同一操作類型的操作請求聚合為操作組;
5、將所述操作組中處理同一磁盤的操作請求進(jìn)行合并,得到至少一個(gè)合并操作請求;
6、針對所述磁盤執(zhí)行所述合并操作請求,并執(zhí)行所述操作組中除所述合并操作請求之外的其他操作請求。
7、可選地,所述聚合配置信息包括:單操作組可容納的最大請求數(shù)目和最大數(shù)據(jù)量、是否允許同一操作請求跨條帶的標(biāo)志位;
8、相應(yīng)地,按照預(yù)設(shè)的聚合配置信息將所述多個(gè)操作請求中同一操作類型的操作請求聚合為操作組,包括:
9、獲取所述多個(gè)操作請求的操作類型標(biāo)記;
10、根據(jù)所述多個(gè)操作請求的操作類型標(biāo)記,在所述多個(gè)操作請求中選擇同一操作類型的操作請求,并以所述最大請求數(shù)目、所述最大數(shù)據(jù)量和所述標(biāo)志位為聚合約束,將所選操作請求聚合為所述操作組。
11、可選地,將所述操作組中處理同一磁盤的操作請求進(jìn)行合并,包括:
12、獲取所述多個(gè)操作請求的開始邏輯數(shù)據(jù)塊地址;
13、確定所述開始邏輯數(shù)據(jù)塊地址與磁盤的映射關(guān)系;
14、根據(jù)所述映射關(guān)系將映射同一磁盤的操作請求進(jìn)行合并。
15、可選地,針對所述磁盤執(zhí)行所述合并操作請求之前,還包括:
16、判斷所述合并操作請求的操作數(shù)據(jù)類型;
17、若所述操作數(shù)據(jù)類型均為數(shù)據(jù)塊,則針對所述磁盤執(zhí)行所述合并操作請求;
18、若所述操作數(shù)據(jù)類型包括校驗(yàn)塊,則在所述校驗(yàn)塊對應(yīng)的數(shù)據(jù)塊修改完成后,針對所述磁盤執(zhí)行所述合并操作請求。
19、可選地,針對所述磁盤執(zhí)行所述合并操作請求,包括:
20、將所述合并操作請求中的各個(gè)操作請求變更為各個(gè)微指令;
21、確定各個(gè)微指令的執(zhí)行方式;所述執(zhí)行方式包括rcw方式或rmw方式;
22、按照各個(gè)微指令的執(zhí)行方式,并行執(zhí)行各個(gè)微指令;
23、記錄各個(gè)微指令的執(zhí)行結(jié)果;
24、若各個(gè)微指令的執(zhí)行結(jié)果均為執(zhí)行完成,則確定所述合并操作請求執(zhí)行完成,并返回執(zhí)行成功消息至主機(jī);
25、若任意微指令的執(zhí)行結(jié)果為執(zhí)行失敗,則確定所述合并操作請求執(zhí)行失敗,并確定執(zhí)行失敗的微指令,對執(zhí)行失敗的微指令進(jìn)行重復(fù)執(zhí)行,記錄重復(fù)執(zhí)行次數(shù),若所述重復(fù)執(zhí)行次數(shù)超過預(yù)設(shè)閾值,則返回執(zhí)行失敗消息至主機(jī)。
26、可選地,還包括:
27、確定所述多個(gè)操作請求對應(yīng)的條帶;
28、針對各個(gè)條帶,先執(zhí)行相應(yīng)條帶對應(yīng)的操作數(shù)據(jù)類型為數(shù)據(jù)塊的操作請求,后執(zhí)行操作數(shù)據(jù)類型為校驗(yàn)塊的操作請求。
29、可選地,先執(zhí)行相應(yīng)條帶對應(yīng)的操作數(shù)據(jù)類型為數(shù)據(jù)塊的操作請求,后執(zhí)行操作數(shù)據(jù)類型為校驗(yàn)塊的操作請求,包括:
30、將同一條帶對應(yīng)的同一操作數(shù)據(jù)類型的操作請求進(jìn)行合并;
31、先執(zhí)行合并得到的操作數(shù)據(jù)類型為數(shù)據(jù)塊的操作請求,后執(zhí)行合并得到的操作數(shù)據(jù)類型為校驗(yàn)塊的操作請求。
32、第二方面,本技術(shù)提供了一種數(shù)據(jù)處理裝置,包括:
33、接收模塊,用于接收連續(xù)的多個(gè)操作請求;
34、聚合模塊,用于按照預(yù)設(shè)的聚合配置信息將所述多個(gè)操作請求中同一操作類型的操作請求聚合為操作組;
35、合并模塊,用于將所述操作組中處理同一磁盤的操作請求進(jìn)行合并,得到至少一個(gè)合并操作請求;
36、執(zhí)行模塊,用于針對所述磁盤執(zhí)行所述合并操作請求,并執(zhí)行所述操作組中除所述合并操作請求之外的其他操作請求。
37、可選地,所述聚合配置信息包括:單操作組可容納的最大請求數(shù)目和最大數(shù)據(jù)量、是否允許同一操作請求跨條帶的標(biāo)志位;相應(yīng)地,聚合模塊具體用于:
38、獲取所述多個(gè)操作請求的操作類型標(biāo)記;
39、根據(jù)所述多個(gè)操作請求的操作類型標(biāo)記,在所述多個(gè)操作請求中選擇同一操作類型的操作請求,并以所述最大請求數(shù)目、所述最大數(shù)據(jù)量和所述標(biāo)志位為聚合約束,將所選操作請求聚合為所述操作組。
40、可選地,合并模塊具體用于:
41、獲取所述多個(gè)操作請求的開始邏輯數(shù)據(jù)塊地址;
42、確定所述開始邏輯數(shù)據(jù)塊地址與磁盤的映射關(guān)系;
43、根據(jù)所述映射關(guān)系將映射同一磁盤的操作請求進(jìn)行合并。
44、可選地,還包括:
45、判斷模塊,用于判斷所述合并操作請求的操作數(shù)據(jù)類型;若所述操作數(shù)據(jù)類型均為數(shù)據(jù)塊,則針對所述磁盤執(zhí)行所述合并操作請求;若所述操作數(shù)據(jù)類型包括校驗(yàn)塊,則在所述校驗(yàn)塊對應(yīng)的數(shù)據(jù)塊修改完成后,針對所述磁盤執(zhí)行所述合并操作請求。
46、可選地,執(zhí)行模塊具體用于:
47、將所述合并操作請求中的各個(gè)操作請求變更為各個(gè)微指令;
48、確定各個(gè)微指令的執(zhí)行方式;所述執(zhí)行方式包括rcw方式或rmw方式;
49、按照各個(gè)微指令的執(zhí)行方式,并行執(zhí)行各個(gè)微指令;
50、記錄各個(gè)微指令的執(zhí)行結(jié)果;
51、若各個(gè)微指令的執(zhí)行結(jié)果均為執(zhí)行完成,則確定所述合并操作請求執(zhí)行完成,并返回執(zhí)行成功消息至主機(jī);
52、若任意微指令的執(zhí)行結(jié)果為執(zhí)行失敗,則確定所述合并操作請求執(zhí)行失敗,并確定執(zhí)行失敗的微指令,對執(zhí)行失敗的微指令進(jìn)行重復(fù)執(zhí)行,記錄重復(fù)執(zhí)行次數(shù),若所述重復(fù)執(zhí)行次數(shù)超過預(yù)設(shè)閾值,則返回執(zhí)行失敗消息至主機(jī)。
53、可選地,還包括:
54、單條帶操作模塊,用于確定所述多個(gè)操作請求對應(yīng)的條帶;針對各個(gè)條帶,先執(zhí)行相應(yīng)條帶對應(yīng)的操作數(shù)據(jù)類型為數(shù)據(jù)塊的操作請求,后執(zhí)行操作數(shù)據(jù)類型為校驗(yàn)塊的操作請求。
55、可選地,單條帶操作模塊具體用于:
56、將同一條帶對應(yīng)的同一操作數(shù)據(jù)類型的操作請求進(jìn)行合并;
57、先執(zhí)行合并得到的操作數(shù)據(jù)類型為數(shù)據(jù)塊的操作請求,后執(zhí)行合并得到的操作數(shù)據(jù)類型為校驗(yàn)塊的操作請求。
58、第三方面,本技術(shù)提供了一種電子設(shè)備,包括:
59、存儲(chǔ)器,用于存儲(chǔ)計(jì)算機(jī)程序;
60、處理器,用于執(zhí)行所述計(jì)算機(jī)程序,以實(shí)現(xiàn)前述公開的數(shù)據(jù)處理方法。
61、第四方面,本技術(shù)提供了一種非易失性存儲(chǔ)介質(zhì),用于保存計(jì)算機(jī)程序,其中,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)前述公開的數(shù)據(jù)處理方法。
62、第五方面,本技術(shù)提供了一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序/指令,該計(jì)算機(jī)程序/指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)前述公開的數(shù)據(jù)處理方法的步驟。
63、通過以上方案可知,本技術(shù)提供了一種數(shù)據(jù)處理方法,包括:接收連續(xù)的多個(gè)操作請求;按照預(yù)設(shè)的聚合配置信息將所述多個(gè)操作請求中同一操作類型的操作請求聚合為操作組;將所述操作組中處理同一磁盤的操作請求進(jìn)行合并,得到至少一個(gè)合并操作請求;針對所述磁盤執(zhí)行所述合并操作請求,并執(zhí)行所述操作組中除所述合并操作請求之外的其他操作請求。
64、可見,本技術(shù)針對連續(xù)的多個(gè)操作請求,能夠按照預(yù)設(shè)的聚合配置信息將多個(gè)操作請求中同一操作類型的操作請求聚合為操作組,然后將操作組中處理同一磁盤的操作請求進(jìn)行合并,其余操作請求仍保持獨(dú)立,最后針對前述同一磁盤執(zhí)行一次合并得到的操作請求,再執(zhí)行操作組中除合并操作請求之外的其他操作請求。由此不僅能夠減少請求數(shù)量,還能夠減少同一磁盤的操作次數(shù),避免跨條帶io對同一磁盤進(jìn)行反復(fù)讀寫,降低其讀寫延時(shí),提高讀寫操作效率。
65、相應(yīng)地,本技術(shù)提供的一種數(shù)據(jù)處理裝置、設(shè)備及介質(zhì),也同樣具有上述技術(shù)效果。