Active存储知识:深入了解共享存储系统

2020-11-26 10:33

存储即指将特定项目或工作流中所有的文件进行存储。这些文件可能并不会存储在同一个位置,因为不同类型的数据有不同的要求,不同的存储解决方案也有各自的优势和特点。


一般来讲,大多数数据都存储在HDD或SSD上,前者是将数据存储在旋转的磁性表面,并通过在该表面上移动读写碰头来访问数据的机械设备。目前,它们的最大访问速度约为200MB/s,延迟为5ms。SSD是固态驱动器,它没有活动部件,而且由不同的体系结构和接口来组成,但大多数都基于照相机中的CF卡或SD卡这种基本闪存技术。也有一部分SSD是使用HDD结构的SATA驱动器,这主要是为了能替换现在的HDD兼容设备。这些SATA设备的的带宽限制是600MB/s。SSD在全尺寸PCIe卡或小一点的M.2尺寸格式中都使用PCIe接口,带宽最高可达3GB/s。HDD和SSD的数据恢复都非常昂贵,除非你要求的是大容量,否则SSD对于实现高带宽来说更加便宜。

阵列 RAID

我们一般是将多台硬盘驱动器组合到一起来提高速度和数据安全性,称之为阵列-RAID,它是独立磁盘的冗余阵列的缩写(Redundant Array of Independent Disks)。RAID有多种组合方法,彼此之间有很大的不同。

RAID 0

从技术上讲它并不具有冗余性,每个文件都会被进行拆分到不同的磁盘上,因此每个磁盘只拥有文件的一部分。由于这一操作是并行的,因此速度要比单个磁盘操作更快,尤其是对于那些较大的文件。但是,如果一个磁盘发生故障,那么每处故障都将使你失去文件的一部分,这通常使得整个文件作废。阵列中的磁盘越多,这一故障的机会就越高,因此我们很少看到4个以上磁盘组成RAID 0的情况。虽然它曾经被常用作需要快速访问可恢复数据(比如备份的源素材或临时文件)的阵列搭建,但是现在单个PCIe SSD更快、更便宜、更小巧也更易于使用。


RAID 1

基本上是一种镜像阵列,它将数据同时写入一个以上的驱动器,每一个驱动器都拥有完全相同的数据。因此,虽然这种阵列的容量受限于其最小卷的容量,但数据非常安全。RAID 1的写入速度没有优势,因为每个驱动器都要写入完整的数据,但是在读取时,可以进行分布式读取,其速度类似于RAID 0。


RAID 4/5/6

这三种阵列的设计目的是在大型阵列中实现各种组合优势的平衡,它们需要更复杂的硬件控制器,而且为了达到较高的性能水平,其成本也更高。RAID 4在除了一台驱动器以外的所有驱动器上将数据进行条带化(Raid 0),即将数据拆分存储,然后对这些数据进行奇偶校验并将结果数据存储在这最后一台驱动器上,这样就可以使用校验数据来还原任何单个故障驱动器的数据。RAID 5与它相似,不同的是它将不将校验数据写到独立的驱动器中,而是分布于所有驱动器中,但并不与源数据存储到同一个驱动器。因此,RAID 4和5的阵列容量是其最小单个磁盘容量乘以磁盘数量减一后的乘积。RAID 6也是类似,它更像是RAID 5的升级版,它使用比奇偶校验更复杂的XOR校验,并同时针对数据块进行分层和总体校验,并将结果写入到两台驱动器中,这使得RAID 6阵列中可以允许同时有两台驱动器发生故障,也要求阵列中至少有4台驱动器,同理,其总容量将再减少一台驱动器的容量。虽然RAID 5是大多数阵列中最受欢迎的选择,但随着存储数据价值的增加和驱动器价格的下降,RAID 6会变得更加流行。

连接速度

数据测量:

