楊湘浩,胡力旗
(1.上海工程技術大學 管理學院,上海 201620;2. 上海全景數字技術有限公司,上海 200083)
無共享架構的智能互動電視平臺設計與研究
楊湘浩1,胡力旗2
(1.上海工程技術大學 管理學院,上海 201620;2. 上海全景數字技術有限公司,上海 200083)
隨著業務的日趨復雜,用戶規模的快速增長,現有互動電視平臺的架構技術已難以滿足其業務需求。對當前互動電視平臺的業務進行深入研究,并借鑒互聯網應用的架構技術,提出無共享架構的智能互動電視平臺設計方案,據此研發出相應的原型系統。實踐結果表明,無共享架構的智能電視互動平臺具有高并發性、高可用性、高可擴展性和低成本等特點,非常適合大規模的商業應用。
互動電視;數字電視;無共享架構;架構設計
隨著計算機和手機相繼互聯網化,三屏之一的電視網絡化和智能化成為大勢所趨。在國內“三網融合”進入推廣期的背景下,運營商們圍繞“智慧家庭”市場的爭奪戰日趨激烈,電信、廣電業務相互滲透融合,互聯網內容商向終端延伸,產業邊界越來越模糊。原先以交互電視為主要內容的廣電互動電視平臺,與新一代互聯網、云計算、智能傳感和衛星定位等技術的結合,不僅可以實現傳統的互動電視業務,還可以實現對家庭智能設備進行識別、監控和管理。傳統的互動電視平臺被賦予了新的含義,逐漸發展成為跨平臺和跨產品形態的智能互動電視平臺[1-2]。
新一代的互動電視平臺具有如下主要特點:業務復雜,不僅要支持傳統電視相關業務,還需要支持多種新媒體及智能家居相關功能;高并發性,隨著業務的快速發展,互動電視的用戶基數及并發訪問量會迅速增大;高可用性,需具備更高的可用性,要求平臺能夠提供7×24小時不間斷的服務;高可擴展性,業務發展迅速,要求平臺能快速適應變化;海量數據,數據量日益巨大,不僅需要關系型數據庫,也可能需要非關系型NoSQL數據庫[3-4]。現有互動電視平臺大多從廣電傳統的VOD系統演化過來的,難以適應新形勢下的互動電視的快速發展。無共享架構技術是一種提供高性能和高可用性的主流技術,在互聯網應用中已經得到廣泛應用和驗證,本文將其應用于智能互動電視的平臺設計中。
無共享架構(Shared Nothing Architecture,SNA)是一種分布式計算架構。在SNA架構中,每個節點都是獨立和自給的,而且在整個架構中沒有單點競爭。SNA架構技術是當前互聯網應用開發中的主流技術,究其原因,SNA架構技術可以提供更高的擴展性、并發性和可用性,谷歌系統就是采用SNA架構技術的很好例子。在一個純SNA架構的平臺中,通過簡單地增加一些廉價的節點,就可以實現理論上的平臺無限擴展。在無共享架構的平臺研發中,為了實現無單點競爭,設計人員通常會將數據分布到不同的數據庫或者讓每個節點保留數據備份。對于狀態型的應用(通常需要將狀態集中保存),在采用SNA架構技術時業界通常采用數據網格或分布式Cache技術。
無共享架構技術起源于互聯網應用。在互聯網應用的初期,系統用戶數量不大,Service層和Web層混合在一起,一般部署在統一的服務器中。隨著用戶數量的不斷增加,應用處理的業務的復雜度越來越高,導致應用服務(Service)層的訪問壓力越來越大。為了應對這種壓力增長,Web層和Service層逐漸分離,系統被分拆成為多個模塊,每個模塊之間通過一些簡單的通訊協議進行交互,例如Webservice,Http Rest和RMI等,這樣就形成了簡單的分布式架構。隨著用戶數量和業務復雜度的進一步增加,系統組件的依賴度越來越高,系統中的服務調用向網狀形式發展,從而導致系統耦合度急劇上升,造成版本升級和維護困難。在此種情況下,逐漸出現了分布式總線技術。分布式服務總線(Distribute Service Bus)的出現是一個互聯網應用成熟的標志。這樣,無共享架構技術就逐漸形成。目前支持無共享架構技術的分布式框架主要有Facebook的Thrift,Apache的avro,Google 的Protobufer,淘寶網的Dubbo等[5-8]。

