林田
摘要:福建省廣播影視集團廣播音頻網(wǎng)制播分離模式,將傳統(tǒng)制播一體的網(wǎng)絡一分為二,目的是使制作網(wǎng)與播出網(wǎng)相對獨立,播出網(wǎng)和制作網(wǎng)的故障互不影響,提高其安全性。文章通過對系統(tǒng)的解析及實際案例的展示來說明該模式的特點。
關(guān)鍵詞:數(shù)據(jù)庫 集中式 分布式 遷移
集中式數(shù)據(jù)庫是指運行在一臺機器上,不與其他計算機系統(tǒng)交互的數(shù)據(jù)庫系統(tǒng)。分布式數(shù)據(jù)庫是指數(shù)據(jù)庫存儲在多個計算機中,它們不共享公共的內(nèi)存或磁盤。其基本思想是將原來集中式數(shù)據(jù)庫中的數(shù)據(jù)分散存儲到多個通過網(wǎng)絡連接的數(shù)據(jù)存儲節(jié)點上,以獲取更大的存儲容量和更高的并發(fā)訪問量。①福建省廣播影視集團廣播音頻制作播出系統(tǒng)集合了兩種模式,并融合應用,有利于系統(tǒng)的運營和升級。
制播分離系統(tǒng)硬件架構(gòu)與數(shù)據(jù)庫概況
制作網(wǎng)分布于技術(shù)中心機房和各樓層制作間,播出網(wǎng)集中于直播區(qū),兩者通過光纖和中間服務器相連。制作網(wǎng)采用集中式存儲,以集群服務器帶陣列,在服務器上建立數(shù)據(jù)庫集中式數(shù)據(jù)庫“prolink”,所有制作網(wǎng)數(shù)據(jù)集中于此數(shù)據(jù)庫,而播出庫采用分布式存儲,各頻道獨立服務器,在每個服務器上獨立運行相應頻道數(shù)據(jù)庫,同時以兩個頻道為一組,建立一個文件互備,數(shù)據(jù)庫互備的備份冗余模式。
圖中,“prolink”為制作網(wǎng)集中式數(shù)據(jù)庫,“datamirror”為中間服務器的同步軟件,“rmt”為新聞廣播數(shù)據(jù)庫,“jjt”為經(jīng)濟廣播數(shù)據(jù)庫,“jtt”為交通廣播數(shù)據(jù)庫,“dnt”為東南廣播數(shù)據(jù)庫,“sht”為生活廣播數(shù)據(jù)庫,“yyt”為音樂廣播數(shù)據(jù)庫。
不論是集中式數(shù)據(jù)庫還是分布式數(shù)據(jù)庫,都是基于SQL2008。在制作服務器上搭建“prolink”數(shù)據(jù)庫,在此可以稱為“父數(shù)據(jù)庫”;在播出網(wǎng)內(nèi),各服務器上分別建立各頻率數(shù)據(jù)庫,可稱為“子數(shù)據(jù)庫”。子數(shù)據(jù)庫繼承了父數(shù)據(jù)庫所有特征,包括“表”“視圖”“可編程性”等均保持形式一致。
數(shù)據(jù)庫同步屬于單向同步,由“父數(shù)據(jù)庫”向“子數(shù)據(jù)庫”填充信息,與該頻道有關(guān)的信息將會寫入“子數(shù)據(jù)庫”。以生活廣播表“tchannel”為例,“prolink”庫中,表“tchannel”的列有“PKID_bakID”和“ChnName”,列值包含所有頻道信息。而播出網(wǎng)中的生活廣播服務器“子數(shù)據(jù)庫”——“sht”同樣包含表“tchannel”,列名相同,但列值卻有所不同,只包含和生活廣播有關(guān)的部分。由此可見,在同步過程中,對“父數(shù)據(jù)庫”“prolink”進行篩選分類,可以將各頻道內(nèi)容分門別類,化繁為簡。
各分布式數(shù)據(jù)庫間的關(guān)系
各個分布式數(shù)據(jù)庫分處于個獨立的播出服務器內(nèi),猶如兄弟姐妹,遺傳了prolink數(shù)據(jù)庫的特點,又有各自與眾不同的數(shù)據(jù),為本頻道的播出站以及錄制站的各個功能站點提供相應的服務。在此基礎(chǔ)上,為了系統(tǒng)利用最大化和容災備份的需求,在SQL server management studio中新建一個其他頻道的備份數(shù)據(jù)庫,并定期和主數(shù)據(jù)庫同步。仍然以生活廣播為例。
我們設定生活廣播服務器與音樂廣播服務器兩兩互備,如圖3所示,生活廣播服務器建立并運行主數(shù)據(jù)庫“sht”,存儲生活廣播的音頻文件,同時,在SQL中再建立一個數(shù)據(jù)庫“bakyyt”作為音樂廣播的備數(shù)據(jù)庫,并存儲音樂廣播的音頻文件。以此類推,在音樂廣播服務器上,建立并運行主數(shù)據(jù)庫“yyt”,存儲音樂廣播的音頻文件,再建立一個數(shù)據(jù)庫“baksht”作為生活廣播的備數(shù)據(jù)庫,并存儲生活廣播的音頻文件。主數(shù)據(jù)庫與備數(shù)據(jù)庫通過databasebak進行數(shù)據(jù)庫備份與數(shù)據(jù)庫還原實現(xiàn)同步,可以根據(jù)需求設置同步間隔,音頻文件通過filebak實現(xiàn)同步。
分布式數(shù)據(jù)庫下服務器擴容和數(shù)據(jù)庫遷移實例
隨著廣播的不斷發(fā)展,所需要的技術(shù)支持也逐日提升,因此擴容與升級勢在必行。福建廣播電視臺在分布式數(shù)據(jù)庫基礎(chǔ)上成功實現(xiàn)了服務器的擴容和數(shù)據(jù)庫的遷移,所有工作均在線操作,不影響正常播出。
項目源于福建廣播電視臺文藝廣播。2016年文藝廣播開播初期,時間短,人員緊,資源少,只好采用了與新聞廣播共享資源的辦法。在數(shù)據(jù)庫“rmt”下表tchannel中,insert一條新的數(shù)據(jù),ChnName為“文藝廣播”,并在該ID下的賬戶能夠共享ChnName為“新聞廣播”的數(shù)據(jù),也就是文藝廣播的賬戶能共享新聞廣播的音頻資料,實現(xiàn)文藝廣播在最快的時間內(nèi)開播。隨著文藝廣播自身的資料日益龐大,新聞廣播服務器顯得有些不堪重負,有必要將文藝廣播從新聞廣播中獨立出來。
新增一臺HPDL388Gen9服務器,容量1.63T,作為新聞廣播新服務器使用,同時新建新聞廣播數(shù)據(jù)庫“rmt”,將原數(shù)據(jù)庫遷移至新數(shù)據(jù)庫,并刪除數(shù)據(jù)庫中關(guān)于文藝廣播的數(shù)據(jù),建立新數(shù)據(jù)庫與制作網(wǎng)的同步通道。舊的新聞廣播服務器改為文藝廣播的服務器,將數(shù)據(jù)庫“rmt”改為“wyt”,更改制作網(wǎng)同步設置,只同步文藝廣播相關(guān)數(shù)據(jù)庫和文件。
方案設計與實施
利用數(shù)據(jù)庫備份與還原,將方案分塊,分步驟實施,平穩(wěn)過渡與切換。
一、新“rmt”數(shù)據(jù)庫實現(xiàn)制作網(wǎng)同步后,新聞廣播數(shù)據(jù)將在舊服務器與新服務器上同時同步。此時,將一臺播出站的訪問主服務器設為新服務器,備服務器為原服務器,全面測試新服務器及其數(shù)據(jù)庫功能。
二、通過測試后,所有新聞廣播站點所訪問的IP指向新服務器,數(shù)據(jù)庫指向新數(shù)據(jù)庫,脫離舊服務器。
三、著手更改舊服務器設置,待“wyt”數(shù)據(jù)庫建成后,所有文藝廣播站點指向“wyt”,而指向服務器IP仍然是原服務器不變。
總結(jié)
通過對福建廣播電視臺制播分離模式的剖析和對播出網(wǎng)數(shù)據(jù)庫的擴容遷移實例,可以看出分布式系統(tǒng)有三大特點。首先,降低了數(shù)據(jù)傳送代價。其次,系統(tǒng)的可靠性得到提高。因為當網(wǎng)絡出現(xiàn)故障時,仍然允許對局部數(shù)據(jù)庫的操作,而且一個位置的故障不影響其他位置的處理工作。第三,便于系統(tǒng)的擴充。②若在傳統(tǒng)的集中式數(shù)據(jù)庫中,在項目的實施時,服務器的更改與重啟,勢必影響其他頻道的正常播出,而分布式數(shù)據(jù)庫靈活多變,避免單一故障點,在系統(tǒng)維護尤其是系統(tǒng)擴容方面有著無與倫比的優(yōu)勢。
(作者單位:福建省廣播影視集團)
注釋:①戚洪江:《廣播中心播控技術(shù)》,《音響技術(shù)》,2006年增刊。
②百度百科:分布式數(shù)據(jù)庫,https://baike.baidu.com/。