本發(fā)明涉及計(jì)算機(jī)存儲(chǔ),特別是一種涉及組合多個(gè)不同或相同文件系統(tǒng)的擴(kuò)容方法、裝置以及可讀存儲(chǔ)介質(zhì)。
背景技術(shù):
1、隨著醫(yī)院病理掃片業(yè)務(wù)的不斷發(fā)展,數(shù)據(jù)量呈現(xiàn)出快速增長(zhǎng)的趨勢(shì)。在醫(yī)院的存儲(chǔ)環(huán)境中,存在著各種各樣的存儲(chǔ)系統(tǒng),包括基于?smb?協(xié)議的存儲(chǔ)、ftp?協(xié)議的存儲(chǔ)以及硬盤(pán)存儲(chǔ)等。然而,這些單個(gè)存儲(chǔ)系統(tǒng)所提供的容量逐漸難以滿(mǎn)足日益增長(zhǎng)的存儲(chǔ)需求。
2、一方面,醫(yī)院的存儲(chǔ)系統(tǒng)較為復(fù)雜多樣,不同的存儲(chǔ)系統(tǒng)可能基于不同的協(xié)議和技術(shù)架構(gòu),這給存儲(chǔ)資源的整合和高效利用帶來(lái)了困難。另一方面,在不改變現(xiàn)有應(yīng)用服務(wù)使用方式的前提下,如何充分挖掘和利用各個(gè)存儲(chǔ)系統(tǒng)中剩余的容量空間,成為亟待解決的問(wèn)題。
3、這種現(xiàn)狀不僅導(dǎo)致了存儲(chǔ)資源的浪費(fèi),增加了醫(yī)院的存儲(chǔ)成本,還可能影響到病理數(shù)據(jù)的存儲(chǔ)和管理效率,進(jìn)而對(duì)醫(yī)院的病理診斷等業(yè)務(wù)產(chǎn)生不利影響。因此,需要一種能夠有效組合多個(gè)不同或相同文件系統(tǒng)進(jìn)行擴(kuò)容的方法,以解決醫(yī)院存儲(chǔ)系統(tǒng)面臨的這些問(wèn)題。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明實(shí)施例提供了一種組合多個(gè)不同或相同文件系統(tǒng)的擴(kuò)容方法、裝置以及可讀存儲(chǔ)介質(zhì),針對(duì)目前技術(shù)存在的現(xiàn)有多種不同協(xié)議的單個(gè)存儲(chǔ)系統(tǒng)容量不足且難以整合利用,導(dǎo)致存儲(chǔ)資源浪費(fèi)和成本增加,影響病理數(shù)據(jù)管理效率等問(wèn)題。
2、本發(fā)明核心技術(shù)主要是通過(guò)實(shí)現(xiàn)操作系統(tǒng)的fuse協(xié)議通信,結(jié)合用戶(hù)態(tài)文件系統(tǒng)對(duì)不同原始存儲(chǔ)進(jìn)行管理,包括文件存儲(chǔ)讀取的hash取余算法及權(quán)限容量獲取方式,實(shí)現(xiàn)組合多個(gè)不同或相同文件系統(tǒng)擴(kuò)容。
3、第一方面,本發(fā)明提供了一種組合多個(gè)不同或相同文件系統(tǒng)的擴(kuò)容方法,所述方法包括以下步驟:
4、步驟一、實(shí)現(xiàn)與操作系統(tǒng)進(jìn)行fuse協(xié)議通信:
5、當(dāng)執(zhí)行讀取/寫(xiě)入操作時(shí),io請(qǐng)求首先進(jìn)入內(nèi)核態(tài),然后傳遞給內(nèi)核態(tài)的fuse文件系統(tǒng)模塊,fuse文件系統(tǒng)模塊再根據(jù)情況將請(qǐng)求轉(zhuǎn)發(fā)到用戶(hù)態(tài)的文件系統(tǒng)進(jìn)行處理,處理完成后響應(yīng)再按照原路返回;
6、步驟二、實(shí)現(xiàn)用戶(hù)態(tài)文件系統(tǒng)相關(guān)操作:
7、將用戶(hù)態(tài)的文件系統(tǒng)掛載到文件夾上;
8、當(dāng)存儲(chǔ)文件時(shí),根據(jù)文件路徑進(jìn)行hash和原始存儲(chǔ)總數(shù)取余確定存儲(chǔ)位置,將文件路徑和存儲(chǔ)位置信息存入數(shù)據(jù)庫(kù);
9、當(dāng)訪(fǎng)問(wèn)文件時(shí),先進(jìn)行hash取余確定原始存儲(chǔ)位置,若原始存儲(chǔ)總數(shù)變化,從數(shù)據(jù)庫(kù)獲取真正存儲(chǔ)位置,先返回用戶(hù)需求,再移動(dòng)文件并更新數(shù)據(jù)庫(kù);
10、獲取和修改權(quán)限直接采用原始存儲(chǔ)權(quán)限,容量通過(guò)獲取各個(gè)原始存儲(chǔ)然后相加得到。
11、進(jìn)一步地,步驟二中,用戶(hù)態(tài)的文件系統(tǒng)通過(guò)mount命令掛載到文件夾上。
12、進(jìn)一步地,步驟二中,數(shù)據(jù)庫(kù)為sqlite。
13、進(jìn)一步地,步驟二中,hash取余為hash(文件路徑)/原始存儲(chǔ)總數(shù)。
14、進(jìn)一步地,步驟二中,ftp掛載到系統(tǒng)ftpdata目錄上,smb掛載到系統(tǒng)smbdata目錄上,硬盤(pán)掛載到系統(tǒng)diskdata目錄上。
15、第二方面,本發(fā)明提供了一種組合多個(gè)不同或相同文件系統(tǒng)擴(kuò)容裝置,包括:
16、fuse協(xié)議通信模塊,用于實(shí)現(xiàn)與操作系統(tǒng)進(jìn)行fuse協(xié)議通信;當(dāng)執(zhí)行讀取/寫(xiě)入操作時(shí),io請(qǐng)求首先進(jìn)入內(nèi)核態(tài),然后傳遞給內(nèi)核態(tài)的fuse文件系統(tǒng)模塊,fuse文件系統(tǒng)模塊再根據(jù)情況將請(qǐng)求轉(zhuǎn)發(fā)到用戶(hù)態(tài)的文件系統(tǒng)進(jìn)行處理,處理完成后響應(yīng)再按照原路返回;
17、用戶(hù)態(tài)文件系統(tǒng)相關(guān)操作模塊,用于實(shí)現(xiàn)用戶(hù)態(tài)文件系統(tǒng)相關(guān)操作;將用戶(hù)態(tài)的文件系統(tǒng)掛載到文件夾上;當(dāng)存儲(chǔ)文件時(shí),根據(jù)文件路徑進(jìn)行hash和原始存儲(chǔ)總數(shù)取余確定存儲(chǔ)位置,將文件路徑和存儲(chǔ)位置信息存入數(shù)據(jù)庫(kù);當(dāng)訪(fǎng)問(wèn)文件時(shí),先進(jìn)行hash取余確定原始存儲(chǔ)位置,若原始存儲(chǔ)總數(shù)變化,從數(shù)據(jù)庫(kù)獲取真正存儲(chǔ)位置,先返回用戶(hù)需求,再移動(dòng)文件并更新數(shù)據(jù)庫(kù);獲取和修改權(quán)限直接采用原始存儲(chǔ)權(quán)限,容量通過(guò)獲取各個(gè)原始存儲(chǔ)然后相加得到。
18、第三方面,本發(fā)明提供了一種電子裝置,包括存儲(chǔ)器和處理器,存儲(chǔ)器中存儲(chǔ)有計(jì)算機(jī)程序,處理器被設(shè)置為運(yùn)行計(jì)算機(jī)程序以執(zhí)行上述的組合多個(gè)不同或相同文件系統(tǒng)的擴(kuò)容方法。
19、第四方面,本發(fā)明提供了一種可讀存儲(chǔ)介質(zhì),可讀存儲(chǔ)介質(zhì)中存儲(chǔ)有計(jì)算機(jī)程序,計(jì)算機(jī)程序包括用于控制過(guò)程以執(zhí)行過(guò)程的程序代碼,過(guò)程包括根據(jù)上述的組合多個(gè)不同或相同文件系統(tǒng)的擴(kuò)容方法。
20、本發(fā)明的主要貢獻(xiàn)和創(chuàng)新點(diǎn)如下:
21、1.實(shí)現(xiàn)與操作系統(tǒng)的?fuse?協(xié)議通信:使得?io?請(qǐng)求能夠在內(nèi)核態(tài)和用戶(hù)態(tài)的文件系統(tǒng)之間高效傳輸,當(dāng)執(zhí)行讀取?/?寫(xiě)入操作時(shí),io?請(qǐng)求首先進(jìn)入內(nèi)核態(tài),然后傳遞給內(nèi)核態(tài)的?fuse?文件系統(tǒng)模塊,fuse?文件系統(tǒng)模塊再根據(jù)情況將請(qǐng)求轉(zhuǎn)發(fā)到用戶(hù)態(tài)的文件系統(tǒng)進(jìn)行處理,處理完成后響應(yīng)再按照原路返回,從而提高了文件系統(tǒng)的處理效率。
22、2.本發(fā)明通過(guò)創(chuàng)新的方式,解決了傳統(tǒng)醫(yī)療信息化建設(shè)模式中存在的一些弊端,如存儲(chǔ)容量有限、擴(kuò)展性差、運(yùn)維困難等問(wèn)題,提高了存儲(chǔ)資源的利用率和管理效率,降低了成本,滿(mǎn)足了醫(yī)院等場(chǎng)景下對(duì)文件系統(tǒng)的大容量、高性能、易擴(kuò)展和便于管理等需求。同時(shí),該發(fā)明也可應(yīng)用于其他需要整合多個(gè)文件系統(tǒng)的場(chǎng)景,具有廣泛的適用性。
23、本發(fā)明的一個(gè)或多個(gè)實(shí)施例的細(xì)節(jié)在以下附圖和描述中提出,以使本發(fā)明的其他特征、目的和優(yōu)點(diǎn)更加簡(jiǎn)明易懂。
1.一種組合多個(gè)不同或相同文件系統(tǒng)的擴(kuò)容方法,其特征在于,包括以下步驟:
2.如權(quán)利要求1所述的一種組合多個(gè)不同或相同文件系統(tǒng)的擴(kuò)容方法,其特征在于,步驟二中,用戶(hù)態(tài)的文件系統(tǒng)通過(guò)mount命令掛載到文件夾上。
3.如權(quán)利要求1所述的一種組合多個(gè)不同或相同文件系統(tǒng)的擴(kuò)容方法,其特征在于,步驟二中,所述數(shù)據(jù)庫(kù)為sqlite。
4.如權(quán)利要求1所述的一種組合多個(gè)不同或相同文件系統(tǒng)的擴(kuò)容方法,其特征在于,步驟二中,hash取余為hash(文件路徑)/原始存儲(chǔ)總數(shù)。
5.如權(quán)利要求2所述的一種組合多個(gè)不同或相同文件系統(tǒng)的擴(kuò)容方法,其特征在于,步驟二中,ftp掛載到系統(tǒng)ftpdata目錄上,smb掛載到系統(tǒng)smbdata目錄上,硬盤(pán)掛載到系統(tǒng)diskdata目錄上。
6.一種組合多個(gè)不同或相同文件系統(tǒng)擴(kuò)容裝置,其特征在于,包括:
7.一種電子裝置,包括存儲(chǔ)器和處理器,其特征在于,所述存儲(chǔ)器中存儲(chǔ)有計(jì)算機(jī)程序,所述處理器被設(shè)置為運(yùn)行所述計(jì)算機(jī)程序以執(zhí)行權(quán)利要求1至5任一項(xiàng)所述的組合多個(gè)不同或相同文件系統(tǒng)的擴(kuò)容方法。
8.一種可讀存儲(chǔ)介質(zhì),其特征在于,所述可讀存儲(chǔ)介質(zhì)中存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序包括用于控制過(guò)程以執(zhí)行過(guò)程的程序代碼,所述過(guò)程包括根據(jù)權(quán)利要求1至5任一項(xiàng)所述的組合多個(gè)不同或相同文件系統(tǒng)的擴(kuò)容方法。