圖1 互動電視的架構演變階段
傳統的互動電視平臺是基于廣電HFC網絡和寬帶網絡,以電視機和機頂盒作為主要的接收終端,提供包括電視節目在內的互動數字媒體服務,例如視頻點播(VOD),網絡錄像機(nPVR),時移電視(TimeShift)和卡拉OK等。在新技術和市場需求的推動下,互動電視平臺業務得到快速發展。現有互動電視平臺已經集生活、娛樂和控制于一體,既能提供基本的娛樂服務,也能實現對家庭相關智能設備的控制,如計算機、照明系統、廚房設備和保安系統等,它使家庭變得更加智能、舒適、安全、高效和節能。
主要功能需求有:
1)實現多種資源的統一管理,構建完善的多媒體分發網絡;
2) 實現對智能家庭相關的智能設備的控制和管理等;
3) 實現多種服務和產品的統一定義、打包及捆綁銷售等;
4) 實現3A認證及融合計費,支持包月、按使用量等多種計費方式;
5) 支持媒體資產管理、媒體資產運營管理、交互終端管理及會話和資源管理等;
6) 提供靈活多樣的用戶接觸界面,支持門戶、EPG和APP等多種形式;
7) 具備完善的監控體系,能夠對自身網絡和系統進行實時監控。
主要非功能需求有:
1) 高并發性,支持大規模用戶的實時并發操作。
2) 高可用性,提供7×24小時的高可用性。
3) 互操作性強,關鍵組件松耦合,滿足不同供應商之間的設備互動。
4) 高可靠性,具有完備的容錯及錯誤恢復能力。
5) 高可擴展性,支持系統的快速部署及橫向擴展。
6) 組網靈活性,支持集中、分布及混合式組網,適應不同場合的業務需求。
3.1 互動電視的架構演變
互動電視是數字電視和寬帶網絡技術相結合而產生的新一代電視,是電視科技和時尚生活的完美結合,可以提供可點播的高度個性化和互動性的精彩節目,為用戶帶來全新的收看體驗,讓用戶從“看電視”轉變成“用電視”,真正成為電視的主人。隨著互動電視的技術和業務的發展,其架構也在逐步演變。從架構上看,國內互動電視平臺大致經歷了三代。第一代是最初級階段的VOD,主要用于酒店和高檔社區等;第二代主要專注于VOD業務,屬于封閉系統,不適合業務的持續發展;第三代采用開放體系,支持業務的可持續發展,比較適合商業應用[9-10]。互動電視的架構演變階段如圖1所示。
3.2 無共享架構的系統設計
隨著業務的日趨復雜,互動電視平臺對并發性和擴展性要求越來越高,現有互動電視平臺的架構已經難以滿足其業務的快速發展。采用無共享架構技術后,將智能互動電視平臺分為4個層次:終端應用層、SNA架構服務層、云平臺層和云業務層。終端應用層是平臺和用戶的接口,可支持多種終端(如STB,PC,Smart Phone和Pad等)訪問服務且終端之間還可以進行互動,例如進行點播、購物、多屏切換和操控智能家居等。SNA架構服務層即無共享架構的服務層,采用分布式并行計算處理技術,用戶接入模塊和服務提供模塊采用多個功能相同的組件實現,通過負載均衡器進行交叉連接,可支持系統容量的線性擴展,解決整個平臺的單節點故障問題。對于用戶狀態信息的保存,采用多機冗余的Session的集中管理方式。云平臺層提供多媒體內容的云存儲功能。云業務層是各種具體業務應用的云方式實現。通過SNA架構的引入,可大大提高系統的可用性、可靠性和可擴展性。智能互動電視的平臺架構如圖2所示。

圖2 智能互動電視平臺的無共享架構
3.3 智能互動電視平臺的業務功能
從功能上,將智能互動電視平臺分為如下幾個部分:業務應用層、業務管理平臺和業務能力提供層,以及支持平臺運營的AMS系統(媒資管理系統)、CND網絡(內容分發網絡)和BOSS系統(業務運營支撐系統)。整個平臺的具體組成如圖3所示。以下簡述各部分的主要功能。

