中朋榮(北京)影音設(shè)備商貿(mào)有限公司
一. 概述
廣播電視的行業(yè)的視頻歸檔系統(tǒng)與其他行業(yè)的信息歸檔系統(tǒng)相比有長(zhǎng)期性存儲(chǔ),安全性要求高,數(shù)據(jù)密集,以及對(duì)成本敏感等鮮明的特點(diǎn),音視頻歸檔系統(tǒng)自本世紀(jì)初的前十年的發(fā)展,已經(jīng)形成了比較成熟的多級(jí)存儲(chǔ)層層遷移的系統(tǒng)體系結(jié)構(gòu),比較成功的解決了海量音視頻數(shù)據(jù)的歸檔存儲(chǔ)問題。但是,隨著廣播電視和影視行業(yè)的數(shù)字化進(jìn)程的不斷發(fā)展,高清音視頻采集設(shè)備以及高清視頻后期制作系統(tǒng)的廣泛應(yīng)用,對(duì)于長(zhǎng)期視頻歸檔系統(tǒng)的研究與設(shè)計(jì)提出的更嚴(yán)峻的挑戰(zhàn)。
二. 相關(guān)技術(shù)發(fā)展現(xiàn)狀
隨著近年來磁盤技術(shù)的飛速發(fā)展,磁盤存儲(chǔ)性能越來越高,價(jià)格越來越低,侵蝕了大量原屬于磁帶的市場(chǎng)領(lǐng)地,在視頻歸檔領(lǐng)域中,也有越來越多的系統(tǒng)使用磁盤作為數(shù)據(jù)的核心存儲(chǔ)。但是,隨著廣播電視領(lǐng)域的高清技術(shù)的普及,高清電視節(jié)目制作和播出,對(duì)視頻歸檔系統(tǒng)的能力提出了更高的要求。使用高清HDTV(1920×1080)格式(MPEG-4 120-185Mb/s)單位時(shí)間內(nèi)所需要存儲(chǔ)容量是標(biāo)清(MPEG-2 25Mb/s-50Mb/s)制式的3到6倍。雖然磁盤系統(tǒng)能夠比磁帶技術(shù)提供更高效的隨機(jī)數(shù)據(jù)的訪問能力,但是視頻歸檔系統(tǒng)的設(shè)計(jì)特性決定了90%以上存入磁盤的數(shù)據(jù)都不會(huì)被訪問,與此同時(shí),根據(jù)權(quán)威機(jī)構(gòu)統(tǒng)計(jì),磁盤存儲(chǔ)數(shù)據(jù)所消耗的能耗是磁帶的29倍,即使是在應(yīng)用20:1重復(fù)數(shù)據(jù)刪除后的情況下,磁盤存儲(chǔ)的成本仍然是磁帶的5倍。如果將90%的視頻數(shù)據(jù)使用存儲(chǔ)到耗能不那么高,維護(hù)成本低,存儲(chǔ)有效期長(zhǎng)的磁帶介質(zhì)上,則無疑可以大幅度降低視頻歸檔系統(tǒng)的成本。

