一種藍光光碟庫歸檔管理方法及系統與流程
2023-08-03 05:09:41 2

本發明屬於數據存儲領域,適用於將基於對象備份系統的數據歸檔到光碟庫系統,尤其是涉及一種藍光光碟庫歸檔管理方法及系統。
背景技術:
隨著大數據時代的到來,各企業保存的數據也越來越多。一方面,企業可以對這些數據進行分析和挖掘,獲取很多智能的、深入的、有價值的信息,從而制定新的盈利策略,提升服務水平。另一方面,各企業也必須將數據保留較長的一段時間,這是因為要遵守政府的規定、履行法律法規的責任。隨著時間的推移,數據被修改的機率也越來越小並最終成為「固定」的數據,稱之為冷數據。一般而言,數據中心80%以上的數據都是冷數據。將這些冷數據全部保存在在線存儲系統中是不現實的,因為這即會增加企業的存儲成本,還會增加生產系統的壓力,導致數據維護難度的上升。這就需要尋找一種相對廉價的、安全可靠的、容易維護、能夠長期保存的大容量存儲設備,以便將冷數據從在線存儲中遷移到這些存儲設備中。這個過程,稱之為歸檔。
目前常見的用來冷數據的存儲設備有:磁帶庫和光碟庫。相比磁帶庫,使用光碟庫有以下優勢:
1.壽命長。通過專業的實驗證明,光碟的壽命一般都在50年以上,可以滿足最為苛刻金融業對數據超長保存期限的要求。相比之下,磁帶的壽命則只有5-10年左右,若使用磁碟作為數據長期保存介質,要求每隔5年進行數據遷移。
2.保存環鏡要求不高。光碟只需要常溫、防水、防塵。磁帶則需要恆溫恆溼保存,否則容易出現發黴、粘連、掉磁粉等現象。
3.可靠性高。光碟介質記錄數據的原理是通過雷射在光碟表面燒錄出一些凹坑以達到記錄數據0或者1,屬於一種穩定的物理記錄。而磁帶記錄的根本原理是通過改變磁粉的極性來記錄數據0或者1,屬於非物理性記錄,所以耐電磁幹擾的能力較差。
4.數據查詢速度。相對磁帶的線性讀取,光碟可以直接定位到需要讀取數據的位置,從而擁有較高的查詢速度。
5.兼容性好。光碟是國際化標準,新一代的光碟機總是保留向下的兼容性。
綜上所述,光碟庫是一種理想的、用來作為數據長期保存的設備。
在檔案管理領域的數據保護中,磁碟和光碟庫都是負責著各自重要的角色,磁碟一般是作為數據快速備份恢復的存儲介質,光碟庫一般是作為數據歸檔的存儲介質,該數據流向是磁碟到磁碟再到光碟庫的過程即D2D2B,或者直接的磁碟數據備份到光碟庫的過程D2B。但現有的歸檔方法還存在不足,需要一種更為高效、簡單的將數據歸檔到光碟庫中的方法。
技術實現要素:
本發明的目的就是為了克服上述現有技術存在的缺陷而提供一種高效的、簡單的、跨平臺的、易於使用的藍光光碟庫歸檔管理方法及系統,能方便地將基於對象備份系統中的數據遷移至光碟庫,同時提供快速查詢光碟庫中的對象的能力。
本發明的目的可以通過以下技術方案來實現:
一種藍光光碟庫歸檔管理方法,包括:
光碟庫註冊步驟,代理伺服器根據收到的光碟庫註冊請求將對應的光碟庫註冊至備份伺服器,註冊完成後,備份伺服器記錄光碟庫狀態信息;
卷創建步驟,備份伺服器根據外部指令將註冊至備份伺服器的光碟庫劃分為不同的介質集,並在各介質集下創建至少一個卷,
卷格式化步驟,卷創建完成後,由代理伺服器創建s3ql網絡文件系統實現卷格式化;
數據歸檔步驟,根據歸檔任務讀取備份伺服器中的待歸檔數據,並通過Storage伺服器緩存後同步刻錄至光碟庫中。
所述光碟庫註冊步驟具體為:
101)代理伺服器在收到光碟庫註冊請求時,轉發該請求至所有與代理伺服器連接的Storage伺服器,各所述Storage伺服器中保存有通過間隔掃描獲取的光碟庫狀態信息;
102)Storage伺服器將保存的光碟庫狀態信息返回給代理伺服器;
103)代理伺服器在收到所有Storage伺服器的返回信息後,轉發該返回信息至備份伺服器;
104)備份伺服器保存並展示所有收到的光碟庫狀態信息,並根據用戶選擇指令將相應的光碟庫註冊到備份伺服器中。
所述卷創建步驟具體為:
201)創建介質集;
202)在收到在某一介質集下創建卷指令後,遍歷該介質集包含的光碟庫,並向各光碟庫所屬的Storage伺服器發起查詢光碟匣請求;
203)展示Storage伺服器返回的光碟匣信息;
204)根據用戶選擇指令對所創建的卷分配光碟匣,並將分配結果發送給Storage伺服器;
205)Storage伺服器執行相應的卷創建操作。
在執行所述數據歸檔步驟時,還包括:將所述待歸檔數據發送給搜尋引擎伺服器進行解析,解析後形成的索引數據同時保存於Storage伺服器中。
還包括:
數據瀏覽下載步驟,搜尋引擎伺服器根據用戶搜索關鍵字進行數據搜索,並根據用戶下載請求,通過Storage伺服器下載相應文件。
所述數據瀏覽下載步驟具體為:
301)搜尋引擎伺服器獲取用戶搜索關鍵字;
302)判斷本地緩存中是否存在完整的索引數據,若是,則執行步驟304),若否,則向Storage服務請求索引數據;
303)接收Storage伺服器返回的完整的索引數據;
304)根據用戶搜索關鍵字進行數據搜索並顯示搜索結果;
305)將用戶下載請求發送給Storage伺服器,所述用戶下載請求包括待下載文件和保存路徑;
306)Storage伺服器根據用戶下載請求從光碟庫中讀取文件並根據所述保存路徑發送文件。
一種藍光光碟庫歸檔管理系統,包括:
備份伺服器,用於實現備份及歸檔任務;
光碟庫,用於保存歸檔後的數據;
代理伺服器,作為數據轉發接口,用於實現備份伺服器與光碟庫的通信;
Storage伺服器,連接於代理伺服器與光碟庫間,用於實現與光碟庫的數據傳輸。
所述備份伺服器包括:
光碟庫狀態信息存儲模塊,用於存儲並展示註冊至備份伺服器的光碟庫狀態信息;
介質集維護模塊,用於根據外部指令將光碟庫劃分為不同的介質集,所述介質集由至少一個卷組成,每個所述卷分配有至少零個光碟匣。
所述代理伺服器包括:
s3ql網絡文件接口模塊,用於對上層應用提供通用的文件操作接口。
還包括:
搜尋引擎伺服器,用於解析歸檔數據,提供歸檔數據搜索接口,展示搜索結果,並根據所述搜索結果通過Storage伺服器下載所需文件
與現有技術相比,本發明具有以下有益效果:
1、實現備份伺服器中的數據歸檔到光碟庫設備,光碟庫並不直接連接到備份伺服器上,將備份伺服器與光碟庫隔離開,不佔用備份伺服器的資源,同時方便擴展。
2、對應用透明,通過s3ql向歸檔應用提供了與本地文件系統一致的操作體驗,屏蔽了光碟庫與磁碟操作的差異性。歸檔應用不需要改動就可以直接將數據歸檔到光碟庫中。
3、採用s3ql網絡文件系統,提供對歸檔數據的壓縮特性,減少帶寬佔用,提升傳輸效率。同樣地,也減少了佔用的光碟庫空間,空間利用率提高。
4、提供對歸檔數據的加密特性,保障歸檔數據的安全性。
5、提供對歸檔數據的重刪特性,提高空間利用率真。
6、設置搜尋引擎節點,提供對歸檔數據的搜索功能。對歸檔數據的訪問都是很久之後,用戶並不能記得歸檔的數據放置在哪裡,也不能夠確定是否有符合某些條件的數據。通過搜尋引擎提供的搜索功能,能夠瞬間返回指定條件的數據,提高對歸檔數據的發現能力和利用率。
7、高性能。通過先將數據緩存到Storage伺服器,然後再刻錄到光碟庫的步驟,有效屏蔽了光碟讀寫速度慢的缺點,加快了歸檔速度,提高了實際使用的效率。
8、可擴展。由於光碟庫是通過代理伺服器與備份伺服器通信,因此,無論光碟庫的物理架構、網絡架構如何變化,都不會影響到備份伺服器,因而當空間不足而需要擴展時,會比較簡單。
附圖說明
圖1為備份伺服器與光碟庫的簡單連接架構示意圖;
圖2為備份伺服器與光碟庫的另一種簡單連接架構示意圖;
圖3為介質集、光碟庫、卷和光碟匣的關係示意圖;
圖4為加入Storage節點後的架構示意圖;
圖5為加入搜尋引擎節點後的架構示意圖;
圖6為本發明的數據流程示意圖。
具體實施方式
下面結合附圖和具體實施例對本發明進行詳細說明。本實施例以本發明技術方案為前提進行實施,給出了詳細的實施方式和具體的操作過程,但本發明的保護範圍不限於下述的實施例。
本實施例提供一種藍光光碟庫歸檔管理方法,採用以下技術方案和步驟實現:
1、註冊光碟庫
此步驟主要是掃描光碟庫設備狀態信息,將信息存儲至備份伺服器,建立介質集和光碟庫的綁定關係。如圖1所示,光碟庫3並不直接連接到備份伺服器1上,而是通過代理伺服器2連接至備份伺服器1上,是因為:
A.不佔用備份伺服器資源,這樣就不會給備份伺服器增加壓力、影響備份伺服器的正常運行。
B.方便擴展。光碟庫連接到代理伺服器,然後代理伺服器連接到備份伺服器。這樣的連接形式,將備份伺服器與光碟庫隔離開,擴展光碟庫就不會影響備份伺服器。比如,原來只有一臺光碟庫,後來擴展到二臺。新加入的光碟庫,只需要通過代理伺服器反饋給備份伺服器即可。
圖1的另一種擴展形式如圖2所示,圖2中所示光碟庫設有多個。
註冊時,備份伺服器向代理伺服器請求光碟庫設備,代理伺服器會掃描後端光碟庫設備並將其狀態信息返回給備份伺服器。
備份伺服器會記錄下光碟庫狀態信息,並向用戶展示該信息,然後依據用戶的選擇,將不同的光碟庫劃分為不同的介質集。每個介質集至少包含一個光碟庫設備,也可以包含多個光碟庫設備,但同一個光碟庫設備不得同時包含在多個介質集中。
2、創建卷
介質集只是一個邏輯上的概念,應用並不能直接使用其存儲數據。介質集需要進一步劃分為卷,卷作為存儲單元提供給上層應用使用,介質集並不為上層應用感知。在創建卷的時候,需要分配光碟匣給卷、指定raid級別、副本數目等信息。
一個卷可以擁有多個光碟匣(光碟匣是光碟的集合,包含多張光碟),也可以不擁有任何光碟匣。不擁有任何光碟匣的卷容量為零,是無法存儲數據的。由於卷的實際容量是由其包含的光碟匣決定的,因此,當卷的空間不足時,只需要簡單的給卷分配更多的光碟匣即可以實現卷擴容。同樣地,一個光碟匣也只能歸屬於一個卷。
介質集、光碟庫、卷和光碟匣的關係如圖3所示。
3、卷格式化
創建卷之後,還需要格式化,因為卷也只是一個邏輯上的概念,其本質上也只是一堆光碟匣的集合。而備份伺服器也只使用文件系統提供的接口。因此,必須有一個中間層,對上層應用提供通用的文件操作接口,並將數據刻錄到光碟庫設備中以及從光碟庫中讀取出來。
由二個組件來實現這個功能,對上層應用提供通過的文件操作接口使用s3ql網絡文件系統來實現,數據的刻錄及讀取由StorageService提供。
s3ql有以下特點:
a.透明性。s3ql文件系統提供與本地文件系統一致的接口和功能,對應用無須更改即可將數據保存到光碟庫中。
b.壓縮。在數據被實際傳送到光碟庫之前被壓縮以節約帶寬,提高傳輸效率。可以使用的壓縮算法有:LAMZ、bzip2和gzip。
c.加密。保障數據傳輸的安全性,被加密的數據是壓縮後的數據。
d.去重。對於相同的內容,只有一份數據被真實的傳輸到光碟庫中。
e.Copy-On-Write。在s3ql文件系統中複製一份數據時,初始並不會佔用任何額外的磁碟空間。只有當原數據或者被複製的數據發生了變更的時候,被變更的數據才會從原數據中分離,佔用相應的磁碟空間。
StorageService主要有以下功能:
a.響應s3ql的請求,準備從s3ql接收數據、或者向s3ql返回被請求的文件內容。
b.將數據刻錄到光碟庫中。
c.從光碟庫中讀取數據。
基於以下因素的考慮,StorageService必須能夠被單獨安裝運行:
a.由於光碟刻錄是連續的,一旦開始刻錄,數據必須被不斷的送往光碟庫,直到刻錄完成。因此,StorageService在收到s3ql傳送的數據時,不能立即開始刻錄,需要等數據被全部接收完成後才可以開始刻錄,從而StorageService需要開闢有磁碟緩存。這塊緩存可能會比較大,若直接部署在代理伺服器上面,可能會佔用代理伺服器較多的資源。
b.基於效率的考慮。相對磁碟讀取速度來講,無論是從光碟讀、還是往光碟寫,速度都太慢了。因此,若直接將接收到的數據刻錄到光碟庫,會拖慢系統的整體效率。更為嚴重的是,當一批數據刻錄沒有完成的時候,另一批數據無法開始刻錄,從而造成所有的歸檔數據只有串行。
加入Storage節點後的架構圖如圖4所示,包括依次連接的備份伺服器1、代理伺服器2、Storage伺服器4和光碟庫3,代理伺服器2可同時連接多個Storage伺服器4,每個Storage伺服器4連接有至少一個對應的光碟庫。
4、數據遷移到光碟庫
數據遷移到光碟庫是通過在備份伺服器上面創建的歸檔任務來完成的。在創建歸檔任務的時候,需要指定關聯的備份任務,即哪些備份數據需要歸檔,一個歸檔任務可以歸檔多個備份任務;歸檔的目的是哪個卷,即數據保存在哪個卷中;歸檔的周期,即什麼時候調度執行該歸檔任務。
歸檔的時候,除了將文件內容歸檔到光碟庫之外,還需要將文件屬性一併歸檔到光碟庫。這樣,當以後用戶需要查看原始文件時,就可以獲取與當時查看文件內容一致的體驗。
5、數據查詢下載
可以通過二種方式來查找藍光光碟庫中的對象。
a.通過絕對路徑來下載文件
這種方式是指用戶知道待下載的文件是在哪個備份任務在某個時間點備份的、是由哪個歸檔任務歸檔的。其操作方式類似於在windows系統中打開一個文件,即先進入D盤,然後雙擊進入某個目錄,最後再雙擊打開文件。
從歸檔的數據中下載文件時,用戶先指定歸檔任務,然後再選擇備份任務,接著選擇時間點,再進入文件所在目錄,最後選中該文件,並指定下載的目的地,最後點擊開始下載文件。
b.通過搜索來下載文件
這種方式是指用戶並不知道待下載文件保存在什麼路徑,甚至不確定該文件是否存在。只能先藉助搜尋引擎,通過關鍵字來確定該文件是否在光碟庫中。關鍵字包括但不限於:文件名字、文件大小、文件內容、歸檔日期、文件作者以及某些特殊的屬性。這種操作方式類似於通過Google搜索某個資源,然後根據搜尋引擎返回的連結來下載該資源。
為了實現這種下載方式,在數據被歸檔到當光碟庫時,必須複製一份給搜尋引擎進行解析。
加入搜尋引擎節點後的架構圖如圖5所示,包括備份伺服器1、代理伺服器2、Storage伺服器4、光碟庫3和搜尋引擎伺服器5,備份伺服器1、代理伺服器2、Storage伺服器4、光碟庫3依次連接,搜尋引擎伺服器5分別連接備份伺服器1和代理伺服器2。
如圖6所示,本發明的藍光光碟庫歸檔管理方法具體流程為:
1.Storage伺服器上電的時候,啟動掃描進程,在後臺每隔一小段時間,嘗試是否有光碟庫連接到伺服器上。若有光碟庫連接到伺服器上,則繼續獲取其狀態信息並記錄到資料庫中。
2.用戶通過備份控制臺發起註冊請求到代理伺服器。
3.代理伺服器收到註冊請求後,轉發該消息到所有的Storage伺服器進行處理。由於代理伺服器主要是進行消息轉發,因為,為了使描述簡潔,將略過這個步驟。
4.Storage伺服器收到註冊請求後,收集該伺服器上管理的光碟庫信息,並將結果返回給代理伺服器。
5.代理器伺服器在收集完所有Storage伺服器返回的消息後,將該消息轉發給備份伺服器。同第3步一步,後續的描述中,將忽略這一步驟。
6.備份軟體將收集到的光碟庫信息展示給用戶。用戶可以選擇註冊所有的光碟庫到備份伺服器中,也可以只選擇部分進行註冊。未註冊的光碟庫,在後續依然可以進行註冊。
7.備份軟體將用戶選擇的光碟庫信息註冊到備份伺服器中。
至此,註冊光碟庫到備份伺服器中的流程已完成。這個流程可以多次執行,以註冊新的光碟庫到備份伺服器中。下面描述創建卷的流程。
8.用戶通過備份軟體起起創建介質集操作。
9.備份軟體向用戶展示已註冊到備份伺服器中,並且沒有被分配到任何介質集中的光碟庫信息。
10.用戶輸入介質集名字、選擇被劃分給該介質集的光碟庫等必要信息。
11.備份軟體根據用戶輸入信息創建介質集。
12.用戶選擇介質集發起創建卷操作。
13.備份軟體遍歷該介質集包含的光碟庫,並向該光碟庫所屬的Storage伺服器發起查詢光碟匣請求。
14.備份軟體向用戶展示Storage伺服器返回的光碟匣信息。
15.用戶選擇被分配給該卷的的光碟匣。
16.備份軟體向Storage伺服器發起創建卷的請求。
17.待Storage伺服器返回創建捲成功後,備份軟體再向代理伺服器請求創建s3ql文件系統。s3ql是一個網絡文件系統,本質上可以安裝在任何一臺伺服器上面,但為了使描述簡潔,在這個實施例中,s3ql被安裝在代理伺服器上面。
至此,創建卷的流程已完成,光碟庫已準備好,隨時可以向應用提供服務。這個流程可以多次執行,以創建新的卷。下面描述數據歸檔過程。
18.用戶通過備份軟體發起創建歸檔任務操作,輸入歸檔任務名、待歸檔的備份任務、歸檔任務調度周期和歸檔策略。
19.備份軟體根據用戶輸入的信息創建歸檔任務。
20.待歸檔任務的調度周期來臨,調度進程啟動一個新的進程來執行該歸檔任務。
21.歸檔進程將待歸檔的數據從備份伺服器中讀出來,並根據歸檔策略過濾不滿足歸檔策略的數據後,將數據分成二份,一份發送給Storage進行保存,另一份發送到搜尋引擎進行解析。
22.搜尋引擎將解析後形成的索引數據,也發送給Storage進行保存。
至此,創建數據已從備份伺服器中歸檔到光碟庫中。下面描述數據下載過程。
23.用戶在瀏覽器中打開搜索服務地址,並向搜尋引擎提供搜索關鍵字。
24.搜尋引擎判斷本地緩存中是否存在完整的索引,若不存在,則向Storage服務請求索引數據。同時,向用戶提示,正在從光碟庫中加載索引數據。
25.待Storage伺服器返回了所有索引數據之後,搜尋引擎根據用戶輸入的關鍵字進行搜索,返回滿足條件的數據。
26.用戶選擇某些文件、下載路徑,然後點擊下載。
27.搜尋引擎向Storage伺服器發起文件下載請求,並將用戶選擇的待下載文件、保存路徑等信息作為參數傳遞過去。
28.Storage伺服器從光碟庫中讀取文件,並發送到用戶指定的下載路徑。