隨著媒體競(jìng)爭(zhēng)的不斷加劇,現(xiàn)在許多電視廣播機(jī)構(gòu)和制作公司都面臨著在降低運(yùn)營(yíng)成本的同時(shí)增加創(chuàng)收服務(wù)的挑戰(zhàn)。這使得許多廣播機(jī)構(gòu)和制作公司開(kāi)始重新評(píng)估他們的技術(shù)和工作流程,以期能開(kāi)發(fā)出更加有效且更加靈活的方式,以便能不僅將節(jié)目?jī)?nèi)容提供給傳統(tǒng)的廣播渠道播出,還向一些新出現(xiàn)的分配平臺(tái)提供。
這些用戶(hù)尋求的更高的效率很大部分依賴(lài)于工作流程整合的質(zhì)量和程度,而這需要得到高可用性的存儲(chǔ)平臺(tái)支持,這種存儲(chǔ)平臺(tái)應(yīng)該具備支持各種不同應(yīng)用的能力。為了滿(mǎn)足用戶(hù)對(duì)這種存儲(chǔ)越來(lái)越高的需求,Omneon公司開(kāi)發(fā)出了新的MediaGrid分布式共享存儲(chǔ)系統(tǒng)。
|
MediaGrid分布式共享存儲(chǔ)系統(tǒng) |
Omneon MediaGrid系統(tǒng)通過(guò)使用多臺(tái)智能的、互聯(lián)而又獨(dú)立的存儲(chǔ)服務(wù)器,而將網(wǎng)格存儲(chǔ)和網(wǎng)格計(jì)算技術(shù)組合使用,從而大大增強(qiáng)了用戶(hù)及整個(gè)廣播工作流程內(nèi)各環(huán)節(jié)存取數(shù)字媒體內(nèi)容的效率。MediaGrid系統(tǒng)提供了集中式的共享存儲(chǔ),該系統(tǒng)在容量、帶寬以及媒體處理能力等方面都具有擴(kuò)展性。其存儲(chǔ)容量可從幾個(gè)TB擴(kuò)展若干PTB(1000TB),且均在一個(gè)文件系統(tǒng)內(nèi),使用一個(gè)全局域名。數(shù)據(jù)存取帶寬也能容易地?cái)U(kuò)展至數(shù)百個(gè)Gb/s的總量。
MediaGrid系統(tǒng)采用模塊化設(shè)計(jì),它運(yùn)用工業(yè)標(biāo)準(zhǔn)的部件和連通性,是一種可充分?jǐn)U展,具高可靠性和成本效益的系統(tǒng)。系統(tǒng)內(nèi)部件間通過(guò)標(biāo)準(zhǔn)以太網(wǎng)通信,并能產(chǎn)生極高的整合帶寬供系統(tǒng)外部的客戶(hù)端使用,消除了傳統(tǒng)共享存儲(chǔ)系統(tǒng)的帶寬瓶頸問(wèn)題。每一個(gè)存儲(chǔ)部件同時(shí)又是一個(gè)媒體處理引擎,從而在保持內(nèi)容存在于存儲(chǔ)系統(tǒng)內(nèi)的同時(shí)將計(jì)算資源用于其他媒體處理應(yīng)用功能。MediaGrid還提供完全的數(shù)據(jù)保護(hù),以及硬件和軟件容錯(cuò)與恢復(fù)功能。
MediaGrid的存儲(chǔ)機(jī)理
MediaGrid之所以獨(dú)特且不同于以往的存儲(chǔ)解決方案,是因?yàn)樗\(yùn)用了“基于目標(biāo)”(object-based)的存儲(chǔ)技術(shù)。這種存儲(chǔ)技術(shù)使用“素材切片”(slices)作為基礎(chǔ)存儲(chǔ)元素。這些取自大容量媒體文件的“素材切片”為8MB大小的“智能目標(biāo)”(smart objects),每個(gè)都包含了壽命周期檢查CRC(cyclic redundancy check),主動(dòng)的一致性監(jiān)視與元數(shù)據(jù)冗余,以確保端到端的數(shù)據(jù)一致性。恒定的CRC檢查確保了任何隨機(jī)數(shù)據(jù)癱瘓或丟失都能被及時(shí)發(fā)現(xiàn)并實(shí)施自動(dòng)糾正,在大多數(shù)情況下能在該文件被存取前發(fā)現(xiàn)和修復(fù)。
與傳統(tǒng)RAID系統(tǒng)中的“塊”(blocks)不同,MediaGrid系統(tǒng)中的“素材切片”包含了系哪個(gè)文件及該素材處于此文件中具體位置的信息。這種信息的使用增強(qiáng)了系統(tǒng)的智能性,提供了層級(jí)冗余用來(lái)全面檢測(cè)文件系統(tǒng)的一致性。系統(tǒng)存在閑置帶寬時(shí),MediaGrid會(huì)主動(dòng)監(jiān)視系統(tǒng)內(nèi)的“素材切片”的健全性,這一過(guò)程能大大降低未被檢測(cè)到的數(shù)據(jù)丟失,并能自動(dòng)恢復(fù)丟失的數(shù)據(jù)。
MediaGrid的系統(tǒng)部件
MediaGrid的兩個(gè)重要運(yùn)行部件是ContentDirector和ContentServer。其中ContentDirector提供對(duì)數(shù)據(jù)/存儲(chǔ)的控制,而ContentServer用來(lái)控制對(duì)數(shù)據(jù)/存儲(chǔ)的實(shí)際存取操作。一般來(lái)說(shuō),客戶(hù)端(應(yīng)用)在與ContentDirector交互,要求控制類(lèi)服務(wù)如“打開(kāi)文件”時(shí),ContentDirector會(huì)將客戶(hù)端的請(qǐng)求轉(zhuǎn)給一臺(tái)或多臺(tái)ContentServer進(jìn)行數(shù)據(jù)存取或文件讀取(file read)。配備了這一組ContentServer的系統(tǒng),客戶(hù)端可直接與ContentServer進(jìn)行交互。
ContentServer
ContentServer是任何MediaGrid系統(tǒng)的主要組成。ContentServer不僅包含了系統(tǒng)的存儲(chǔ),還能監(jiān)控存儲(chǔ)于其內(nèi)的內(nèi)容及“素材切片”,參與構(gòu)建分布式文件系統(tǒng),針對(duì)基于網(wǎng)格技術(shù)的應(yīng)用提供可用的CPU計(jì)算能力。每臺(tái)ContentServer都與一臺(tái)或多臺(tái)ContentDirector之間建立有通信,以便隨時(shí)獲取硬盤(pán)狀態(tài)、“素材切片”等的更新信息。這些ContentServer還與客戶(hù)端聯(lián)網(wǎng),且在文件復(fù)制時(shí)與其他ContentServer聯(lián)網(wǎng)。
當(dāng)客戶(hù)端請(qǐng)求寫(xiě)入一段特定的數(shù)據(jù)信息時(shí),ContentServer的“Message Manager”(信息管理器)工具將負(fù)責(zé)接收這樣的請(qǐng)求并將之傳遞給本地“Slice Manager”(切片管理器),后者用來(lái)控制與“素材切片”直接相關(guān)的操作/動(dòng)作,并直接管理硬盤(pán)。當(dāng)復(fù)制請(qǐng)求提出時(shí),Message Manager會(huì)向另一臺(tái)ContentServer提出一個(gè)復(fù)制請(qǐng)求,這一過(guò)程在所有復(fù)制完成后會(huì)不停地重復(fù)。在接收到來(lái)自其他ContentServer的請(qǐng)求后,Message Manager會(huì)答復(fù)客戶(hù)端。
一種稱(chēng)為“idle time”的管理程序用來(lái)管理包括數(shù)據(jù)驗(yàn)證和刪除“素材切片”在內(nèi)的多種功能。數(shù)據(jù)驗(yàn)證時(shí),系統(tǒng)會(huì)讀取每一個(gè)“切片”以確保“切片”數(shù)據(jù)仍可存取(讀取)及有效(CRC檢查)。只要是任何一項(xiàng)檢查出問(wèn)題,該“切片”都會(huì)被標(biāo)志為無(wú)效,隨后,對(duì)該“素材切片”的再?gòu)?fù)制過(guò)程會(huì)啟動(dòng)。這種積極的硬盤(pán)/數(shù)據(jù)驗(yàn)證確保在實(shí)際文件讀取過(guò)程中不會(huì)出現(xiàn)潛在的錯(cuò)誤。
ContentDirector
ContentDirector用來(lái)管理MediaGrid系統(tǒng)內(nèi)的通信,運(yùn)行一些應(yīng)用,維護(hù)和監(jiān)控與ContentServer有關(guān)的素材進(jìn)出。ContentDirector之間采用環(huán)狀拓?fù)浣Y(jié)構(gòu)聯(lián)網(wǎng),使用一個(gè)標(biāo)記作為控制點(diǎn)。運(yùn)行于ContentDirector內(nèi)的應(yīng)用都與運(yùn)行于其他ContentDirector內(nèi)的應(yīng)用歸為一組,以便相互間能夠?qū)崿F(xiàn)協(xié)同運(yùn)轉(zhuǎn)。
Slice Server Manager(SSM)(切片服務(wù)器管理程序)負(fù)責(zé)切片的分配,切片的再?gòu)?fù)制以及整個(gè)系統(tǒng)內(nèi)的ContentServer 成員管理。切片分配基于ContentServer的可用性、系統(tǒng)負(fù)載、可用容量以及ContentServer編組情況。實(shí)際的可用硬盤(pán)空間以“卷”(volumes)或文件系統(tǒng)(file systems)予以管理。“卷”由一個(gè)或多個(gè)“組”(group)構(gòu)成,其中的每個(gè)“組”又由一臺(tái)或多臺(tái)ContentServer構(gòu)成。一個(gè)“組”也可能分為多個(gè)“卷”。定義這種關(guān)系的“表”(tables)由SSM管理,SSM也負(fù)責(zé)識(shí)別哪些未用的“素材切片”可用新的切片替換。
MediaGrid拓?fù)浣Y(jié)構(gòu)與連通性
MediaGrid的核心是其靈活的分布式文件系統(tǒng),這種文件系統(tǒng)設(shè)計(jì)用來(lái)滿(mǎn)足特殊的超大文件管理的需求。面對(duì)客戶(hù)端時(shí),它是一種單體的大型文件系統(tǒng),但事實(shí)上卻起著潛在的數(shù)百個(gè)分布式文件系統(tǒng)的作用。MediaGrid文件系統(tǒng)包含兩個(gè)邏輯組成,一個(gè)是實(shí)際文件數(shù)據(jù),另一個(gè)是元數(shù)據(jù)。元數(shù)據(jù)被本地存儲(chǔ)在ContentDirector中的鏡像硬盤(pán)內(nèi)。
元數(shù)據(jù)的變化使用“Journal”跟蹤,“Journal”是一種簡(jiǎn)單的字節(jié)流,它用來(lái)記錄所有有關(guān)系統(tǒng)的修改,在需要ContentDirector恢復(fù)的情況下可作為參照使用。實(shí)際文件數(shù)據(jù)存儲(chǔ)在ContentServer硬盤(pán)中的多個(gè)位置。因?yàn)樾枰衅蛷?fù)制的原因,多個(gè)客戶(hù)端都能夠從任何可用的ContentServer存取任意文件的任意切片。這種能力減少了對(duì)系統(tǒng)資源的爭(zhēng)用,因此提高了MediaGrid的整體系統(tǒng)性能表現(xiàn)。
MediaGrid由多個(gè)IP網(wǎng)絡(luò)構(gòu)成,其中各ContentDirector之間是相互聯(lián)網(wǎng)的關(guān)系,為環(huán)狀網(wǎng)絡(luò)拓?fù)洌峁┫到y(tǒng)冗余性。ContentDirector與ContentServer以網(wǎng)形網(wǎng)絡(luò)拓?fù)渎?lián)網(wǎng),兩個(gè)網(wǎng)形網(wǎng)絡(luò)在各系統(tǒng)部件間提供了冗余。
&