目前數(shù)據(jù)磁帶技術(shù)主要有三種磁帶標(biāo)準(zhǔn),分別為AIT,DLT和LTO系列,其中LTO標(biāo)準(zhǔn)是有HP公司,IBM公司和希捷公司聯(lián)合提出的公開標(biāo)準(zhǔn),已經(jīng)占據(jù)了絕大多數(shù)的市場(chǎng)份額。目前基于LTO標(biāo)準(zhǔn)的Ultrium磁帶格式能夠提供單盤磁帶TB級(jí)別的數(shù)據(jù)存儲(chǔ)能力。目前LTO磁帶技術(shù)已經(jīng)發(fā)布到第五代,提供1.5TB的未壓縮容量,而整個(gè)LTO技術(shù)的路線圖在2010年4月10日發(fā)布到第八代,提供12.8TB的未壓縮容量。而LTO磁帶技術(shù)從2000年起,基本嚴(yán)格按照以兩年更新一代的速度發(fā)布,按此速度,在2016年單盤磁帶將會(huì)有10TB以上的存儲(chǔ)容量,而每TB的存儲(chǔ)成本將會(huì)在30元以下。另一方面,磁帶技術(shù)也有比較明朗的前景,在IBM的實(shí)驗(yàn)室中,IBM和Fujifilm的科學(xué)家已經(jīng)在一原型磁帶上實(shí)現(xiàn)了每平方英寸295億比特的存儲(chǔ)記錄,也就是說不遠(yuǎn)的將來采用鋇鐵氧體顆粒的雙面磁質(zhì)磁帶將可以使磁帶盒的容量增加到35TB的未壓縮數(shù)據(jù)。相比與高容量硬盤,磁帶有壽命長(zhǎng),離線存儲(chǔ),運(yùn)輸不易損壞等優(yōu)點(diǎn),但是也有順序讀寫限制,訪問效率低等缺點(diǎn)。
三. 視頻歸檔系統(tǒng)存儲(chǔ)長(zhǎng)期性特點(diǎn)
構(gòu)建真正有效的歸檔是能夠按照當(dāng)前最合適的分類方式分類和索引數(shù)據(jù),并且提供合適的工具檢索和取出歸檔的內(nèi)容。歸檔的意義在于系統(tǒng)化的收集和保存對(duì)“未來”有價(jià)值的內(nèi)容。歸檔的最基本的一樣在于長(zhǎng)期性保存,無論是模擬視頻還是數(shù)字化的視頻都需要存儲(chǔ)在介質(zhì)上,而目前可用的存取介質(zhì)主要是磁性介質(zhì)(硬盤,磁帶)和光學(xué)介質(zhì)(光盤),其物理特性和技術(shù)發(fā)展規(guī)律決定了,不可能存在永遠(yuǎn)有效的存儲(chǔ)技術(shù)。目前數(shù)據(jù)的長(zhǎng)期性保護(hù)主要是通過數(shù)據(jù)遷移和仿真實(shí)現(xiàn)的。數(shù)據(jù)遷移是指當(dāng)介質(zhì)和存儲(chǔ)方式在失效之前,將其從舊介質(zhì)中遷出,重新歸檔入新的存儲(chǔ)方式之中;而仿真則是通過軟硬件的方式,模擬已經(jīng)失效的設(shè)備,使其內(nèi)容能夠繼續(xù)被使用。但是由于仿真本身有許多硬件和應(yīng)用場(chǎng)景的限制,因此絕大多數(shù)長(zhǎng)期視頻歸檔系統(tǒng),都是使用的數(shù)據(jù)遷移的方式,達(dá)到數(shù)據(jù)的長(zhǎng)期性保護(hù)的目的。
目前在視頻歸檔系統(tǒng)中使用的LTO3或者LTO4磁帶,實(shí)際上開始并不是面向視頻歸檔設(shè)計(jì)的,而是面向計(jì)算機(jī)行業(yè)中的數(shù)據(jù)備份應(yīng)用的,因此磁帶本身沒有元數(shù)據(jù)信息,其存儲(chǔ)內(nèi)容的數(shù)據(jù)描述實(shí)際上都存儲(chǔ)在第三方開發(fā)的數(shù)據(jù)庫(kù)當(dāng)中,對(duì)于磁帶中的內(nèi)容,必須結(jié)合相對(duì)應(yīng)的數(shù)據(jù)庫(kù)甚至應(yīng)用軟件和運(yùn)行環(huán)境才能讀出。LTO5之前的數(shù)據(jù)磁帶,借助如Unix/Linux中的tar資料打包指令,可以建立具有自我描述性的磁帶備份復(fù)本,但tar命令做不到視頻歸檔系統(tǒng)所必須的立即可用的要求,仍然必須將磁帶中的資料解回到硬盤上、回復(fù)成原始文件以后,才能操作這些文件。某些廠商曾經(jīng)推出一些可讓磁帶擁有類似硬盤檔案即時(shí)操作功能的軟體,如XenData公司專供數(shù)位影像應(yīng)用的XenData Archive產(chǎn)品,Qumtum公司的SNSM系統(tǒng),國(guó)內(nèi)中科大洋公司和索貝數(shù)碼公司的視頻資料庫(kù)產(chǎn)品。這些產(chǎn)品的基本思路是將磁帶資料分割成小區(qū)塊、并預(yù)先讀入硬盤緩沖區(qū)的方式,讓使用者無須完整恢復(fù)磁帶資料,就能以類似操作硬盤文件的方式,利用多媒體播放軟體直接播放磁帶中儲(chǔ)存的視頻資料。然而問題在于,這類技術(shù)雖然一定程度解決了磁帶資料非立即可用的問題,可允許使用者以類似硬盤的方式直接存取磁帶資料,但必須在這些廠商采用專屬格式與存取技術(shù)的應(yīng)用軟件下才能生效,所以是非共通性的。而LTO-5和 LTFS線性磁帶文件系統(tǒng)的技術(shù),正是回應(yīng)這個(gè)需求而出現(xiàn)的。
四. LTO5和LTFS技術(shù)的分析與研究
2010年1月,IBM與其他廠商聯(lián)合宣布推出最新一代的線性磁帶開放協(xié)議(LTO)磁帶技術(shù)—Ultrium 5磁帶驅(qū)動(dòng)器,簡(jiǎn)稱LTO5技術(shù),除了性能和存儲(chǔ)容量指標(biāo)的提高外,LTO系列磁帶第一次引入了分區(qū)功能,并且利用分區(qū)功能IBM推出了IBM Long Term File System(IBM長(zhǎng)期文件系統(tǒng),簡(jiǎn)稱LTFS)技術(shù)使得我們可以用類似磁盤或其他移動(dòng)媒介的方式來瀏覽和訪問磁帶文件。系統(tǒng)可以把磁帶當(dāng)作硬盤驅(qū)動(dòng)器一樣載入。LTO5和LTFS技術(shù)的出現(xiàn)對(duì)視頻歸檔、醫(yī)療圖像存儲(chǔ)、電子發(fā)現(xiàn)等行業(yè)都有重要的意義,值得深入的研究。
1.LTO5技術(shù)
LTO5技術(shù)是基于Ultrium磁帶格式的第五代線性開放磁帶規(guī)格,單卷容量提高到1.5TB,傳輸速率可達(dá)140MB/s。與上代LTO4技術(shù)相比,除了容量增加了700G,傳輸速率增長(zhǎng)了20MB/s以外,最重要的技術(shù)革新是LTO5技術(shù)的磁帶分區(qū)(Partitioning)功能,LTO-5磁帶機(jī)可為磁帶提供2個(gè)磁帶分割區(qū)。

