本發(fā)明屬于光盤(pán)存儲(chǔ)技術(shù)領(lǐng)域,尤其涉及一種基于大容量光盤(pán)庫(kù)的文件系統(tǒng)及文件存儲(chǔ)方法和系統(tǒng)。
背景技術(shù):
數(shù)字信息長(zhǎng)久化保存一直以來(lái)都是現(xiàn)代社會(huì)面臨的一個(gè)重要問(wèn)題,這些需要長(zhǎng)期保存的數(shù)據(jù)有一個(gè)特點(diǎn),就是一旦被寫(xiě)入保存之后,就很少被訪問(wèn)了,也稱之為“冷數(shù)據(jù)”。而傳統(tǒng)的以磁帶和磁盤(pán)作為存儲(chǔ)介質(zhì)的存儲(chǔ)系統(tǒng)很難滿足數(shù)據(jù)長(zhǎng)久穩(wěn)定保存的需求。人們需要一種專門(mén)面向歸檔的存儲(chǔ)系統(tǒng)來(lái)減少存儲(chǔ)成本和提高數(shù)據(jù)穩(wěn)定性。光盤(pán)存儲(chǔ)介質(zhì)由于具備存儲(chǔ)介質(zhì)與驅(qū)動(dòng)器分離的特性,易保存,可以很好的滿足歸檔存儲(chǔ)的要求,于此同時(shí),光盤(pán)的在長(zhǎng)期保存、能耗方面有明顯的優(yōu)勢(shì)。
目前最為流行的單張光盤(pán)數(shù)據(jù)組織格式是UDF文件系統(tǒng)。單張光盤(pán)上數(shù)據(jù)組織方式有兩種類(lèi)型,一種是自行定義特殊格式和另外采用UDF標(biāo)準(zhǔn)格式。Masashiro UENO等提出過(guò)基于光盤(pán)的防災(zāi)型存儲(chǔ)系統(tǒng),這種方案采用SCSI指令讀寫(xiě)光盤(pán),數(shù)據(jù)的讀寫(xiě)都受到上層系統(tǒng)的制約,不具有普適性。Sony的Colin Thompson介紹了一種基于UDF文件系統(tǒng)的光盤(pán)庫(kù)存儲(chǔ)系統(tǒng)。該系統(tǒng)面向多媒體文件數(shù)據(jù),通過(guò)UDF文件系統(tǒng)的特性將多張光盤(pán)虛擬為一個(gè)容量池,然而他們的存儲(chǔ)系統(tǒng)依舊沒(méi)能提供一個(gè)通用的文件訪問(wèn)接口。
上述工作都是考慮單張光盤(pán)的數(shù)據(jù)組織格式,并沒(méi)有特別考慮如何有效在多張光盤(pán)上建立統(tǒng)一的數(shù)據(jù)存儲(chǔ)格式。目前新型大容量光盤(pán)庫(kù)能夠在單個(gè)機(jī)柜大小內(nèi)容納上萬(wàn)張大容量藍(lán)光光盤(pán),對(duì)于大容量光盤(pán)庫(kù)而言,人工管理成千上萬(wàn)張光盤(pán)及其上面的數(shù)據(jù)是不現(xiàn)實(shí)的。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例的目的在于提供一種基于大容量光盤(pán)庫(kù)的文件系統(tǒng)及文件存儲(chǔ)方法和系統(tǒng),以解決現(xiàn)有技術(shù)新型大容量光盤(pán)庫(kù)能夠在單個(gè)機(jī)柜大小內(nèi)容納上萬(wàn)張大容量藍(lán)光光盤(pán),對(duì)于大容量光盤(pán)庫(kù)而言,人工管理成千上萬(wàn)張光盤(pán)及其上面的數(shù)據(jù)是不現(xiàn)實(shí)的問(wèn)題。
本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,一種基于大容量光盤(pán)庫(kù)的文件系統(tǒng)及文件存儲(chǔ)方法,所述方法包括以下步驟:
接收應(yīng)用程序或用戶發(fā)起的文件訪問(wèn)請(qǐng)求,所述文件訪問(wèn)請(qǐng)求中攜帶文件標(biāo)識(shí);
根據(jù)所述文件標(biāo)識(shí)查找文件目錄樹(shù),確認(rèn)所述文件標(biāo)識(shí)所對(duì)應(yīng)的文件是存儲(chǔ)在臨時(shí)存儲(chǔ)器中或者是存儲(chǔ)在光盤(pán)庫(kù)中;
若是所述臨時(shí)存儲(chǔ)器中存儲(chǔ)有所述文件標(biāo)識(shí)所對(duì)應(yīng)的文件,則根據(jù)文件目錄樹(shù)中記載的虛擬地址,打開(kāi)臨時(shí)存儲(chǔ)器中相應(yīng)的文件完成對(duì)應(yīng)訪問(wèn)操作;
若是所述臨時(shí)存儲(chǔ)器中不存在所述文件標(biāo)識(shí)所對(duì)應(yīng)的文件,而是在光盤(pán)庫(kù)中存在所述文件,則根據(jù)文件目錄樹(shù)中記載的物理地址,將所述光盤(pán)庫(kù)中存儲(chǔ)的文件內(nèi)容讀取到所述臨時(shí)存儲(chǔ)器中,通過(guò)所述臨時(shí)存儲(chǔ)器完成對(duì)應(yīng)訪問(wèn)操作;
若未在所述文件目錄樹(shù)中查找到對(duì)應(yīng)所述文件標(biāo)識(shí)的文件時(shí),則在所述臨時(shí)存儲(chǔ)器中創(chuàng)建對(duì)應(yīng)所述文件標(biāo)識(shí)的文件,并將其虛擬地址添加到所述文件目錄樹(shù)中。
優(yōu)選的,所述在所述臨時(shí)存儲(chǔ)器中創(chuàng)建對(duì)應(yīng)所述文件標(biāo)識(shí)的文件,并將其虛擬地址登記到所述文件目錄樹(shù)中,還包括:
判斷當(dāng)前臨時(shí)存儲(chǔ)器中新增加的、且是所述光盤(pán)庫(kù)中沒(méi)有存儲(chǔ)的文件內(nèi)容大小是否達(dá)到一個(gè)或者多個(gè)光盤(pán)的存儲(chǔ)空間;
若判斷結(jié)果為達(dá)到,則將所述新增的文件內(nèi)容轉(zhuǎn)存到所述一個(gè)或者多個(gè)光盤(pán)中,并將文件標(biāo)識(shí)和對(duì)應(yīng)光盤(pán)的物理地址以映射關(guān)系添加到所述文件目錄樹(shù)中。
優(yōu)選的,所述在所述臨時(shí)存儲(chǔ)器中創(chuàng)建對(duì)應(yīng)所述文件標(biāo)識(shí)的文件,并將其虛擬地址登記到所述文件目錄樹(shù)中,還包括:
判斷當(dāng)前臨時(shí)存儲(chǔ)器中存儲(chǔ)、且是所述光盤(pán)庫(kù)中有備份的文件,其最近一次被訪問(wèn)的時(shí)間與當(dāng)前時(shí)間的差值是否超過(guò)預(yù)設(shè)時(shí)間閾值;
若判斷結(jié)果為超過(guò)預(yù)設(shè)時(shí)間閾值,則將對(duì)應(yīng)文件更新到光盤(pán)庫(kù)中,刪除所述臨時(shí)存儲(chǔ)器中的相應(yīng)文件內(nèi)容,并更新文件目錄樹(shù)。
優(yōu)選的,所述文件目錄樹(shù)中包括:
存儲(chǔ)在臨時(shí)存儲(chǔ)器中各文件的文件標(biāo)識(shí)以及其在所述臨時(shí)存儲(chǔ)器中的虛擬地址;和/或,
文件的物理地址,其中所述物理地址包括所述文件所屬光盤(pán)的物理編號(hào)和所屬光盤(pán)的內(nèi)部地址;和/或,
所述虛擬地址和所述物理地址的映射關(guān)系;和/或,
文件存儲(chǔ)的時(shí)間、文件訪問(wèn)后的版本號(hào)、文件的大小、文件的重要等級(jí)中的一項(xiàng)或者多項(xiàng)。
優(yōu)選的,所述將所述光盤(pán)庫(kù)中存儲(chǔ)的文件內(nèi)容讀取到所述臨時(shí)存儲(chǔ)器中,通過(guò)所述臨時(shí)存儲(chǔ)器完成對(duì)應(yīng)訪問(wèn)操作后,還包括:
當(dāng)從光盤(pán)A讀取出的所述文件完成對(duì)應(yīng)訪問(wèn)操作后,被存儲(chǔ)在另一張光盤(pán)B上;
記錄光盤(pán)A中被訪問(wèn)文件的占總的光盤(pán)文件的比例D,并更新文件目錄樹(shù)中文件標(biāo)識(shí)和物理地址的對(duì)應(yīng)關(guān)系;
當(dāng)所述比例D的值超過(guò)預(yù)設(shè)比例閾值時(shí),則將光盤(pán)A中剩余文件讀取出來(lái)拷貝到所述光盤(pán)B或另一張光盤(pán)C上。
優(yōu)選的,所述方法還包括:
在所述光盤(pán)A中內(nèi)容被拷貝完畢后,歸檔當(dāng)時(shí)光盤(pán)A中存儲(chǔ)文件相關(guān)信息,并封存所述光盤(pán)A。
優(yōu)選的,所述訪問(wèn)操作包括:
打開(kāi)文件、讀取文件、寫(xiě)入文件、復(fù)制文件、剪切文件中的一種或者多種組合。
另一方面,本發(fā)明實(shí)施例還提供了一種基于大容量光盤(pán)庫(kù)的文件存儲(chǔ)系統(tǒng),所述系統(tǒng)包括:臨時(shí)存儲(chǔ)器、光驅(qū)組、光盤(pán)組、機(jī)械取盤(pán)裝置和服務(wù)器,具體的:
所述臨時(shí)存儲(chǔ)器,用于臨時(shí)存儲(chǔ)要導(dǎo)入光盤(pán)庫(kù)中的文件數(shù)據(jù)和緩存從光盤(pán)庫(kù)獲取的文件數(shù)據(jù);
所述光驅(qū)組,用于實(shí)現(xiàn)光盤(pán)數(shù)據(jù)的物理刻錄和讀取;
所述光盤(pán)組,用于存儲(chǔ)光盤(pán);
所述機(jī)械取盤(pán)裝置,通過(guò)機(jī)械臂實(shí)現(xiàn)光盤(pán)的物理裝入和退出光驅(qū);
所述服務(wù)器,用于存儲(chǔ)文件目錄樹(shù),用于實(shí)現(xiàn)臨時(shí)存儲(chǔ)器存儲(chǔ)于的文件標(biāo)識(shí)、文件虛擬地址和光盤(pán)中文件的物理地址之間的映射;并能夠接收用戶針對(duì)文件的訪問(wèn)操作,并調(diào)用所述臨時(shí)存儲(chǔ)器、光驅(qū)組、光盤(pán)組和機(jī)械取盤(pán)裝置,完成相應(yīng)的訪問(wèn)操作。
優(yōu)選的,所述服務(wù)器還用于實(shí)現(xiàn)標(biāo)準(zhǔn)POSIX文件系統(tǒng)存取接口。
有選的,所述系統(tǒng)中所使用的光盤(pán)具體為一次性寫(xiě)入光盤(pán)和/或可擦除光盤(pán)。
本發(fā)明實(shí)施例提供的一種基于大容量光盤(pán)庫(kù)的文件系統(tǒng)及文件存儲(chǔ)方法的有益效果包括:本發(fā)明實(shí)施例提出的文件系統(tǒng)和文件存儲(chǔ)方法,能夠?qū)w檔數(shù)據(jù)存放在較為廉價(jià)的光盤(pán)上,針對(duì)單張光盤(pán)容量小的缺陷,將大量的光盤(pán)虛擬成一整個(gè)存儲(chǔ)池(即光盤(pán)庫(kù)),文件可以跨越光盤(pán)邊界存儲(chǔ),光盤(pán)的刻錄和讀取完全實(shí)現(xiàn)自動(dòng)化,并提供給用戶通用文件訪問(wèn)接口。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其它的附圖。
圖1是本發(fā)明實(shí)施例提供的一種基于大容量光盤(pán)庫(kù)的文件存儲(chǔ)方法的流程示意圖;
圖2是本發(fā)明實(shí)施例提供的一種基于大容量光盤(pán)庫(kù)的文件存儲(chǔ)系統(tǒng)的架構(gòu)示意圖;
圖3是本發(fā)明實(shí)施例提供的一種文件目錄樹(shù)的邏輯結(jié)構(gòu)示意圖;
圖4是本發(fā)明實(shí)施例提供的一種基于大容量光盤(pán)庫(kù)的文件寫(xiě)入方法的流程示意圖;
圖5是本發(fā)明實(shí)施例提供的一種基于大容量光盤(pán)庫(kù)的文件讀取方法的流程示意圖;
圖6是本發(fā)明實(shí)施例提供的一種全局文件邏輯空間劃分示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
為了說(shuō)明本發(fā)明所述的技術(shù)方案,下面通過(guò)具體實(shí)施例來(lái)進(jìn)行說(shuō)明。
實(shí)施例一
如圖1所示為本發(fā)明實(shí)施例提供的一種基于大容量光盤(pán)庫(kù)的文件系統(tǒng)及文件存儲(chǔ)方法,所述方法包括以下執(zhí)行步驟:
在步驟201中,接收應(yīng)用程序或用戶發(fā)起的文件訪問(wèn)請(qǐng)求,所述文件訪問(wèn)請(qǐng)求中攜帶文件標(biāo)識(shí)。
其中,所述訪問(wèn)操作包括:打開(kāi)文件、讀取文件、寫(xiě)入文件、復(fù)制文件、剪切文件中的一種或者多種組合。
在步驟202中,根據(jù)所述文件標(biāo)識(shí)查找文件目錄樹(shù),確認(rèn)所述文件標(biāo)識(shí)所對(duì)應(yīng)的文件是存儲(chǔ)在臨時(shí)存儲(chǔ)器中或者是存儲(chǔ)在光盤(pán)庫(kù)中。
其中,所述文件目錄樹(shù)中包括:存儲(chǔ)在臨時(shí)存儲(chǔ)器中各文件的文件標(biāo)識(shí)以及其在所述臨時(shí)存儲(chǔ)器中的虛擬地址;和/或,文件的物理地址,其中所述物理地址包括所述文件所屬光盤(pán)的物理編號(hào)和所屬光盤(pán)的內(nèi)部地址;和/或,所述虛擬地址和所述物理地址的映射關(guān)系;和/或,文件存儲(chǔ)的時(shí)間、文件訪問(wèn)后的版本號(hào)、文件的大小、文件的重要等級(jí)中的一項(xiàng)或者多項(xiàng)。
在步驟203中,若是所述臨時(shí)存儲(chǔ)器中存儲(chǔ)有所述文件標(biāo)識(shí)所對(duì)應(yīng)的文件,則根據(jù)文件目錄樹(shù)中記載的虛擬地址,打開(kāi)臨時(shí)存儲(chǔ)器中相應(yīng)的文件完成對(duì)應(yīng)訪問(wèn)操作。
在步驟204中,若是所述臨時(shí)存儲(chǔ)器中不存在所述文件標(biāo)識(shí)所對(duì)應(yīng)的文件,而是在光盤(pán)庫(kù)中存在所述文件,則根據(jù)文件目錄樹(shù)中記載的物理地址,將所述光盤(pán)庫(kù)中存儲(chǔ)的文件內(nèi)容讀取到所述臨時(shí)存儲(chǔ)器中,通過(guò)所述臨時(shí)存儲(chǔ)器完成對(duì)應(yīng)訪問(wèn)操作。
在步驟205中,若未在所述文件目錄樹(shù)中查找到對(duì)應(yīng)所述文件標(biāo)識(shí)的文件時(shí),則在所述臨時(shí)存儲(chǔ)器中創(chuàng)建對(duì)應(yīng)所述文件標(biāo)識(shí)的文件,并將其虛擬地址添加到所述文件目錄樹(shù)中。
本發(fā)明實(shí)施例提出的文件系統(tǒng)和文件存儲(chǔ)方法,能夠?qū)w檔數(shù)據(jù)存放在較為廉價(jià)的光盤(pán)上,針對(duì)單張光盤(pán)容量小的缺陷,將大量的光盤(pán)虛擬成一整個(gè)存儲(chǔ)池(即光盤(pán)庫(kù)),文件可以跨越光盤(pán)邊界存儲(chǔ),光盤(pán)的刻錄和讀取完全實(shí)現(xiàn)自動(dòng)化,并提供給用戶通用文件訪問(wèn)接口。
在本發(fā)明實(shí)施例中,所述臨時(shí)存儲(chǔ)器的存儲(chǔ)空間通常達(dá)到幾十甚至上百?gòu)埞獗P(pán)的存儲(chǔ)量,因此,在所述臨時(shí)存儲(chǔ)器中允許在拷貝到光盤(pán)前進(jìn)行一段時(shí)間內(nèi)的存儲(chǔ),優(yōu)選的,在用戶確認(rèn)臨時(shí)存儲(chǔ)器中存儲(chǔ)的待備份內(nèi)容達(dá)到一張光盤(pán)達(dá)到大小后,可以觸發(fā)進(jìn)行光盤(pán)刻錄工作。除此之外還有一種由服務(wù)器自主決策的方式,具體的,結(jié)合本發(fā)明實(shí)施例存在一種可擴(kuò)展方案,其中,所述在所述臨時(shí)存儲(chǔ)器中創(chuàng)建對(duì)應(yīng)所述文件標(biāo)識(shí)的文件,并將其虛擬地址登記到所述文件目錄樹(shù)中,還包括:
判斷當(dāng)前臨時(shí)存儲(chǔ)器中新增加的、且是所述光盤(pán)庫(kù)中沒(méi)有存儲(chǔ)的文件內(nèi)容大小是否達(dá)到一個(gè)或者多個(gè)光盤(pán)的存儲(chǔ)空間;
若判斷結(jié)果為達(dá)到,則將所述新增的文件內(nèi)容轉(zhuǎn)存到所述一個(gè)或者多個(gè)光盤(pán)中,并將文件標(biāo)識(shí)和對(duì)應(yīng)光盤(pán)的物理地址以映射關(guān)系添加到所述文件目錄樹(shù)中。
本發(fā)明實(shí)施例除了上述基于新增量或者修改量達(dá)到一個(gè)或者多個(gè)光盤(pán)存儲(chǔ)空間時(shí),完成刻錄的方式外,還提供了一種基于修改時(shí)間的判斷,進(jìn)行光盤(pán)刻錄的方法。具體的:
結(jié)合本發(fā)明實(shí)施例存在一種優(yōu)選的方案,其中,所述在所述臨時(shí)存儲(chǔ)器中創(chuàng)建對(duì)應(yīng)所述文件標(biāo)識(shí)的文件,并將其虛擬地址登記到所述文件目錄樹(shù)中,還包括:
判斷當(dāng)前臨時(shí)存儲(chǔ)器中存儲(chǔ)、且是所述光盤(pán)庫(kù)中有備份的文件,其最近一次被訪問(wèn)的時(shí)間與當(dāng)前時(shí)間的差值是否超過(guò)預(yù)設(shè)時(shí)間閾值;
若判斷結(jié)果為超過(guò)預(yù)設(shè)時(shí)間閾值,則將對(duì)應(yīng)文件更新到光盤(pán)庫(kù)中,刪除所述臨時(shí)存儲(chǔ)器中的相應(yīng)文件內(nèi)容,并更新文件目錄樹(shù)。
上述兩種分別提供臨時(shí)存儲(chǔ)器中文件存儲(chǔ)量和臨時(shí)存儲(chǔ)器中文件訪問(wèn)時(shí)間差值來(lái)觸發(fā)光盤(pán)刻錄的方法,在實(shí)際實(shí)現(xiàn)中還可以通過(guò)上述兩種方式的結(jié)合,即同時(shí)滿足兩者條件才進(jìn)行光盤(pán)刻錄。從而保證光盤(pán)使用效率的最優(yōu)化,即讓真正擁有備份意義的數(shù)據(jù)存儲(chǔ)起來(lái)。
在具體實(shí)現(xiàn)本發(fā)明實(shí)施例方法時(shí),還會(huì)遇到一種情況,即操作人員對(duì)于已經(jīng)刻錄到光盤(pán)中的文件數(shù)據(jù)進(jìn)行訪問(wèn),并修改了相應(yīng)的文件存儲(chǔ)到所述臨時(shí)存儲(chǔ)器中,此時(shí),若提供所述文件數(shù)據(jù)的光盤(pán)為一次性寫(xiě)入的,則此時(shí)就需要在新的光盤(pán)中寫(xiě)入數(shù)據(jù)。然而,隨著一個(gè)光盤(pán)中數(shù)據(jù)被讀取并修改的比重越來(lái)越大,該光盤(pán)存在于所述光盤(pán)庫(kù)中的價(jià)值將越來(lái)越小,因?yàn)椋溆行?shù)據(jù)量的減少,每次去讀取該光盤(pán)剩余數(shù)據(jù)時(shí)效率會(huì)越來(lái)越低,因此,結(jié)合本發(fā)明實(shí)施例提出了一種優(yōu)選的方案,其中,所述將所述光盤(pán)庫(kù)中存儲(chǔ)的文件內(nèi)容讀取到所述臨時(shí)存儲(chǔ)器中,通過(guò)所述臨時(shí)存儲(chǔ)器完成對(duì)應(yīng)訪問(wèn)操作后,還包括:
當(dāng)從光盤(pán)A讀取出的所述文件完成對(duì)應(yīng)訪問(wèn)操作后,被存儲(chǔ)在另一張光盤(pán)B上;
記錄光盤(pán)A中被訪問(wèn)文件的占總的光盤(pán)文件的比例D,并更新文件目錄樹(shù)中文件標(biāo)識(shí)和物理地址的對(duì)應(yīng)關(guān)系;
當(dāng)所述比例D的值超過(guò)預(yù)設(shè)比例閾值時(shí),則將光盤(pán)A中剩余文件讀取出來(lái)拷貝到所述光盤(pán)B或另一張光盤(pán)C上。
其中,所述比例閾值可以根據(jù)實(shí)際情況設(shè)置,本發(fā)明實(shí)施例根據(jù)實(shí)驗(yàn)結(jié)果提供了一個(gè)優(yōu)選的區(qū)間值:70%-85%。
結(jié)合本發(fā)明實(shí)施例存在一種優(yōu)選的方案,其中,所述方法還包括:
在所述光盤(pán)A中內(nèi)容被拷貝完畢后,歸檔當(dāng)時(shí)光盤(pán)A中存儲(chǔ)文件相關(guān)信息,并封存所述光盤(pán)A。所述封存的含義是從所述光盤(pán)庫(kù)中抽出該光盤(pán)A,并安置在用于存放光盤(pán)的位置。所述文件相關(guān)信息具體包括:光盤(pán)A中的文件目錄樹(shù),各文件的最后修改時(shí)間等等。
實(shí)施例二
如圖2所示,本發(fā)明實(shí)施例還提供了一種基于大容量光盤(pán)庫(kù)的文件存儲(chǔ)系統(tǒng),所述系統(tǒng)包括:臨時(shí)存儲(chǔ)器、光驅(qū)組、光盤(pán)組、機(jī)械取盤(pán)裝置和服務(wù)器,具體的:
所述臨時(shí)存儲(chǔ)器,用于臨時(shí)存儲(chǔ)要導(dǎo)入光盤(pán)庫(kù)中的文件數(shù)據(jù)和緩存從光盤(pán)庫(kù)獲取的文件數(shù)據(jù);
所述光驅(qū)組,用于實(shí)現(xiàn)光盤(pán)數(shù)據(jù)的物理刻錄和讀??;
所述光盤(pán)組,用于存儲(chǔ)光盤(pán);
所述機(jī)械取盤(pán)裝置,通過(guò)機(jī)械臂實(shí)現(xiàn)光盤(pán)的物理裝入和退出光驅(qū);
所述服務(wù)器,用于存儲(chǔ)文件目錄樹(shù),用于實(shí)現(xiàn)臨時(shí)存儲(chǔ)器存儲(chǔ)于的文件標(biāo)識(shí)、文件虛擬地址和光盤(pán)中文件的物理地址之間的映射;并能夠接收用戶針對(duì)文件的訪問(wèn)操作,并調(diào)用所述臨時(shí)存儲(chǔ)器、光驅(qū)組、光盤(pán)組和機(jī)械取盤(pán)裝置,完成相應(yīng)的訪問(wèn)操作。
本實(shí)施例能夠帶來(lái)以下有益效果:1)該系統(tǒng)將大量的光盤(pán)虛擬成一整個(gè)容量池,文件可以跨越光盤(pán)邊界存儲(chǔ),光盤(pán)的刻錄和讀取完全實(shí)現(xiàn)自動(dòng)化,并提供給用戶通用文件訪問(wèn)接口。2)根據(jù)光盤(pán)庫(kù)的特點(diǎn),構(gòu)建新型文件系統(tǒng)和文件存儲(chǔ)方法,便于光盤(pán)庫(kù)數(shù)據(jù)管理,有效提高全局文件檢索。
結(jié)合本發(fā)明實(shí)施例,存在一種優(yōu)選的實(shí)現(xiàn)方案,其中,所述服務(wù)器還用于實(shí)現(xiàn)標(biāo)準(zhǔn)POSIX文件系統(tǒng)存取接口。
結(jié)合本發(fā)明實(shí)施例,存在一種優(yōu)選的實(shí)現(xiàn)方案,其中,所述系統(tǒng)中所使用的光盤(pán)具體為一次性寫(xiě)入光盤(pán)和/或可擦除光盤(pán)。
實(shí)施例三
如圖3所示為大容量光盤(pán)庫(kù)的新型文件系統(tǒng)的邏輯結(jié)構(gòu)圖,其中包括文件目錄樹(shù)、映射關(guān)系、緩存文件和光盤(pán)庫(kù)。
目錄樹(shù)文件記錄了全局目錄樹(shù)信息,構(gòu)建了全局目錄樹(shù)結(jié)構(gòu),提高文件目錄遍歷的效率。其中任何文件和目錄都有唯一的絕對(duì)路徑,在具體實(shí)現(xiàn)方式中,本發(fā)明實(shí)施例的文件存儲(chǔ)系統(tǒng)使用文件和目錄的絕對(duì)路徑作為關(guān)鍵字計(jì)算出相應(yīng)的ID作為文件標(biāo)識(shí)。
緩存文件緩存了最近導(dǎo)入和經(jīng)常訪問(wèn)的文件索引信息,其索引信息包括文件在光盤(pán)庫(kù)中的絕對(duì)路徑(物理地址)、緩存在臨時(shí)存儲(chǔ)器中的虛擬地址等,系統(tǒng)內(nèi)部通過(guò)文件絕對(duì)路徑,訪問(wèn)對(duì)應(yīng)的緩存空間。
映射關(guān)系中記錄了需要刻錄到光盤(pán)中的文件的索引信息,其中包括文件ID、物理存儲(chǔ)位置(如光盤(pán)物理編號(hào)和光盤(pán)內(nèi)部地址)等,系統(tǒng)內(nèi)部通過(guò)文件ID對(duì)相應(yīng)光盤(pán)數(shù)據(jù)進(jìn)行訪問(wèn)。
上述三個(gè)索引文件會(huì)在數(shù)據(jù)緩存區(qū)中保留最新的副本,同時(shí)也會(huì)定期記錄到物理光盤(pán)中,但是考慮到這些元數(shù)據(jù)信息會(huì)隨著光盤(pán)庫(kù)的使用而改變,因此這三個(gè)文件時(shí)具有版本信息,在每次更新時(shí)會(huì)自動(dòng)增加版本號(hào),從而保證全局元數(shù)據(jù)和光盤(pán)數(shù)據(jù)保持版本一致。
下面說(shuō)明本發(fā)明系統(tǒng)的工作過(guò)程:
一、數(shù)據(jù)存儲(chǔ)過(guò)程如圖4所示,具體包括:
在步驟301中,文件系統(tǒng)接收到來(lái)自應(yīng)用程序或用戶發(fā)起的文件寫(xiě)請(qǐng)求。
在步驟302中,訪問(wèn)文件目錄樹(shù),獲取文件的信息。
在步驟303中,根據(jù)文件信息,訪問(wèn)對(duì)應(yīng)的緩存區(qū)存儲(chǔ)空間,將文件數(shù)據(jù)存入緩存區(qū),并更新該文件對(duì)應(yīng)的緩存區(qū)存儲(chǔ)位置信息。
在步驟304中,若緩存區(qū)中導(dǎo)入的數(shù)據(jù)量達(dá)到一張光盤(pán)的存儲(chǔ)總?cè)萘?,進(jìn)入步驟305,否則結(jié)束。
在步驟305中,根據(jù)全局文件卷邏輯空間劃分,將緩存區(qū)中的數(shù)據(jù)刻錄到光盤(pán)中,結(jié)束。
二、數(shù)據(jù)獲取過(guò)程如圖5所示,具體包括(其中臨時(shí)存儲(chǔ)器也稱為緩存區(qū)):
在步驟401中,文件系統(tǒng)接收到來(lái)自應(yīng)用程序或用戶發(fā)起的文件讀請(qǐng)求。
在步驟402中,訪問(wèn)文件目錄樹(shù),獲取文件的信息。
在步驟403中,根據(jù)文件信息,訪問(wèn)對(duì)應(yīng)的緩存區(qū)存儲(chǔ)空間,若對(duì)應(yīng)緩存區(qū)存儲(chǔ)空間緩存了該文件的數(shù)據(jù),則直接從緩存區(qū)中讀取文件數(shù)據(jù),結(jié)束,否則,進(jìn)入步驟404;
在步驟404中,從光盤(pán)文件映射文件中獲取存儲(chǔ)該文件的光盤(pán)編號(hào)和物理地址。
在步驟405中,將整張光盤(pán)的數(shù)據(jù)緩存到緩存區(qū)中。
在步驟406中,從緩存區(qū)中讀取數(shù)據(jù),同時(shí)更新該文件對(duì)應(yīng)的緩存區(qū)存儲(chǔ)位置信息,結(jié)束。
實(shí)施五
如圖6所示為本發(fā)明實(shí)施例提供的一種全局文件卷邏輯空間進(jìn)行劃分方法,可應(yīng)用于上述各實(shí)施例中?;诖笕萘抗獗P(pán)庫(kù)的文件系統(tǒng)將導(dǎo)入的數(shù)據(jù)保存在數(shù)據(jù)緩存區(qū)中,然后根據(jù)光盤(pán)分配算法,把數(shù)據(jù)劃分為一定大小的光盤(pán)鏡像,再一次性把鏡像文件刻錄到物理光盤(pán)中;最后,刻錄成功后,在光盤(pán)文件映射關(guān)系中存入刻錄到光盤(pán)中的文件的索引信息,所述光盤(pán)文件映射關(guān)系存儲(chǔ)于所述文件關(guān)系樹(shù)中。
本領(lǐng)域普通技術(shù)人員還可以理解,實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分步驟是可以通過(guò)程序來(lái)指令相關(guān)的硬件來(lái)完成,所述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,所述的存儲(chǔ)介質(zhì),包括ROM/RAM、磁盤(pán)、光盤(pán)等。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。