圖3 智能互動電視平臺的業務功能
1)能力提供層是平臺運營的基礎,主要提供視頻流服務、數據廣播、CA/3A/DRM、網絡、邊緣設備和智能家居服務等能力。
2)平臺服務提供業務網關的配置管理、資源分配和會話管理等服務。
3)平臺管理是對平臺運營的內容及網絡進行統一管理,主要包括業務模塊和網絡模塊。業務模塊包括資源管理、業務管理、產品管理、內容管理和終端管理等子模塊。網絡模塊主要包括網絡監控、性能報表、故障管理、日志管理、軟件管理和配置管理等子模塊。
4)業務應用層主要提供具體的商業應用,是平臺與終端用戶之間的接觸界面。本平臺采用開放式體系結構,可支持多種終端的接入,且它們之間還可以進行互動,實現信息的智能共享功能等。
5)外圍支撐系統包括BOSS系統(業務運營支撐系統)、AMS系統(媒資管理系統)和CDN網絡系統等。
4.1 關鍵技術
1)負載均衡后的會話管理技術
會話保存了用戶訪問的狀態信息。在無共享架構的平臺下,如何實現高可用和高可靠的會話管理是系統實施的關鍵技術。負載均衡后的會話管理常用的方法中:一是Session粘性,即客戶端每次訪問都指向它第一次訪問的服務器,這種方法的缺點是沒有實現集群機制;二是Session復制,各個服務器之間共享Session信息,每臺服務器都擁有其他服務器的Session信息,該方法在大規模用戶應用場合不可取;三是客戶端保存,將用戶狀態信息保存在客戶端,而不是存在服務器中,這種方案安全性不高,且對網絡帶寬壓力較大;四是將Session數據進行集中存儲,客戶端訪問時傳遞SessionID,后端平臺根據SessionID去集中的Session存儲平臺獲取Session信息,本平臺的無狀態共享架構采用此方案。對于Session信息的存儲,目前業界使用比較廣泛的是采用Memcached或者Redis等分布式緩存技術,本平臺使用Redis技術。
2)分布式服務的獲取技術
小規模的行業應用系統一般被分為3層:應用層(Web層)、服務層(Service層)和數據訪問層(DAO層)。雖然系統被分為幾層,但在實際的部署中,仍作為一個獨立的應用部署在同一個JVM中。實際上,服務之間的調用是在一個JVM中實現的。在分布式系統中,一般服務調用方和提供方不在同一個JVM中,服務之間的調用比較復雜,已不能像調用本地接口那樣實現服務的調用。RPC(Remote Procedure Call Protocol)是分布式系統中常用的服務調用協議,目前大多數RPC框架都可依據IDL生成客戶端和服務器端代碼,極大地提高了編程效率。本平臺的服務調用采用RPC技術。
3)組件設計與實現技術
在無共享架構的智能互動電視平臺中,關鍵組件有Session組件、RPC組件和ServiceLocator等。Session組件采用Redis分布緩存技術。Redis支持多種類型的數據結構,如字符串(String)、鏈表(list)、集合(set)和哈希類型(hash)等,并且其數據操作基本都是原子性的,可以保證在高并發情況下事務的一致性。RPC組件底層采用Netty的NIO服務器,基于Netty高性能的NIO服務器可以支持高達10k以上的并發調用。ServiceLocator組件位于客戶端,其作用是對開發者屏蔽Service實現的細節。通過客戶端配置,ServiceLocator組件可以方便地定位到本地實現或遠程實現。ServiceLocator通過模板模式和代理模式去實現服務的配置和定位。開發人員無需關心如何與遠程服務器端進行通信,僅僅通過配置即可完成服務之間的調用。
4.2 系統優勢
智能互動電視平臺采用無共享架構和云存儲技術,提供集成的多媒體內容管理和分發平臺,可支持多媒體內容的注入、存儲和分發等,能同時滿足CableTV,IPTV,Internet TV,Web Video和Mobile TV等多種應用場景,可以支持多屏互動和提供智能家居管控功能。本平臺的原型系統已經在上海市虹口區大寧社區街道試用,效果良好。采用無共享架構的智能電視互動平臺在技術上有如下優勢:
1)高可用性
本平臺可以支持高并發訪問的能力。在具備高性能的情況下,可支持平臺的自動化運維機制。整個平臺的可用性達到99.99%,全年故障時間不超過30 min,從而減少了平臺的不工作時間,確保了整個平臺的高度可用性。
2)高可擴展性
本平臺采用無共享架構技術,整個平臺結構簡單清晰,平臺組件相對獨立,便于通過水平擴展提升系統容量。平臺中的各服務之間耦合性低,可通過服務總線機制進行相互調用,服務可復用的程度高,可方便地對系統進行運維。
3)低成本
由于系統設計和實現過程中,充分考慮了系統服務的可重用性,從而提高了整個平臺的總體開發效率,降低平臺開發成本;平臺實現過程中采用較多的成熟開源技術,可極大地降低平臺的軟硬件成本;采用云計算和虛擬化技術,同時減少了服務器的成本。
本文對當前互動電視平臺的業務需求進行深入分析和研究,提出無共享架構的互動電視平臺設計方案,并據此實現了智能互動電視平臺的原型系統。研發過程及實踐結果表明,與傳統互動電視平臺相比,無共享架構的智能電視互動平臺可以支持高并發,具有更高的可用性和可擴展性等,并且建設成本較低,非常適合商業推廣。本文所研究內容對建設一個高并發、高可擴展、完善和高效的智能共享互動平臺,以及促進智能互動電視平臺業務進一步推廣,具有一定的應用參考價值。
[1] 徐冉.基于有線電視網絡的智能家庭探[J].電視技術,2014,38(24):20-22.
[2] 孫亮.基于大數據應用的互動電視增強業務研究[J].電視技術, 2013,37(22):7-10.
[3] 董道國, 李青, 魏國慶.一種適用于傳統互動機頂盒的多屏互動技術方案[J].中國有線電視,2014 (1):31-34.
[4] 肖陽, 寧艷芝.視頻云計算技術打造云時代互動電視增值業務運營平臺[J]. 廣播與電視技術, 2013(3):117-120.
[5] 李育林.云計算在廣播電視領域中的應用探究[J].有線電視技術, 2012(1):117-120.
[6] 趙卓峰,魏文飛,馬強.基于無共享架構的海量感知數據實時處理系統[J].微電子學與計算機, 2012,29(9):10-14.
[7] 蔡亞杰,趙政文,白松,等.并行數據庫基于多連接的查詢優化算法的研究[J].計算機應用與軟件, 2012,29(12):183-185.
[8] 張棪,周旭,唐暉,等.面向移動互聯網的融合內容分發網絡總體架構設計[J].電信科學, 2011(1):16-23.
[9] 劉明亮.基于開放式架構的互動電視系統構建[J].有線電視技術, 2008(7):51-53.
[10]常群,王舒坦,王沛.淺談互動電視系統架構的發展方向[J]. 視聽界, 2013(5):5-7.
責任編輯:閆雯雯
Research and Design of Intelligent Interactive TV Platform Based on SNA
YANG Xianghao1, HU Liqi2
(1.SchoolofManagement,ShanghaiUniversityofEngineeringScience,Shanghai201620,China; 2.ShanghaiDigivisionTechnologyCo.,Ltd.,Shanghai200083,China)
As interactive TV business becomes complex and its scale gets larger, its business needs are difficult to be met by existing interactive TV platform architectures. On the basis of ITV business analysis, a design scheme of intelligent interactive TV platform based on SNA technologies is put forward and a prototype system is established. The practice results indicate that the intelligent interactive TV platform based on SNA technologies is characterized by high availability, high expansibility, low cost, etc., and it is very suitable for large-scale commercial applications.
interactive TV; digital TV; SNA; system architecture design

專題互動電視
國家社會科學基金項目(14BTQ026);教育部人文社會科學青年項目(12YJC630242)
TN948.6
A
10.16280/j.videoe.2015.16.004
【本文獻信息】楊湘浩,胡力旗.無共享架構的智能互動電視平臺設計與研究[J].電視技術,2015,39(16).