LTO-5磁帶上下兩端邊緣是用于磁頭定位的servo band占用,在servo band中間共含用于記錄資料的1280條資料磁道(track)。這些磁道是以磁道組(track group)為單位來記錄資料,每個(gè)磁軌組中的16條磁軌將被同時(shí)記錄資料。以相同方向記錄資料的磁軌組被稱為線帶(Wrap),LTO-5磁帶共含有80條Wrap,其中40條是由前往后正向記錄資料,40條是由后往前反向記錄資料,每條Warp可以存儲(chǔ)18.75GB的數(shù)據(jù)。

LTO-5磁帶出廠預(yù)設(shè)的格式是只有1個(gè)80條Wrap的分區(qū),但可在驅(qū)動(dòng)器Firmware的控制下格式化為2個(gè)分區(qū),每個(gè)分區(qū)最小為2個(gè)Wrap,最大為76個(gè)Wrap,2個(gè)分區(qū)之間以Guard Wrap作為分隔,這個(gè)Guard Wrap大約會(huì)占用2.5%的總?cè)萘俊R韵聢D為例,在紅色Guard Wrap上方的是分區(qū)0,下方的則是分區(qū)1。
若應(yīng)用程序支持分區(qū)功能,將可同時(shí)使用2個(gè)分區(qū);若不支持分區(qū)功能,則應(yīng)用程序只能識(shí)別分區(qū)0,只有分區(qū)0會(huì)被寫入資料,所以此時(shí)是以只作一個(gè)分區(qū)0較為有利,可更充分地利用磁帶容量,因此在LTFS文件系統(tǒng)的應(yīng)用程序?qū)?分區(qū)作為元數(shù)據(jù)存儲(chǔ)的分區(qū)。
2.LTFS原理
根據(jù)IBM研究人員David Peace、Arnon Amir在論文中介紹,一個(gè)LTO5磁帶在邏輯上作為一個(gè)卷的形式提供數(shù)據(jù)存儲(chǔ)應(yīng)用。一個(gè)LTFS卷由兩個(gè)LTFS分區(qū)組成,LTFS將兩個(gè)分區(qū)分別用作數(shù)據(jù)分區(qū)和索引分區(qū)。根據(jù)上文所述LTO5的物理特點(diǎn),索引分區(qū)可以認(rèn)為是位于磁帶的“最末端”,而不像磁盤一樣位于磁盤的頭部。

