本技術(shù)涉及塊存儲領(lǐng)域,尤其涉及一種基于塊存儲的文件處理方法、系統(tǒng)及相關(guān)裝置。
背景技術(shù):
1、傳統(tǒng)基于塊存儲的文件存儲方式是,計算側(cè)在將文件通過網(wǎng)絡(luò)側(cè)發(fā)送至存儲設(shè)備之前,計算側(cè)會將文件切分為多個數(shù)據(jù)塊,網(wǎng)絡(luò)側(cè)接收到計算側(cè)發(fā)送的多個數(shù)據(jù)塊,將多個數(shù)據(jù)塊分散/隨機存儲到存儲集群中的多個存儲設(shè)備中。
2、這種存儲方式打破了文件的語義信息,導(dǎo)致無法高效地實現(xiàn)近數(shù)據(jù)處理的問題和文件語義問題。
技術(shù)實現(xiàn)思路
1、本技術(shù)提供了一種基于塊存儲的文件處理方法、系統(tǒng)及相關(guān)裝置,采用本技術(shù)的文件存儲方式,將歸屬于一個文件的多個數(shù)據(jù)塊存儲至一個存儲設(shè)備中,使得文件的語義信息沒有被破壞,便于后續(xù)高效地處理近數(shù)據(jù)處理的問題以及文件級語義問題。
2、第一方面,本技術(shù)提供了一種基于塊存儲的文件處理方法,從網(wǎng)絡(luò)設(shè)備側(cè)描述,所述方法包括:
3、網(wǎng)絡(luò)設(shè)備接收計算設(shè)備發(fā)送的第一寫請求,所述第一寫請求中包括多個數(shù)據(jù)塊,所述多個數(shù)據(jù)塊中的每個數(shù)據(jù)塊攜帶有塊標(biāo)識;
4、所述網(wǎng)絡(luò)設(shè)備根據(jù)元數(shù)據(jù),將所述多個數(shù)據(jù)塊中屬于第一文件的數(shù)據(jù)塊劃分至第一數(shù)據(jù)包中;其中,所述元數(shù)據(jù)包括所述多個數(shù)據(jù)塊中每個數(shù)據(jù)塊所屬的文件的標(biāo)識;
5、所述網(wǎng)絡(luò)設(shè)備向存儲集群中的第一存儲設(shè)備發(fā)送第二寫請求,所述第二寫請求中包括所述第一數(shù)據(jù)包,所述第二寫請求用于將所述第一數(shù)據(jù)包中的數(shù)據(jù)塊存儲到所述第一存儲設(shè)備上。
6、可以看到,將歸屬于一個文件的多個數(shù)據(jù)塊劃分至一個數(shù)據(jù)包中,然后將一個數(shù)據(jù)包中的各個數(shù)據(jù)塊存儲至一個存儲設(shè)備上,即,將歸屬于一個文件的各個數(shù)據(jù)塊存儲至一個存儲設(shè)備上。
7、采用本技術(shù)的這種存儲方式,后續(xù)計算設(shè)備需要對某個文件進(jìn)行某種處理操作時,計算設(shè)備可以向?qū)?yīng)的存儲設(shè)備或網(wǎng)絡(luò)設(shè)備下發(fā)處理請求,以便存儲設(shè)備根據(jù)處理請求對某個文件就近處理,或者通過網(wǎng)絡(luò)設(shè)備對存儲設(shè)備的處理結(jié)果做進(jìn)一步處理,并將最終處理結(jié)果直接返回計算設(shè)備。相比于將一個文件的多個數(shù)據(jù)塊分散存儲至多個存儲設(shè)備,當(dāng)需要對該文件進(jìn)行處理時,再從多個存儲設(shè)備中獲取歸屬于該文件的多個數(shù)據(jù)塊,然后將該文件發(fā)送至計算設(shè)備,再由計算設(shè)備對文件進(jìn)行處理,本技術(shù)方案節(jié)省了網(wǎng)絡(luò)帶寬的消耗,實現(xiàn)了高效地近數(shù)據(jù)處理,以及實現(xiàn)了基于文件語義信息的問題。傳統(tǒng)存儲方式無法實現(xiàn)近數(shù)據(jù)處理問題,因為傳統(tǒng)存儲方式中該文件是分散存儲在多個存儲設(shè)備上的,無法通過某一個存儲設(shè)備實現(xiàn)近數(shù)據(jù)處理問題以及基于文件語義問題。
8、基于第一方面,在可能的實現(xiàn)方式中,在所述網(wǎng)絡(luò)設(shè)備根據(jù)元數(shù)據(jù),將所述多個數(shù)據(jù)塊中屬于第一文件的數(shù)據(jù)塊劃分至第一數(shù)據(jù)包中之前,所述方法還包括:
9、所述網(wǎng)絡(luò)設(shè)備從元數(shù)據(jù)服務(wù)器中獲取所述元數(shù)據(jù)。
10、可以理解,當(dāng)計算側(cè)將數(shù)據(jù)和元數(shù)據(jù)分開存儲時,網(wǎng)絡(luò)設(shè)備可從元數(shù)據(jù)服務(wù)器中獲取元數(shù)據(jù)。
11、基于第一方面,在可能的實現(xiàn)方式中,所述第一寫請求中包括所述元數(shù)據(jù)。
12、可以理解,當(dāng)計算側(cè)將數(shù)據(jù)和元數(shù)據(jù)存儲在一起時,元數(shù)據(jù)可以直接攜帶在第一寫請求中。
13、基于第一方面,在可能的實現(xiàn)方式中,所述方法還包括:
14、所述網(wǎng)絡(luò)設(shè)備根據(jù)所述元數(shù)據(jù),將所述多個數(shù)據(jù)塊中屬于第二文件的數(shù)據(jù)塊劃分至第二數(shù)據(jù)包中;
15、所述網(wǎng)絡(luò)設(shè)備從所述存儲集群中確定用于存儲所述第二數(shù)據(jù)包的第二存儲設(shè)備;
16、所述網(wǎng)絡(luò)設(shè)備向所述第二存儲設(shè)備發(fā)送第三寫請求,所述寫請求中包括所述第二數(shù)據(jù)包,所述第三寫請求用于將所述第二數(shù)據(jù)包中的數(shù)據(jù)塊存儲到所述第二存儲設(shè)備上。
17、在第一寫請求中的多個數(shù)據(jù)塊既包括歸屬于第一文件的數(shù)據(jù)塊,又包括歸屬于第二文件的數(shù)據(jù)塊的情況下,網(wǎng)絡(luò)設(shè)備將歸屬于不同文件的數(shù)據(jù)塊劃分至不同的數(shù)據(jù)包中,使得歸屬于同一個文件的數(shù)據(jù)塊劃分至一個數(shù)據(jù)包中,并將一個數(shù)據(jù)包存儲至存儲集群中的一個存儲設(shè)備上。需要說明的是,可以是,第一數(shù)據(jù)包存儲至第一存儲設(shè)備上,第二數(shù)據(jù)包存儲至第二存儲設(shè)備上;也可以是,第一數(shù)據(jù)包和第二數(shù)據(jù)包均存儲至第一存儲設(shè)備或第二存儲設(shè)備上。只要歸屬于一個文件的多個數(shù)據(jù)塊(一個數(shù)據(jù)包)存儲至存儲集群中的一個存儲設(shè)備上即可。
18、基于第一方面,在可能的實現(xiàn)方式中,所述方法還包括:
19、所述網(wǎng)絡(luò)設(shè)備記錄了第一對應(yīng)關(guān)系,所述第一對應(yīng)關(guān)系用于指示所述第一文件的標(biāo)識與所述第一存儲設(shè)備的對應(yīng)關(guān)系。
20、基于第一方面,在可能的實現(xiàn)方式中,所述方法還包括:
21、所述網(wǎng)絡(luò)設(shè)備接收所述計算設(shè)備發(fā)送的第一處理請求,所述第一處理請求中包括所述第一文件的標(biāo)識和第一操作的標(biāo)識;
22、所述網(wǎng)絡(luò)設(shè)備根據(jù)所述第一對應(yīng)關(guān)系,確定存儲所述第一文件的所述第一存儲設(shè)備;
23、所述網(wǎng)絡(luò)設(shè)備向所述第一存儲設(shè)備發(fā)送第二處理請求,所述第二處理請求用于指示對所述第一文件執(zhí)行所述第一操作;
24、所述網(wǎng)絡(luò)設(shè)備從所述第一存儲設(shè)備獲取所述第二處理請求對應(yīng)的第一處理結(jié)果;
25、所述網(wǎng)絡(luò)設(shè)備將所述第一處理結(jié)果返回到所述計算設(shè)備。
26、相比于將整個第一文件從多個存儲設(shè)備中讀取出來,然后發(fā)送至計算設(shè)備,由計算設(shè)備對第一文件進(jìn)行處理,本技術(shù)所述方法,實現(xiàn)了第一存儲設(shè)備根據(jù)第二處理請求對第一文件執(zhí)行第一操作,獲得第一處理結(jié)果,實現(xiàn)了近數(shù)據(jù)處理,第一存儲設(shè)備只需將第一處理結(jié)果返回至計算設(shè)備即可。采用本技術(shù)所述方法降低了帶寬的消耗,實現(xiàn)了近數(shù)據(jù)處理的高效計算,同時本技術(shù)所述方法便于處理文件級語義問題。
27、基于第一方面,在可能的實現(xiàn)方式中,所述第一處理請求中還包括第二文件的標(biāo)識,所述方法還包括:
28、所述網(wǎng)絡(luò)設(shè)備根據(jù)所述第一對應(yīng)關(guān)系,確定存儲所述第二文件的第二存儲設(shè)備;
29、所述網(wǎng)絡(luò)設(shè)備向所述第二存儲設(shè)備發(fā)送第三處理請求,所述第三處理請求用于指示對所述第二文件執(zhí)行所述第一操作;
30、所述網(wǎng)絡(luò)設(shè)備從所述第二存儲設(shè)備獲取所述第三處理請求對應(yīng)的第二處理結(jié)果;
31、所述網(wǎng)絡(luò)設(shè)備對所述第一處理結(jié)果和所述第二處理結(jié)果進(jìn)行匯總后返回到所述計算設(shè)備。
32、在一種實現(xiàn)方式中,計算設(shè)備需要同時對多個文件進(jìn)行處理,以同時對兩個文件進(jìn)行處理為例,計算設(shè)備發(fā)送第一處理請求,第一處理請求中可以包括第一文件的標(biāo)識、第二文件的標(biāo)識和第一操作的標(biāo)識,網(wǎng)絡(luò)設(shè)備接收到第一處理請求,確定存儲第一文件的為第一存儲設(shè)備、存儲第二文件的為第二存儲設(shè)備,則網(wǎng)絡(luò)設(shè)備將第二處理請求發(fā)送至第一存儲設(shè)備,將第三處理請求發(fā)送至第二存儲設(shè)備,第二處理請求中包括第一文件的標(biāo)識和第一操作的標(biāo)識,第三處理請求中包括第二文件的標(biāo)識和第一操作的標(biāo)識,則第一存儲設(shè)備根據(jù)第二處理請求,對第一文件執(zhí)行第一操作,獲得第一處理結(jié)果,實現(xiàn)了近數(shù)據(jù)處理,同理,第二存儲設(shè)備根據(jù)第三處理請求,對第二文件執(zhí)行第一操作,獲得第二處理結(jié)果,實現(xiàn)了近數(shù)據(jù)處理。網(wǎng)絡(luò)設(shè)備從第一存儲設(shè)備獲取第一處理結(jié)果,從第二存儲設(shè)備獲取第二處理結(jié)果,然后對第一處理結(jié)果和第二處理結(jié)果進(jìn)行匯總后返回到計算設(shè)備。
33、1)本技術(shù),無需將第一文件和第二文件分別讀取到計算設(shè)備側(cè),由計算設(shè)備側(cè)根據(jù)第一文件和第二文件進(jìn)行計算,而是直接由第一存儲設(shè)備和第二存儲設(shè)備執(zhí)行近數(shù)據(jù)處理,只需將最終的結(jié)果返回至計算設(shè)備即可,降低了帶寬的消耗,實現(xiàn)了近數(shù)據(jù)處理的高效計算,同時本技術(shù)所述方法便于處理文件級語義問題。2)另外,需要說明的是,本技術(shù)是通過一個處理請求實現(xiàn)對兩個文件的處理計算,但實際應(yīng)用中,可以通過一個處理請求實現(xiàn)對更多數(shù)量的文件的處理計算。3)相比于計算設(shè)備發(fā)送多個讀請求,通過多個讀請求將多個文件讀取到計算設(shè)備,由計算設(shè)備對多個文件進(jìn)行計算,本技術(shù)所述方法實現(xiàn)了多個存儲設(shè)備同時進(jìn)行近數(shù)據(jù)處理計算,通過網(wǎng)絡(luò)設(shè)備對多個近數(shù)據(jù)處理的結(jié)果進(jìn)行匯總,返回至計算設(shè)備,大大降低了帶寬的消耗,實現(xiàn)了高效地計算,提高了文件處理效率?;诘谝环矫妫诳赡艿膶崿F(xiàn)方式中,所述第一操作包括讀操作、字符統(tǒng)計、字符篩選、字符排序中的任意一種或多種。
34、可以理解,第一操作包括讀操作,讀操作屬于處理操作中的一種。
35、第二方面,本技術(shù)提供了一種基于塊存儲的文件處理方法,從第一存儲設(shè)備側(cè)描述,所述方法包括:
36、存儲集群中的第一存儲設(shè)備接收網(wǎng)絡(luò)設(shè)備發(fā)送的第二寫請求,所述第二寫請求中包括第一數(shù)據(jù)包,所述第一數(shù)據(jù)包中包括歸屬于第一文件的數(shù)據(jù)塊,所述第二寫請求用于將所述第一數(shù)據(jù)包中的數(shù)據(jù)塊存儲到所述第一存儲設(shè)備上;
37、將所述第二寫請求中所述第一數(shù)據(jù)包中的數(shù)據(jù)塊存儲至所述第一存儲設(shè)備上。
38、可以看到,第一數(shù)據(jù)包中包括的數(shù)據(jù)塊均是歸屬于第一文件的,第一存儲設(shè)備將歸屬于第一文件的各個數(shù)據(jù)塊存儲至第一存儲設(shè)備上,便于后續(xù)第一存儲設(shè)備對第一文件進(jìn)行近數(shù)據(jù)處理計算和文件級語義問題的計算。
39、基于第二方面,在可能的實現(xiàn)方式中,所述方法還包括:所述第一存儲設(shè)備記錄第二對應(yīng)關(guān)系,所述第二對應(yīng)關(guān)系用于指示所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊的塊標(biāo)識與所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊在所述第一存儲設(shè)備中的存儲位置之間的對應(yīng)關(guān)系。
40、基于第二方面,在可能的實現(xiàn)方式中,所述方法還包括:
41、所述第一存儲設(shè)備接收所述網(wǎng)絡(luò)設(shè)備發(fā)送的第二處理請求,所述第二處理請求用于指示對所述第一文件執(zhí)行所述第一操作;
42、所述第一存儲設(shè)備根據(jù)所述第二處理請求,對所述第一文件執(zhí)行所述第一操作獲得所述第一處理結(jié)果;
43、所述第一存儲設(shè)備將所述第一處理結(jié)果發(fā)送至所述網(wǎng)絡(luò)設(shè)備。
44、可以看到,本技術(shù)實施例,實現(xiàn)了第一存儲設(shè)備的近數(shù)據(jù)處理計算。
45、基于第二方面,在可能的實現(xiàn)方式中,所述第二處理請求中包括所述第一文件的標(biāo)識和所述第一操作的標(biāo)識;
46、所述第一存儲設(shè)備根據(jù)所述第一文件的標(biāo)識確定所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識;
47、所述第一存儲設(shè)備根據(jù)所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識以及所述第二對應(yīng)關(guān)系獲取所述第一文件的數(shù)據(jù)塊,并對所述第一文件的數(shù)據(jù)塊執(zhí)行所述第一操作得到所述第一處理結(jié)果。
48、基于第二方面,在可能的實現(xiàn)方式中,所述網(wǎng)絡(luò)設(shè)備記錄了第三對應(yīng)關(guān)系,所述第三對應(yīng)關(guān)系用于指示所述第一文件的標(biāo)識與所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊的塊標(biāo)識之間的對應(yīng)關(guān)系;
49、所述第一存儲設(shè)備根據(jù)所述第一文件的標(biāo)識確定所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識,包括:
50、所述第一存儲設(shè)備向所述網(wǎng)絡(luò)設(shè)備發(fā)送獲取請求,所述獲取請求包括所述第一文件的標(biāo)識;
51、所述第一存儲設(shè)備接收所述網(wǎng)絡(luò)設(shè)備基于所述獲取請求發(fā)送的所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識,所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識是由所述網(wǎng)絡(luò)設(shè)備根據(jù)所述第三對應(yīng)關(guān)系確定的。
52、基于第二方面,在可能的實現(xiàn)方式中,所述第一數(shù)據(jù)包攜帶有所述第一文件的標(biāo)識,
53、所述第一存儲設(shè)備根據(jù)所述第一文件的標(biāo)識記錄第三對應(yīng)關(guān)系,所述第三對應(yīng)關(guān)系用于指示所述第一文件的標(biāo)識與所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊的塊標(biāo)識之間的對應(yīng)關(guān)系;
54、所述第一存儲設(shè)備根據(jù)所述第一文件的標(biāo)識確定所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識,包括:
55、所述第一存儲設(shè)備根據(jù)本地記錄的所述第三對應(yīng)關(guān)系和所述第一文件的標(biāo)識確定所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識。
56、基于第二方面,在可能的實現(xiàn)方式中,所述第二處理請求中包括所述第一文件的多個數(shù)據(jù)塊中每個數(shù)據(jù)塊的塊標(biāo)識以及所述第一操作的標(biāo)識;所述每個數(shù)據(jù)塊的塊標(biāo)識由所述網(wǎng)絡(luò)設(shè)備根據(jù)記錄的第三對應(yīng)關(guān)系確定;所述第三對應(yīng)關(guān)系用于指示所述第一文件的標(biāo)識與所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊的塊標(biāo)識之間的對應(yīng)關(guān)系;
57、所述第一存儲設(shè)備根據(jù)所述第二對應(yīng)關(guān)系獲取所述第一文件的多個數(shù)據(jù)塊,并對所述第一文件的數(shù)據(jù)塊執(zhí)行所述第一操作得到所述第一處理結(jié)果。
58、基于第二方面,在可能的實現(xiàn)方式中,所述第一操作包括讀操作、字符統(tǒng)計、字符篩選、字符排序中的任意一種或多種。
59、可以理解,第一操作包括讀操作,讀操作屬于處理操作中的一種。
60、第三方面,本技術(shù)提供了一種基于塊存儲的文件處理系統(tǒng),所述系統(tǒng)包括網(wǎng)絡(luò)設(shè)備和存儲集群,所述存儲集群中至少包括第一存儲設(shè)備,其中,
61、所述網(wǎng)絡(luò)設(shè)備用于:接收計算設(shè)備發(fā)送的第一寫請求,所述第一寫請求中包括多個數(shù)據(jù)塊,所述多個數(shù)據(jù)塊中的每個數(shù)據(jù)塊攜帶有塊標(biāo)識;根據(jù)元數(shù)據(jù),將所述多個數(shù)據(jù)塊中屬于第一文件的數(shù)據(jù)塊劃分至第一數(shù)據(jù)包中;其中,所述元數(shù)據(jù)包括所述多個數(shù)據(jù)塊中每個數(shù)據(jù)塊所屬的文件的標(biāo)識;向存儲集群中的第一存儲設(shè)備發(fā)送第二寫請求,所述第二寫請求中包括所述第一數(shù)據(jù)包,所述第二寫請求用于將所述第一數(shù)據(jù)包中的數(shù)據(jù)塊存儲到所述第一存儲設(shè)備上;
62、所述第一存儲設(shè)備用于:接收所述網(wǎng)絡(luò)設(shè)備發(fā)送的所述第二寫請求,將所述第二寫請求中所述第一數(shù)據(jù)包中的數(shù)據(jù)塊存儲至所述第一存儲設(shè)備上。
63、基于第三方面,在可能的實現(xiàn)方式中,所述網(wǎng)絡(luò)設(shè)備還用于:根據(jù)所述元數(shù)據(jù),將所述多個數(shù)據(jù)塊中屬于第二文件的數(shù)據(jù)塊劃分至第二數(shù)據(jù)包中;從所述存儲集群中確定用于存儲所述第二數(shù)據(jù)包的第二存儲設(shè)備;向所述第二存儲設(shè)備發(fā)送第三寫請求,所述寫請求中包括所述第二數(shù)據(jù)包,所述第三寫請求用于將所述第二數(shù)據(jù)包中的數(shù)據(jù)塊存儲到所述第二存儲設(shè)備上;所述第二存儲設(shè)備還用于:接收所述網(wǎng)絡(luò)設(shè)備發(fā)送的所述第三寫請求,將所述第三寫請求中所述第二數(shù)據(jù)包中的數(shù)據(jù)塊存儲至所述第二存儲設(shè)備上。
64、基于第三方面,在可能的實現(xiàn)方式中,所述網(wǎng)絡(luò)設(shè)備還用于,記錄第一對應(yīng)關(guān)系,所述第一對應(yīng)關(guān)系用于指示所述第一文件的標(biāo)識與所述第一存儲設(shè)備的對應(yīng)關(guān)系。
65、基于第三方面,在可能的實現(xiàn)方式中,所述網(wǎng)絡(luò)設(shè)備還用于:接收所述計算設(shè)備發(fā)送的第一處理請求,所述第一處理請求中包括所述第一文件的標(biāo)識和第一操作的標(biāo)識;根據(jù)所述第一對應(yīng)關(guān)系,確定存儲所述第一文件的所述第一存儲設(shè)備;向所述第一存儲設(shè)備發(fā)送第二處理請求,所述第二處理請求用于指示對所述第一文件執(zhí)行所述第一操作;所述第一存儲設(shè)備還用于:根據(jù)所述第二處理請求,對所述第一文件執(zhí)行所述第一操作獲得所述第一處理結(jié)果;將所述第一處理結(jié)果發(fā)送至所述網(wǎng)絡(luò)設(shè)備;所述網(wǎng)絡(luò)設(shè)備還用于:將所述第一處理結(jié)果返回到所述計算設(shè)備。
66、基于第三方面,在可能的實現(xiàn)方式中,所述第二處理請求中包括所述第一文件的標(biāo)識和所述第一操作的標(biāo)識;所述第一存儲設(shè)備還用于:根據(jù)所述第一文件的標(biāo)識確定所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識;根據(jù)所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識以及第二對應(yīng)關(guān)系獲取所述第一文件的數(shù)據(jù)塊,并對所述第一文件的數(shù)據(jù)塊執(zhí)行所述第一操作得到所述第一處理結(jié)果;所述第二對應(yīng)關(guān)系用于指示所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊的塊標(biāo)識與所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊在所述第一存儲設(shè)備中的存儲位置之間的對應(yīng)關(guān)系。
67、基于第三方面,在可能的實現(xiàn)方式中,所述網(wǎng)絡(luò)設(shè)備用于記錄了第三對應(yīng)關(guān)系,所述第三對應(yīng)關(guān)系用于指示所述第一文件的標(biāo)識與所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊的塊標(biāo)識之間的對應(yīng)關(guān)系;所述第一存儲設(shè)備用于,向所述網(wǎng)絡(luò)設(shè)備發(fā)送獲取請求,所述獲取請求包括所述第一文件的標(biāo)識;所述網(wǎng)絡(luò)設(shè)備用于,響應(yīng)于所述獲取請求,根據(jù)所述第三對應(yīng)關(guān)系確定所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識,并將所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識發(fā)送給所述第一存儲設(shè)備。
68、基于第三方面,在可能的實現(xiàn)方式中,所述第一數(shù)據(jù)包攜帶有所述第一文件的標(biāo)識,所述第一存儲設(shè)備記錄了第三對應(yīng)關(guān)系,所述第三對應(yīng)關(guān)系用于指示所述第一文件的標(biāo)識與所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊的塊標(biāo)識之間的對應(yīng)關(guān)系;所述第一存儲設(shè)備用于,根據(jù)本地記錄的所述第三對應(yīng)關(guān)系和所述第一文件的標(biāo)識確定所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識。
69、基于第三方面,在可能的實現(xiàn)方式中,所述第二處理請求中包括所述第一文件的多個數(shù)據(jù)塊中每個數(shù)據(jù)塊的塊標(biāo)識以及所述第一操作的標(biāo)識;所述每個數(shù)據(jù)塊的塊標(biāo)識由所述網(wǎng)絡(luò)設(shè)備根據(jù)記錄的第三對應(yīng)關(guān)系確定;所述第三對應(yīng)關(guān)系用于指示所述第一文件的標(biāo)識與所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊的塊標(biāo)識之間的對應(yīng)關(guān)系;所述第一存儲設(shè)備用于:根據(jù)第二對應(yīng)關(guān)系獲取所述第一文件的多個數(shù)據(jù)塊,并對所述第一文件的數(shù)據(jù)塊執(zhí)行所述第一操作得到所述第一處理結(jié)果;所述第二對應(yīng)關(guān)系用于指示所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊的塊標(biāo)識與所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊在所述第一存儲設(shè)備中的存儲位置之間的對應(yīng)關(guān)系。
70、基于第三方面,在可能的實現(xiàn)方式中,所述第一處理請求中還包括第二文件的標(biāo)識,所述網(wǎng)絡(luò)設(shè)備還用于:根據(jù)所述第一對應(yīng)關(guān)系,確定存儲所述第二文件的第二存儲設(shè)備;向所述第二存儲設(shè)備發(fā)送第三處理請求,所述第三處理請求用于指示對所述第二文件執(zhí)行所述第一操作;從所述第二存儲設(shè)備獲取所述第三處理請求對應(yīng)的第二處理結(jié)果;對所述第一處理結(jié)果和所述第二處理結(jié)果進(jìn)行匯總后返回到所述計算設(shè)備。
71、基于第三方面,在可能的實現(xiàn)方式中,所述第一操作包括讀操作、字符統(tǒng)計、字符篩選、字符排序中的任意一種或多種。
72、第四方面,本技術(shù)提供了一種網(wǎng)絡(luò)設(shè)備,所述網(wǎng)絡(luò)設(shè)備包括:
73、接收模塊,用于接收計算設(shè)備發(fā)送的第一寫請求,所述第一寫請求中包括多個數(shù)據(jù)塊,所述多個數(shù)據(jù)塊中的每個數(shù)據(jù)塊攜帶有塊標(biāo)識;
74、劃分模塊,用于根據(jù)元數(shù)據(jù),將所述多個數(shù)據(jù)塊中屬于第一文件的數(shù)據(jù)塊劃分至第一數(shù)據(jù)包中;其中,所述元數(shù)據(jù)包括所述多個數(shù)據(jù)塊中每個數(shù)據(jù)塊所屬的文件的標(biāo)識;
75、發(fā)送模塊,用于向存儲集群中的第一存儲設(shè)備發(fā)送第二寫請求,所述第二寫請求中包括所述第一數(shù)據(jù)包,所述第二寫請求用于將所述第一數(shù)據(jù)包中的數(shù)據(jù)塊存儲到所述第一存儲設(shè)備上。
76、基于第四方面,在可能的實現(xiàn)方式中,所述接收模塊還用于:從元數(shù)據(jù)服務(wù)器中獲取所述元數(shù)據(jù)。
77、基于第四方面,在可能的實現(xiàn)方式中,所述第一寫請求中包括所述元數(shù)據(jù)。
78、基于第四方面,在可能的實現(xiàn)方式中,
79、所述劃分模塊還用于,根據(jù)所述元數(shù)據(jù),將所述多個數(shù)據(jù)塊中屬于第二文件的數(shù)據(jù)塊劃分至第二數(shù)據(jù)包中;
80、確定模塊,用于從所述存儲集群中確定用于存儲所述第二數(shù)據(jù)包的第二存儲設(shè)備;
81、所述發(fā)送模塊還用于,向所述第二存儲設(shè)備發(fā)送第三寫請求,所述寫請求中包括所述第二數(shù)據(jù)包,所述第三寫請求用于將所述第二數(shù)據(jù)包中的數(shù)據(jù)塊存儲到所述第二存儲設(shè)備上。
82、基于第四方面,在可能的實現(xiàn)方式中,所述網(wǎng)絡(luò)設(shè)備還包括:
83、記錄模塊,用于記錄了第一對應(yīng)關(guān)系,所述第一對應(yīng)關(guān)系用于指示所述第一文件的標(biāo)識與所述第一存儲設(shè)備的對應(yīng)關(guān)系。
84、基于第四方面,在可能的實現(xiàn)方式中,
85、所述接收模塊還用于,接收所述計算設(shè)備發(fā)送的第一處理請求,所述第一處理請求中包括所述第一文件的標(biāo)識和第一操作的標(biāo)識;
86、所述確定模塊還用于,根據(jù)所述第一對應(yīng)關(guān)系,確定存儲所述第一文件的所述第一存儲設(shè)備;
87、所述發(fā)送模塊還用于,向所述第一存儲設(shè)備發(fā)送所述第二處理請求;
88、所述接收模塊還用于,從所述第一存儲設(shè)備獲取所述第二處理請求對應(yīng)的第一處理結(jié)果;
89、所述發(fā)送模塊還用于,將所述第一處理結(jié)果返回到所述計算設(shè)備。
90、基于第四方面,在可能的實現(xiàn)方式中,所述第一處理請求中還包括第二文件的標(biāo)識,
91、所述確定模塊還用于,根據(jù)所述第一對應(yīng)關(guān)系,確定存儲所述第二文件的第二存儲設(shè)備;
92、所述發(fā)送模塊還用于,向所述第二存儲設(shè)備發(fā)送第三處理請求,所述第三處理請求用于指示對所述第二文件執(zhí)行所述第一操作;
93、所述接收模塊還用于,從所述第二存儲設(shè)備獲取所述第三處理請求對應(yīng)的第二處理結(jié)果;
94、所述發(fā)送模塊還用于,對所述第一處理結(jié)果和所述第二處理結(jié)果進(jìn)行匯總后返回到所述計算設(shè)備。
95、基于第四方面,在可能的實現(xiàn)方式中,所述第一操作包括讀操作、字符統(tǒng)計、字符篩選、字符排序中的任意一種或多種。
96、第四方面的各個功能模塊用于實現(xiàn)上述第一方面以及第一方面的任意一種可能的實現(xiàn)方式所述的方法。
97、第五方面,本技術(shù)提供了一種存儲集群,所述存儲集群至少包括第一存儲設(shè)備,所述第一存儲設(shè)備包括:
98、接收模塊,用于接收網(wǎng)絡(luò)設(shè)備發(fā)送的第二寫請求,所述第二寫請求中包括第一數(shù)據(jù)包,所述第一數(shù)據(jù)包中包括屬于第一文件的數(shù)據(jù)塊,所述第二寫請求用于將所述第一數(shù)據(jù)包中的數(shù)據(jù)塊存儲到所述第一存儲設(shè)備上;
99、存儲模塊,用于將所述第二寫請求中所述第一數(shù)據(jù)包中的數(shù)據(jù)塊存儲至所述第一存儲設(shè)備上。
100、基于第五方面,在可能的實現(xiàn)方式中,所述第一存儲設(shè)備還包括:記錄模塊,用于記錄第二對應(yīng)關(guān)系,所述第二對應(yīng)關(guān)系用于指示所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊的塊標(biāo)識與所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊在所述第一存儲設(shè)備中的存儲位置之間的對應(yīng)關(guān)系。
101、基于第五方面,在可能的實現(xiàn)方式中,
102、所述接收模塊還用于,接收所述網(wǎng)絡(luò)設(shè)備發(fā)送的第二處理請求,所述第二處理請求用于指示對所述第一文件執(zhí)行所述第一操作;
103、執(zhí)行模塊,用于根據(jù)所述第二處理請求,對所述第一文件執(zhí)行所述第一操作獲得所述第一處理結(jié)果;
104、發(fā)送模塊,用于將所述第一處理結(jié)果發(fā)送至所述網(wǎng)絡(luò)設(shè)備。
105、基于第五方面,在可能的實現(xiàn)方式中,所述第二處理請求中包括所述第一文件的標(biāo)識和所述第一操作的標(biāo)識;
106、所述執(zhí)行模塊用于:
107、根據(jù)所述第一文件的標(biāo)識確定所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識;
108、根據(jù)所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識以及所述第二對應(yīng)關(guān)系獲取所述第一文件的數(shù)據(jù)塊,并對所述第一文件的數(shù)據(jù)塊執(zhí)行所述第一操作得到所述第一處理結(jié)果。
109、基于第五方面,在可能的實現(xiàn)方式中,所述網(wǎng)絡(luò)設(shè)備記錄了第三對應(yīng)關(guān)系,所述第三對應(yīng)關(guān)系用于指示所述第一文件的標(biāo)識與所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊的塊標(biāo)識之間的對應(yīng)關(guān)系;
110、所述發(fā)送模塊用于,向所述網(wǎng)絡(luò)設(shè)備發(fā)送獲取請求,所述獲取請求包括所述第一文件的標(biāo)識;
111、所述接收模塊用于,接收所述網(wǎng)絡(luò)設(shè)備基于所述獲取請求發(fā)送的所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識,所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識是由所述網(wǎng)絡(luò)設(shè)備根據(jù)所述第三對應(yīng)關(guān)系確定的。
112、基于第五方面,在可能的實現(xiàn)方式中,所述第一數(shù)據(jù)包攜帶有所述第一文件的標(biāo)識,
113、所述記錄模塊用于,根據(jù)所述第一文件的標(biāo)識記錄第三對應(yīng)關(guān)系,所述第三對應(yīng)關(guān)系用于指示所述第一文件的標(biāo)識與所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊的塊標(biāo)識之間的對應(yīng)關(guān)系;
114、所述執(zhí)行模塊用于:所述第一存儲設(shè)備根據(jù)本地記錄的所述第三對應(yīng)關(guān)系和所述第一文件的標(biāo)識確定所述第一文件包含的數(shù)據(jù)塊的塊標(biāo)識。
115、基于第五方面,在可能的實現(xiàn)方式中,所述第二處理請求中包括所述第一文件的多個數(shù)據(jù)塊中每個數(shù)據(jù)塊的塊標(biāo)識以及所述第一操作的標(biāo)識;所述每個數(shù)據(jù)塊的塊標(biāo)識由所述網(wǎng)絡(luò)設(shè)備根據(jù)記錄的第三對應(yīng)關(guān)系確定;所述第三對應(yīng)關(guān)系用于指示所述第一文件的標(biāo)識與所述第一數(shù)據(jù)包中的每個數(shù)據(jù)塊的塊標(biāo)識之間的對應(yīng)關(guān)系;
116、所述執(zhí)行模塊用于,根據(jù)所述第二對應(yīng)關(guān)系獲取所述第一文件的多個數(shù)據(jù)塊,并對所述第一文件的數(shù)據(jù)塊執(zhí)行所述第一操作得到所述第一處理結(jié)果。
117、基于第五方面,在可能的實現(xiàn)方式中,所述第一操作包括讀操作、字符統(tǒng)計、字符篩選、字符排序中的任意一種或多種。
118、第五方面的各個功能模塊用于實現(xiàn)上述第二方面以及第二方面的任意一種可能的實現(xiàn)方式所述的方法。
119、第六方面,本技術(shù)提供了一種網(wǎng)絡(luò)設(shè)備,包括存儲器和處理器,所述存儲器用于存儲指令,所述處理器用于執(zhí)行所述存儲器中存儲的所述指令,以實現(xiàn)上述第一方面以及第一方面的任意一種可能的實現(xiàn)方式所述的方法。
120、第七方面,本技術(shù)提供了一種存儲集群,至少包括第一存儲設(shè)備,所述多個存儲設(shè)備中的每個存儲設(shè)備包括存儲器和處理器,所述每個存儲設(shè)備的存儲器用于存儲指令,所述每個存儲設(shè)備的處理器用于執(zhí)行所述存儲器中存儲的指令,以實現(xiàn)上述第二方面以及第二方面的任意一種可能的實現(xiàn)方式所述的方法。
121、第八方面,本技術(shù)提供了一種計算機存儲介質(zhì),包括程序指令,當(dāng)所述程序指令被網(wǎng)絡(luò)設(shè)備執(zhí)行時,使得所述網(wǎng)絡(luò)設(shè)備執(zhí)行上述第一方面以及第一方面的任意一種可能的實現(xiàn)方式所述的方法。
122、第九方面,本技術(shù)提供了一種計算機存儲介質(zhì),包括程序指令,當(dāng)所述程序指令被存儲集群執(zhí)行時,使得所述存儲集群執(zhí)行上述第二方面以及第二方面的任意一種可能的實現(xiàn)方式所述的方法。
123、第十方面,本技術(shù)提供了一種計算機程序產(chǎn)品,包括程序指令,當(dāng)所述程序指令被計算機執(zhí)行時,使得所述計算機執(zhí)行上述第一方面以及第一方面的任意一種可能的實現(xiàn)方式所述的方法。該計算機程序產(chǎn)品可以為一個軟件安裝包,在需要使用前述第一方面的任一種可能的設(shè)計提供的方法的情況下,可以下載該計算機程序產(chǎn)品并在計算機上執(zhí)行該計算機程序產(chǎn)品,以實現(xiàn)第一方面以及第一方面的任意一種可能的實現(xiàn)方式所述的方法。
124、第十一方面,本技術(shù)提供了一種計算機程序產(chǎn)品,包括程序指令,當(dāng)所述程序指令被計算機執(zhí)行時,使得所述計算機執(zhí)行上述第二方面以及第二方面的任意一種可能的實現(xiàn)方式所述的方法。該計算機程序產(chǎn)品可以為一個軟件安裝包,在需要使用前述第二方面的任一種可能的設(shè)計提供的方法的情況下,可以下載該計算機程序產(chǎn)品并在計算機上執(zhí)行該計算機程序產(chǎn)品,以實現(xiàn)第二方面以及第二方面的任意一種可能的實現(xiàn)方式所述的方法。