数字数据的存储是一系列的0和1,每个都是1比特,8比特为1个字节,用来表示一个文本字母或一个图像像素(8位单通道)。我们一般用比特为测量数据的速率,而以字节来测量存储数据的空间。你也可以都换算成字节来理解,但需要了解它们之间的区别。1兆比特(1Mb)是一百万比特,1兆字节(1MB)是一百万字节,即800万比特(位)。

存储计算:

技术上讲,根据计算机内存的JEDEC计算标准,1K字节为1024字节,即2的10次方。但大多数存储设备制作商的说法是,1K字节就是1000字节,即10的3次方。这也就造成在操作系统下,存储设备的可用容量总是比设备上标注的容量小。提到这一差别的意义在于,当数量继续上升到TB时,这两者的计算差异将达到10%,这要求我们在估算存储空间时必须将其考虑在内。另外,我们也应该始终保持系统至少10%的空余空间。

网络速度是以位或千兆位来进行度量的,但由于其还需要传输头数据和其它数据,将其带宽除以10是比较保险的算法。即千兆网按100MB/s计算,万兆网按1000MB/s计算,而新的N-BaseT标准则按约500MB/s计算。与此同理,在30Mb网络连接下传输文件时,其预期速度约3MB/s,然后乘以60秒或3600秒来计算所需要的分钟数或小时数。

高端网络选择



40Gb以太网产品已经上市一段时间了,另外我们还有25Gb和100Gb的产品可供选择。40Gb的产品很便宜,它们可以用于设备间直接连接,并应获得理论上4GB/s的传输速度。但40Gb实际上是4个并行的单个上限为10Gb的链路,你可以很容易将40Gb的带宽赋予系统,但单个客户端要获得超过10Gb却很困难,这就像车辆并不会因道路扩宽4倍而提高4倍的速度。25Gb产品可以提供接近3GB/s的单路带宽,但这较新技术的价格还没降下来。100Gb以太网则是4个通过中继器连接在一起的25Gb链路,所以会受到和40Gb相同的限制。

由于网络标准是以位为单位,而网络带宽对于视频文件的传输又非常重要,所以许多视频文件的文件类型也以位为重要指标。8Mb H.264的视频流为1MB/s,DNxHD36为36Mb/s或4.5MB/s,DV和HDV为25Mb,DVCProHD为100Mb,其它同理。有一些压缩文件类型根据画面内容具有可变比特率,但都可以按平均速率进行计算——即文件大小除以持续时间等于平均速率。重要的是确保你有足够的带宽来处理所需的视频流,这需要将平均速率乘以流数。所以,10个DNxHD36流将需要360Mb/s或45MB/s。

I/O和延迟

对于一些小的数据请求来说,不仅需要很高的总传输速率,还需要很高的IO性能。硬盘驱动器虽然可以轻松的维持45MB/s的速率,但每秒只能满足约100个单独的IO请求,而且10组不同的IO请求将使它忙得不可开交。在这种情况下,你很可能需要更大的阵列、更多的磁盘来适应这种IO需求。对于音频文件来说情况更糟,因为随着曲目的增加,即使数据速率要求不高,但你仍需要同时处理许多较小的单个文件。SSD可以更好的处理大量的单个请求,通常可以做到每秒数千或数万次。

容量是好算的,MB通常是我们需要关心的最小数据增量。媒体文件的数据速率乘以持续时间就能得到预计的文件大小。如果你打算用DNxHD36剪辑拥有100个小时素材的故事片,即3600秒×100小时×4.5MB/s=1620GB,即1.6TB。一台2TB的磁盘在格式化后剩1.8TB,差不多刚刚好。如果你还需要为其留出一些渲染图或者中间文件的存储空间,3TB比较合适。