而每個(gè)分區(qū)在存儲(chǔ)實(shí)際內(nèi)容區(qū)域之前都有一個(gè)標(biāo)簽結(jié)構(gòu)存儲(chǔ)區(qū)(Label Construct)。如上圖所示:
標(biāo)簽結(jié)構(gòu)存儲(chǔ)區(qū)由ANSI VOL1標(biāo)簽區(qū)和LTFS標(biāo)簽區(qū)組成。如左圖:
ANSI VOL1標(biāo)簽區(qū)實(shí)際上是一個(gè)80個(gè)字節(jié)的長(zhǎng)度的有固定格式記錄。而LTFS標(biāo)簽區(qū)則是一段類似下文的XML格式的數(shù)據(jù)。
<?xml version="1.0" encoding="UTF-8"?>
<ltfslabel version="1.0">
<creator>IBM LTFS 0.20 - Linux - mkltfs</creator>
<formattime>2010-02-01T18:35:47.866846222Z</formattime>
<volumeuuid>30a91a08-daae-48d1-ae75-69804e61d2ea</volumeuuid>
<location>
<partition>b</partition>
</location>
<partitions>
<index>a</index>
<data>b</data>
</partitions>
<blocksize>1048576</blocksize>
<compression>true</compression>
</ltfslabel>
標(biāo)簽結(jié)構(gòu)存儲(chǔ)區(qū)后面是實(shí)際內(nèi)容區(qū)域(Content Area),在索引分區(qū)和數(shù)據(jù)分區(qū)的內(nèi)容區(qū)域(Content Area)存儲(chǔ)方式存在一些差別。索引分區(qū)里面存儲(chǔ)的是索引結(jié)構(gòu)(Index Construct),其索引結(jié)構(gòu)也是一段XML格式的數(shù)據(jù),描述文件的目錄結(jié)構(gòu)和存儲(chǔ)區(qū)塊信息。當(dāng)刪除或者更新文件時(shí),由于磁帶的線性特性,數(shù)據(jù)沒有實(shí)際上被刪除或者更新,而是重新生成了一個(gè)變化了的索引結(jié)構(gòu)(Index Construct)插入在之前的索引結(jié)構(gòu)(Index Construct)后面,如下圖所示。

同時(shí),在數(shù)據(jù)分區(qū)中也插入了一個(gè)同樣的索引結(jié)構(gòu),放在當(dāng)前數(shù)據(jù)內(nèi)容的最后面,數(shù)據(jù)分區(qū)的情況如下圖所示意。

