1.一種文件存儲方法,包括:
將待存儲的文件,分成N個源碼塊;
對所述N個源碼塊進行分組,生成M個碼塊組,其中,每個碼塊組均包括至少一個源碼塊,M>N;
對所述M個碼塊組分別進行編碼,以生成M個編碼塊;
將所述M個編碼塊存儲至多個存儲裝置中。
2.根據權利要求1所述的方法,其中,所述對所述M個碼塊組分別進行編碼,以生成M個編碼塊包括:
根據每個碼塊組中的源碼塊的數量,選擇相應的編碼方式;
利用所述編碼方式對所述每個碼塊組進行編碼以生成相應的編碼塊。
3.一種文件讀取方法,包括:
根據文件讀取請求,確定所述文件的源碼塊的數量N、編碼塊的數量M、以及所述M個編碼塊所在的多個存儲裝置;
向各存儲裝置發送編碼塊獲取請求;
當自所述存儲裝置接收到S個編碼塊時,對所述S個編碼塊進行譯碼,其中,N≤S<M;
當譯碼后成功恢復所述文件時,利用所述恢復后的文件響應所述文件讀取請求。
4.根據權利要求1所述的方法,其中,所述根據文件讀取請求,確定所述文件的源碼塊的數量N、編碼塊的數量M以及所述M個編碼塊所在的多個存儲裝置包括:
根據文件讀取請求,獲取所述文件的文件名;
根據所述文件名,索引并解析所述文件名所對應的元數據,其中,所述元數據包括所述文件的源碼塊的數量N、編碼塊的數量M以及所述M個編碼塊所在的多個存儲裝置。
5.根據權利要求1-4中任一項所述的方法,其中,所述向各存儲裝置發送編碼塊獲取請求包括:
基于待獲取的M個編碼塊確定待發送的M個輸入輸出請求數據包;
檢測所述數據包中是否存在向同一個存儲裝置發送的數據包;
對所述向同一個存儲裝置發送的數據包進行合并處理;
向所述各存儲裝置發送經合并處理后的多個輸入輸出請求數據包。
6.一種文件存儲裝置,包括:
分塊模塊,配置用于將待存儲的文件,分成N個源碼塊;
分組模塊,配置用于對所述N個源碼塊進行分組,生成M個碼塊組,其中,每個碼塊組均包括至少一個源碼塊,M>N;
編碼模塊,配置用于對所述M個碼塊組分別進行編碼,以生成M個編碼塊;
存儲模塊,配置用于將所述M個編碼塊存儲至多個存儲裝置中。
7.根據權利要求6所述的裝置,其中,所述編碼模塊包括:
選擇模塊,配置用于根據每個碼塊組中的源碼塊的數量,選擇相應的編碼方式;
生成模塊,配置用于利用所述編碼方式對所述每個碼塊組進行編碼以生成相應的編碼塊。
8.一種文件讀取裝置,包括:
確定模塊,配置用于根據文件讀取請求,確定所述文件的源碼塊的數量N、編碼塊的數量M、以及所述M個編碼塊所在的多個存儲裝置;
發送模塊,配置用于向各存儲裝置發送編碼塊獲取請求;
譯碼模塊,配置用于當自所述存儲裝置接收到S個編碼塊時,對所述S個編碼塊進行譯碼,其中,N≤S<M;
響應模塊,配置用于當譯碼后成功恢復所述文件時,利用所述恢復后的文件響應所述文件讀取請求。
9.根據權利要求6所述的裝置,其中,所述確定模塊包括:
文件名獲取模塊,配置用于根據文件讀取請求,獲取所述文件的文件名;
索引解析模塊,配置用于根據所述文件名,索引并解析所述文件名所對應的元數據,其中,所述元數據包括所述文件的源碼塊的數量N、編碼塊的數量M、以及所述M個編碼塊所在的多個存儲裝置。
10.根據權利要求6-9中任一項所述的裝置,其中,所述發送模塊包括:
請求確定模塊,配置用于基于待獲取的M個編碼塊確定待發送的M個輸入輸出請求數據包;
檢測模塊,配置用于檢測所述數據包中是否存在向同一個存儲裝置發送的數據包;
合并處理模塊,配置用于對所述向同一個存儲裝置發送的數據包進行合并處理;
請求發送模塊,配置用于向所述各存儲裝置發送經合并處理后的多個輸入輸出請求數據包。