计算好了总容量,就需要考虑连接到系统的问题。最贵的选择是通过网络,而且这能使它们易于共享,但这实际上并不是速度最快的办法,也不便宜。大型阵列可以通过USB3.X、Thunderbolt、SATA或SAS协议直接连接到主机的内部控制器。光纤在连接SAN共享时也是一种选择,但现在10GbE(万兆以太网)方案更便宜。千兆以太网和USB3.X是不够快的,无法实时回放高带宽文件,万兆以太、多通首SAS、光纤和Thunderbolt几乎可以处理未压缩的所有类型的4K视频。直接连接的好处是在具有最高带宽的同时还有最低的延迟,因为在文件和用户之间它的路径最短。Thunderbolt和USB需要额外的控制器,以太网就更多了。

需要存储的项目数据类型

了解了存储方案的选择,现在来看看存储数据本身。首先,我们有大量的源素材,无论是摄像机原始文件还是转码后的样片。这些通常以TB为单位的数据,但对传输速率的要求差别也比较大,从1Mb H.264文件到200Mb Prores再来2400Mb RED文件。

播放文件的数据速率和预期使用的视频流数量,会决定存储系统所需的带宽。另外,对于静态文件,也就是不会在创建后以任何试编辑或改写的文件,它们不需要定期备份,甚至不必冗余(但不建议)。而对于动态文件,比如RMD或XML之类的sidecar文件,你则需要对媒体卷的写访问权限进行设置。

另一套重要文件是项目文件,它们记录了我们在应用程序中所做的『工作』,也包含了媒体文件在导出时附带的说明文件。这些文件通常较小,并且在使用过程中会不断变化,这意味着我们需要定期对其进行备份。备份得越频繁,出现问题时你丢失成果的机会就越少。

在整个项目中,我们还会有一些导出文件和中间效果文件,无论它们是合并后用于上传和评审,还是VFX特效文件或供渲染使用,它们都比源素材更具动态属性,而且是由我们的系统生成,并不是从其它地方导入的。这意味着这些文件在必要的时候可以由其源项目重新生成,但是限于时间和精力,应该将其进行保护和备份。在大多数和工作流程中,这些文件一经创建就不会改变,因此如果需要,应该纳入备份列表。

大多数的剪辑和VFX程度还会生成各种临时文件,其中一些需要高速访问才能获得最佳的应用程序性能,这些文件由于可以由源程序自动重新生成,所以很少需要对其保护或备份。

一切都存哪儿?

现在我们有了源素材、项目文件、导出文件和临时文件,需要找个地方存起来。如果你的系统或笔记本电脑只有一个数据卷,答案很简单,C盘。但是我们可以将文件分解到不同的设备上为获得更好的性能。新型的笔记本电脑通常具有较小的SSD和较大的HDD,这种情况下应该将源素材放在更大的HDD上,而项目文件放在更快也更安全的SSD上。临时文件的目录也应该设置在SSD上,因为它速度更快。导出文件放哪里都可以,SSD放得下最好就放SSD。如果我们是将源素材放在了外置驱动器上,也可以将文件备份在那儿,但得允许从本地的项目文件进行工作,回放外置驱动器上的媒体文件。

如今专业的工作站可以提供不同的存储方案。我的系统有两台SSD和两套阵列,我将操作系统和软件存在一张SSD上,项目文件和临时文件存在另一张SSD上,源素材在一套阵列上,导出文件和其它文件在另一套阵列上。我也会每天将我的项目文件夹备份到阵列上,毕竟SSD不能提供冗余。

案例:独立存储方案

假设你有一个使用RED摄影机拍摄的短片项目,它在本地电脑进行剪辑,并使用300MB/s的R3D文件。这意味着以其每小时1080GB的速率计算,5小时的素材差不多刚好超过5TB,你可以使用一台6TB的硬盘,但由于其传输速率,提供不了实时播放的带宽。(硬盘驱动器通常只有200MB/s的速度,5400rpm的低速硬盘则会更慢)