另外,值得注意的是LTFS的索引結(jié)構(gòu)(Index Construct)的XML,提供了擴(kuò)展屬性字段(extendedattributes),通過利用XML的可擴(kuò)展特性為L(zhǎng)TFS內(nèi)存儲(chǔ)的文件添加更加復(fù)雜的描述信息,能夠存儲(chǔ)UTF格式的字符串和base64編碼的二進(jìn)制數(shù)據(jù),在基于LTO5的視頻歸檔系統(tǒng)的設(shè)計(jì)中,可以利用此可擴(kuò)展字段存儲(chǔ)視頻的部分或者全部的元數(shù)據(jù)描述。
3.LTO5結(jié)合 LTFS實(shí)驗(yàn)與測(cè)試
為了驗(yàn)證LTFS效率的可用性和實(shí)際使用效率,參考《The Linear Tape File System》一文中實(shí)驗(yàn)設(shè)計(jì),進(jìn)行了LTFS主要特性的實(shí)驗(yàn)和測(cè)試工作。
·實(shí)驗(yàn)環(huán)境
采用一臺(tái)IBM 3573 2U磁帶庫(kù),使用ULT3580-HH5半高LTO5驅(qū)動(dòng)器,內(nèi)置256MB緩沖區(qū),測(cè)試用主機(jī)是HP DL380 G5服務(wù)器,雙路四核的處理器(2*4核 Intel E5320運(yùn)行在1.86GHz),8G內(nèi)存,4G光纖HBA卡。軟件環(huán)境是Centos Linux 5.5版本, lin_tape磁帶庫(kù)驅(qū)動(dòng)1.41.1版本,LTFS文件系統(tǒng)1.0.1版本(于2010年8月13日發(fā)布)。
·實(shí)驗(yàn)工具
為了避免本地硬盤性能成為IO瓶頸,使用C++和QT編寫讀取和寫入測(cè)試工具,讀取的目的地和寫入的源都是主機(jī)內(nèi)存,通過4G光纖讀寫EMC CX960盤陣測(cè)試,能夠達(dá)到220MB/s的讀取速度,和210MB/s左右的寫入速度,遠(yuǎn)大于LTO5的讀寫帶寬。
·實(shí)驗(yàn)記錄
(1)基礎(chǔ)讀寫效率測(cè)試:在格式化好的空白LTO5驅(qū)動(dòng)器上面寫入1GB大小的文件。然后將其完整讀取。測(cè)試6次后,取結(jié)果如表3:

因?yàn)榇艓ёx取文件需要進(jìn)行倒帶操作,在磁帶上進(jìn)行定位(Seeking),才開始讀取或者寫入數(shù)據(jù),而Seeking操作耗費(fèi)了絕大多數(shù)時(shí)間。
(2)隨機(jī)數(shù)據(jù)讀寫測(cè)試:在LTO5磁帶中,寫入100個(gè)1GB左右的不同內(nèi)容的視頻文件,然后隨機(jī)選取一個(gè)視頻文件進(jìn)行讀取,在寫入一個(gè)1GB左右的視頻文件。測(cè)試6次后,取結(jié)果如表4:

在隨機(jī)讀寫的時(shí)候,最大帶寬影響不大,但是在磁帶上進(jìn)行定位(Seeking)的時(shí)間有了明顯的增加。
(3)實(shí)際文件讀寫性能測(cè)試
通過測(cè)試工具控制,在寫入第一個(gè)文件塊時(shí)不進(jìn)行計(jì)時(shí),直到第一個(gè)文件塊寫入成功后再進(jìn)行計(jì)時(shí),進(jìn)行所謂“熱身”操作,測(cè)試實(shí)際的1GB大小的文件讀取和寫入效率,整理結(jié)果如表5:

在測(cè)試是發(fā)現(xiàn),在使用LTFS寫入時(shí),數(shù)據(jù)不是連續(xù)寫入,而是在先以130MB/s的左右速度讀寫1秒,然后等待1秒左右,進(jìn)行下一次讀寫。因此測(cè)試的結(jié)果是標(biāo)稱的LTO5帶寬140MB/s的一半左右。可能與ULT3580-HH5驅(qū)動(dòng)器只有256M帶寬有關(guān)或者與LTFS軟件本身緩沖區(qū)設(shè)置有關(guān)。
(4)磁帶上進(jìn)行定位(Seeking)的時(shí)間測(cè)試
通過以上的文件讀寫測(cè)試可以發(fā)現(xiàn),實(shí)際上耗費(fèi)時(shí)間的不是LTO5本身的讀寫帶寬,而是磁帶定位(Seeking)本身占用了絕大多數(shù)時(shí)間。因此需要對(duì)LTO5驅(qū)動(dòng)器和磁帶本身的定位(Seeking)效率進(jìn)行測(cè)試。

