随着媒体竞争的不断加剧,现在许多电视广播机构和制作公司都面临着在降低运营成本的同时增加创收服务的挑战。这使得许多广播机构和制作公司开始重新评估他们的技术和工作流程,以期能开发出更加有效且更加灵活的方式,以便能不仅将节目内容提供给传统的广播渠道播出,还向一些新出现的分配平台提供。
这些用户寻求的更高的效率很大部分依赖于工作流程整合的质量和程度,而这需要得到高可用性的存储平台支持,这种存储平台应该具备支持各种不同应用的能力。为了满足用户对这种存储越来越高的需求,Omneon公司开发出了新的MediaGrid分布式共享存储系统。
Omneon MediaGrid系统通过使用多台智能的、互联而又独立的存储服务器,而将网格存储和网格计算技术组合使用,从而大大增强了用户及整个广播工作流程内各环节存取数字媒体内容的效率。MediaGrid系统提供了集中式的共享存储,该系统在容量、带宽以及媒体处理能力等方面都具有扩展性。其存储容量可从几个TB扩展若干PTB(1000TB),且均在一个文件系统内,使用一个全局域名。数据存取带宽也能容易地扩展至数百个Gb/s的总量。
MediaGrid系统采用模块化设计,它运用工业标准的部件和连通性,是一种可充分扩展,具高可靠性和成本效益的系统。系统内部件间通过标准以太网通信,并能产生极高的整合带宽供系统外部的客户端使用,消除了传统共享存储系统的带宽瓶颈问题。每一个存储部件同时又是一个媒体处理引擎,从而在保持内容存在于存储系统内的同时将计算资源用于其他媒体处理应用功能。MediaGrid还提供完全的数据保护,以及硬件和软件容错与恢复功能。
MediaGrid的存储机理
MediaGrid之所以独特且不同于以往的存储解决方案,是因为它运用了“基于目标”(object-based)的存储技术。这种存储技术使用“素材切片”(slices)作为基础存储元素。这些取自大容量媒体文件的“素材切片”为8MB大小的“智能目标”(smart objects),每个都包含了寿命周期检查CRC(cyclic redundancy check),主动的一致性监视与元数据冗余,以确保端到端的数据一致性。恒定的CRC检查确保了任何随机数据瘫痪或丢失都能被及时发现并实施自动纠正,在大多数情况下能在该文件被存取前发现和修复。
与传统RAID系统中的“块”(blocks)不同,MediaGrid系统中的“素材切片”包含了系哪个文件及该素材处于此文件中具体位置的信息。这种信息的使用增强了系统的智能性,提供了层级冗余用来全面检测文件系统的一致性。系统存在闲置带宽时,MediaGrid会主动监视系统内的“素材切片”的健全性,这一过程能大大降低未被检测到的数据丢失,并能自动恢复丢失的数据。
MediaGrid的系统部件
MediaGrid的两个重要运行部件是ContentDirector和ContentServer。其中ContentDirector提供对数据/存储的控制,而ContentServer用来控制对数据/存储的实际存取操作。一般来说,客户端(应用)在与ContentDirector交互,要求控制类服务如“打开文件”时,ContentDirector会将客户端的请求转给一台或多台ContentServer进行数据存取或文件读取(file read)。配备了这一组ContentServer的系统,客户端可直接与ContentServer进行交互。
ContentServer
ContentServer是任何MediaGrid系统的主要组成。ContentServer不仅包含了系统的存储,还能监控存储于其内的内容及“素材切片”,参与构建分布式文件系统,针对基于网格技术的应用提供可用的CPU计算能力。每台ContentServer都与一台或多台ContentDirector之间建立有通信,以便随时获取硬盘状态、“素材切片”等的更新信息。这些ContentServer还与客户端联网,且在文件复制时与其他ContentServer联网。
当客户端请求写入一段特定的数据信息时,ContentServer的“Message Manager”(信息管理器)工具将负责接收这样的请求并将之传递给本地“Slice Manager”(切片管理器),后者用来控制与“素材切片”直接相关的操作/动作,并直接管理硬盘。当复制请求提出时,Message Manager会向另一台ContentServer提出一个复制请求,这一过程在所有复制完成后会不停地重复。在接收到来自其他ContentServer的请求后,Message Manager会答复客户端。
一种称为“idle time”的管理程序用来管理包括数据验证和删除“素材切片”在内的多种功能。数据验证时,系统会读取每一个“切片”以确保“切片”数据仍可存取(读取)及有效(CRC检查)。只要是任何一项检查出问题,该“切片”都会被标志为无效,随后,对该“素材切片”的再复制过程会启动。这种积极的硬盘/数据验证确保在实际文件读取过程中不会出现潜在的错误。
ContentDirector
ContentDirector用来管理MediaGrid系统内的通信,运行一些应用,维护和监控与ContentServer有关的素材进出。ContentDirector之间采用环状拓扑结构联网,使用一个标记作为控制点。运行于ContentDirector内的应用都与运行于其他ContentDirector内的应用归为一组,以便相互间能够实现协同运转。
Slice Server Manager(SSM)(切片服务器管理程序)负责切片的分配,切片的再复制以及整个系统内的ContentServer 成员管理。切片分配基于ContentServer的可用性、系统负载、可用容量以及ContentServer编组情况。实际的可用硬盘空间以“卷”(volumes)或文件系统(file systems)予以管理。“卷”由一个或多个“组”(group)构成,其中的每个“组”又由一台或多台ContentServer构成。一个“组”也可能分为多个“卷”。定义这种关系的“表”(tables)由SSM管理,SSM也负责识别哪些未用的“素材切片”可用新的切片替换。
MediaGrid拓扑结构与连通性
MediaGrid的核心是其灵活的分布式文件系统,这种文件系统设计用来满足特殊的超大文件管理的需求。面对客户端时,它是一种单体的大型文件系统,但事实上却起着潜在的数百个分布式文件系统的作用。MediaGrid文件系统包含两个逻辑组成,一个是实际文件数据,另一个是元数据。元数据被本地存储在ContentDirector中的镜像硬盘内。
元数据的变化使用“Journal”跟踪,“Journal”是一种简单的字节流,它用来记录所有有关系统的修改,在需要ContentDirector恢复的情况下可作为参照使用。实际文件数据存储在ContentServer硬盘中的多个位置。因为需要切片和复制的原因,多个客户端都能够从任何可用的ContentServer存取任意文件的任意切片。这种能力减少了对系统资源的争用,因此提高了MediaGrid的整体系统性能表现。
MediaGrid由多个IP网络构成,其中各ContentDirector之间是相互联网的关系,为环状网络拓扑,提供系统冗余性。ContentDirector与ContentServer以网形网络拓扑联网,两个网形网络在各系统部件间提供了冗余。
&