现在,如果将这些数据拆分到两台驱动器中组成RAID 0,可能会获得所需的性能,但就没有空间再进行备份了。由于数据的安全至关重要,我们需要向RAID 5挺进。一个由4台2TB驱动器的RAID 5阵列可以提供6TB的存储空间(2TB×(4-1)),格式化后,差不多有5.5TB,应该够了。使用8台1TB驱动器来组建RAID 5将提供更高的性能,格式化前你能拥有7TB(1TB×(8-1))的存储空间,但由于端口控制器、托架数量更多、机箱更大以及2块1TB硬盘比1块2TB硬盘更贵,你的花费也会更多。

这只是小型项目,大一些的项目花费的要多得多。对于具有200TB RED素材的项目来说,如果需要从单个卷(不是单个驱动器)上访问,你需要24台12TB容量的驱动器来提供288TB的空间,减去用于RAID 6冗余的两个驱动器容量后,还剩下264TB,格式化后接近240TB,刚刚够。

共享存储空间和文件

早期共享存储解决方案都是基于光纤连接来开发的,通过光纤端口与主机相连时,光纤通道阵列会被视作一台本地驱动器,由于其能提供直接连接,从而可以为工作站提供对大型阵列的安全访问而且没有性能损失。且当你在此基础上使用SCSI或SAS并能进行切换时,光纤的真正能力才得以发挥出来。现在有很多系统都可以进行这种多阵列访问,只要它们拥有有效的防误写和破坏机制,它们就能获得完全访问分开卷或任何独立卷上数据的能力。

SAN

技术上来讲,共享存储是具有两个截然不同含义的词。在数据中心,服务器需要高速率和高IO存储能力,在使用SSD技术以前,这意味着大量独立的驱动器。许多服务器都会共享一个磁盘阵列,并不会一对一来配置自己专有的阵列,因此每台服务器也拥有自己的磁盘总容量配额。每台服务器还会拥有自己的专用访问权限,其它服务器无权访问。这样的优势在于,只需要较少的阵列就可以为各种服务器提供高峰期间所需的性能,并且可以通过调整存储量来满足各种服务器之间变化的需求,无需移动物理磁盘。如果服务器的数据逐渐填满了所分配的配额,将会获得更大的容量配额,而最终会添加更多的阵列进来。这种物理方式的共享过去通常是使用光纤通道接口来实施,我们称之为区域网络存储(SAN,Storage Area Network),现在我们也使用以太网,通常是iSCSI的形式来实施。

显而易见,允许多台服务器访问大型阵列上的文件优势明显,这样一个网站可以托管在多台服务器上,从而通过共享处理负载来提高性能。对于媒体制作来说,这也就意味着允许多个工作站如同访问本地存储的速度来回放源素材。对于读取数据来说,请求被发往驱动器,后者会尽快完成读取,这很容易,但写入呢?如果访问多台机器同时写入驱动器上的同一位置?这一需求要么由一台计算机来控制驱动器,要么驱动器就要批准所有的写入需求,这反而会减慢速度。因此,控制权的管理会变得非常复杂,共享SANs的软件通常也很昂贵。

当人们使用以太网的FCoE和完全基于数据包的iSCSI来代替光纤接口控制SANs以后,硬件成本得以下降,但是软件成本依然高居不下,其挑战都是防止所有将驱动器视为本地卷的计算机将数据写入同一磁盘位置。由此,FiberJet、MetaSAN、StorNex、XSAN、Facilis、Harmony、Avid Unity和许多其他公司都采用了不同的方法。

当以太网组网技术进一步进化以后,SANs解决方案相对于NAS(网络附加存储,Network Attached Storage)的优势开始变得不明显。10Gb万兆网每秒能传输1GB的数据,并且也相对便宜。NAS的好处是通常其自带的操作系统中就包含了写入控制软件,以此防止数据损坏,它能将客户端设备与文件系统隔一,从而使PC、Mac和Linux设备都可以访问相同的文件。虽然这付出了访问延迟增加的代价,偶尔也会降低总带宽,但是安装的价格和复杂性要低得多。因此,除了一些大型项目和苛刻的工作流程以外,很多项目都在转向于使用NAS作为共享存储解决方案。