通過Seeking測(cè)試可以看出,從文件系統(tǒng)中選擇一個(gè)文件,而不管文件有多小,將耗費(fèi)1到2分鐘左右的時(shí)間。而實(shí)際上如果找到了文件,則讀寫速度還是非常快的,因此在視頻歸檔系統(tǒng)應(yīng)用LTFS和線性的磁帶必須慎重考慮磁帶定位時(shí)間這個(gè)重要因素。此外,在對(duì)IBM 3573 2U磁帶庫(kù)進(jìn)行測(cè)試時(shí),由帶庫(kù)機(jī)械臂將磁帶從插槽抓取到驅(qū)動(dòng)器,平均耗時(shí)大約在25秒至30秒的時(shí)間,因此可以看出,如果在磁帶庫(kù)中讀取一個(gè)不在驅(qū)動(dòng)器中的磁帶中的1G左右的文件大約耗費(fèi)時(shí)間的組成為:

按照平均情況,可以推算獲得一個(gè)存在帶庫(kù)中的1GB左右的視頻文件所耗費(fèi)的總時(shí)間t大約為2分鐘,而且讀取的文件越大,LTO5和LTFS的相對(duì)的效率就越高:
t=tmove+tmount+tseeking+treading
=25+10+80+15
=130秒
五.LTO5技術(shù)在視頻歸檔系統(tǒng)中應(yīng)用
使用LTO5和LTFS技術(shù)的歸檔系統(tǒng),能在存儲(chǔ)介質(zhì)失效前或者新的更大容量的存儲(chǔ)技術(shù)出現(xiàn)后,能夠靈活而高效率的實(shí)現(xiàn)數(shù)據(jù)遷移,而沒有明顯的業(yè)務(wù)中斷。同時(shí),通過直接通過物流傳遞LTO5磁帶的方式,可以在網(wǎng)絡(luò)條件較差的情況下實(shí)現(xiàn)高清視頻數(shù)據(jù)的線下傳輸。存儲(chǔ)了標(biāo)準(zhǔn)元數(shù)據(jù)信息的磁帶技術(shù),能夠提供較低成本的海量視頻歸檔數(shù)據(jù)解決方案。同時(shí)在設(shè)計(jì)基于LTO5或者其他使用磁帶介質(zhì)的歸檔系統(tǒng)時(shí),應(yīng)當(dāng)結(jié)合磁帶本身特性才能設(shè)計(jì)出高效率的視頻歸檔系統(tǒng)。
利用LTO5磁帶技術(shù),針對(duì)原有分級(jí)存儲(chǔ)的視頻歸檔系統(tǒng)存在的問題進(jìn)行改進(jìn),使其能滿足長(zhǎng)期視頻歸檔的要求。如在LTO5磁帶庫(kù)中,通過可以策略保證做到每盤磁帶都有自己的一個(gè)副本,這樣就能保證同一個(gè)視頻內(nèi)容在歸檔磁帶庫(kù)中有兩份數(shù)據(jù),一方面冗余數(shù)據(jù)保證了數(shù)據(jù)安全性,另一方面在磁帶介質(zhì)即將失效或者需要進(jìn)行大量數(shù)據(jù)遷移時(shí),可以直接取出副本磁帶,通過LTFS文件系統(tǒng)實(shí)現(xiàn)磁帶對(duì)磁帶的復(fù)制,從而實(shí)現(xiàn)了數(shù)據(jù)遷移,而在整個(gè)遷移過程中原有歸檔系統(tǒng)的保持正常服務(wù)。B&P