NAS和剪辑系统一样简单,它能提供直接连接或10GbE以太网连接,也可以通过交换机来扩大用户规模,但是共享数据的用户越多,整体性能就越低。如果你有超过3-4个用户有需要共享访问,出于性能和稳定性的考虑,应该谨慎。 对于一些专用NAS系统,制造商会提供多种其它功能来改善性能和协作。

你也可以通过Thunderbolt3来实施高速共享,有些制造商允许通过其直接连接存储设备和计算机,但大多数制造商使用Thunderbolt3内置对TCP网络的支持来传输数据,从而使其成为Thunderbolt接口上的NAS设备。然而,任何使用Thunderbolt3提供数据块级访问的产品仍需要和光纤通道接口产品一样的SAN软件控制功能,以防止误覆盖和数据损坏。Thunderbolt相对于光纤的优势主要是价格和速度,但代价是受限的线缆长度和可扩展性。

北京博恒视创科技有限公司是一家专业多媒体存储系统集成商。我公司联合美国Active Storage公司共同开发了Active媒体私有云共享系统、满足4k视频剪辑和大型真人秀节目制作的Active Storage光纤存储在线实时剪辑系统、满足每天100T的源数据同城或异地的数据分发与共享的远程数据复制与内容分发系统。8K电影全流程跨平台共享实时剪辑系统,现场实时调色及DIT管理系统,影视素材归档备份管理系统、海量数据自动化迁移保存系统、全媒体制播网系统等多种完全“订制化”的解决方案。2018年本公司开发出一套完整的数据安全保存系统,以“在线编辑,近线备份,离线保存”的三维立体式的解决方案,让客户数据在“生命周期”内安全的保存,没有后顾之忧,我们始终将客户的需求放在第一位,持之以恒,坚持创新,引领产品走向高容量、高带宽、高集成和人工智能化。


大型真人秀后期非编网部分成功案例:

深圳卫视《加油吧,新郎》、爱奇艺《流行之王》、北京卫视《歌手是谁》、湖南卫视《完美假期》、江西卫视《带着爸妈去旅行》、央视三套《幸福账单》、央视三套《急速少年》、湖南卫视《旋风孝子》、湖南卫视《妈妈的牵挂》、安徽卫视《国剧盛典》、安徽卫视《合唱先锋》、腾讯《拜托了冰箱》、黑龙江卫视《嘿,大兄弟》、山东卫视《家游•好儿女》、江西卫视《七天爱上你》、芒果TV《透鲜滴星期天》、CCTV《警察特训营》、爱奇艺《大学生来了》、爱奇艺《娜就这么说》、爱奇艺《我去上学啦》、浙江卫视《喜剧总动员》、芒果TV《黄金单身汉》、芒果TV《香蕉打卡》、芒果TV《不一样的偶像》、江西卫视《玫瑰之旅》、浙江卫视《开心俱乐部》、优酷《火星实验室》、内蒙古卫视《嗨,马上出发》、芒果TV《爸爸去哪儿》、芒果TV《我是大侦探》、央视《朗读者》、湖南卫视《我家那小子》、湖南卫视《幻乐之城》、湖南卫视《亲爱的客栈》、腾讯视频《创造101》、爱奇艺《偶像练习生》《青春有你》,湖南卫视《中餐厅》《亲爱的客栈3》等等真人秀节目后期机房


欲了解详情,欢迎咨询

魏 明

-------------------------------

电话: 18611689687(同微信号)

Add: 北京市朝阳区三间房东路一号懋隆文化产业创意园34栋

网址:www.active-storage.com.cn

本文为作者 魏明 分享,影视工业网鼓励从业者分享原创内容,影视工业网不会对原创文章作任何编辑!如作者有特别标注,请按作者说明转载,如无说明,则转载此文章须经得作者同意,并请附上出处(影视工业网)及本页链接。原文链接 https://cinehello.com/stream/132414