存储技术
在网络视频监控系统中,音视频流的传输是基于IP 网络的,在存在大量音视频流传输的情况下,如何有效地实现对音视频数据的存储,和对多个用户检索回放视频文件的管理是一个重要的课题。
因此,本文就对网络视频监控系统的存储技术进行了探讨,给出了一种音视频存储服务器软件的设计方案和具体实现。支持图像存储、网络回放的双工模式,最大可以同时对多路视频进行录像,支持多个用户同时在线检索回放历史数据,可以根据图像的、记录时间、报警事件类别等多种方式对存储的图像数据进行检索。
业界较为典型的监控存储的数据管理方案是“DVS+媒体服务器+存储系统”,其中媒体服务器是系统的核心,由其负责媒体数据流的分发、录像、以及VOD点播。
在这种流媒体服务器的方案中,数据管理方式是基于文件系统进行的,所有的录像数据在通过媒体服务器时,都被转成了标准的流媒体文件(几分钟到几十分钟的录像形成一个文件),然后再进行存储。这种存储方式利用了传统文件系统自身的特性,系统开发比较简单,但有可能降低监控存储的效率,主要体现在:
存在视频数据丢失的风险。文件形成需要时间,在形成过程中若网络有误码、前端DVR/DVS/IPCAM有故障/停电,服务器自身软件缺陷等情况出现,就会造成整段时间视频文件的丢失。
受文件碎片的影响。文件系统使用过程中会形成大量的文件碎片,在使用过程中存储空间会逐渐变小,性能也会随之降低。
文件检索效率低。历史数据检索的最小单位是文件,颗粒度太大,精确度低。
除了文件系统自身的不足之外,方案还会受到流媒体服务器集群能力的影响。一台普通的PC Server大约能承载几十路2Mbps媒体数据流的处理,在这种组网下,要支撑更多数量的媒体流处理,需要将多台媒体服务器组成一个集群。但是,受限于媒体流服务器的集群能力,媒体服务器的数量不能太多,一般十几台媒体服务器就达到了一个集群的极限。因此,媒体服务器集群成为了整个监控系统的瓶颈,这使得监控系统无法大规模展开。在构建平安工程这类大规模监控系统时,这种方案就会遇到很大问题,大量的媒体服务器不仅增加成本,管理同时变得更复杂。
由此可见,传统的监控系统在数据管理方面面临的两个主要问题:普通文件系统不是专为监控存储设计,因此会影响到监控数据存储的效率;媒体服务器的集群能力有限,导致监控系统大规模部署困难。那么,是否有针对监控存储的更好的数据管理方式?
针对监控存储的数据特点,业界早在几年前就开始尝试一些新的数据管理方式,希望能够提高监控存储的数据管理效率,满足监控大规模应用的需求。在这些数据管理方式中,“块直存”就是其中比较有特点的一种,已经成为业界发展的方向。其创新性主要体现在:
创造性的采用了“时间索引+块数据”的专用数据结构,抛弃了传统的文件系统,提高监控数据的管理效率。
创造性的采用了基于iSCSI协议的IP SAN直存技术,抛弃了传统的流媒体服务器,简化系统架构。
通过集中式数据管理,实现了对资源的统一划分和调度,实现数据的全局性管理。
实际上,在很多大规模监控方案中,为了解决媒体服务器性能瓶颈的问题,一般会采用服务器群的方式完成。但又带来新的问题,如多个服务器之间如何进行负载分担?某个服务器故障之后,系统如何将数据流量切换至其他服务器?这些服务器如何管理?如何共享一个存储空间?等等,解决这些问题需要一个非常优秀的集群管理系统,增加系统复杂性的同时,还需要一笔不菲的预算,更遗憾的是,目前业界还没有一个集群管理系统可以很好的解决该问题。
因此,前端设备到IP SAN的端到端直存就是一种很好的解决办法。在存储方式上,“数据块直存”的数据管理方式抛弃了媒体服务器,在IP网络的基础上,在编码设备中集成了iSCSI模块,使得编码设备可以基于iSCSI的协议端到端的把录像数据写入IP SAN存储设备中。
传统监控中,对于媒体流的文件存储模式,在录像检索时首先要根据摄像头、检索的时间查找到对应的文件,然后再进一步定位具体的时间点,从该时间点回放录像。历史数据检索的最小单位是文件,颗粒度太大,精确度低。
文件系统本来是为随机读写的数据管理应用设计的,检索效率较低,一个含几百万个文件的系统的检索效率很难想象。所以,当系统规模扩大后,传统数字监控方案的效率下降很快。
在“块直存”的系统中,“块”存储可以理解成自定义的一种文件系统,在裸盘上进行数据读写;时间作为每个数据单元的索引,并且把索引和数据单元保存在一个完全独立的逻辑存储空间上。录像的索引和数据形成独立的、完整的数据结构,这种数据结构完全由自己管理,不再由操作系统和文件管理。通过时间索引+块数据存储这种组合,在录像检索上,可以基于时间进行检索,可以快速定位到任意时间的录像,检索效率大幅度提高。在检索的颗粒度上,也不再受文件大小的限制,可以实现秒级的连续检索。
作为IP领域的领导厂商之一,H3C同时在IP网络、IP视频、IP存储等领域有着长期的技术和产品积累。进入IP监控领域后,H3C将这些技术进行融合,首家将iSCSI块存储的存储方式引入监控中,从而有效的解决了媒体服务器引入的存储的性能、可靠性以及检索效率的问题。
在“块数据”和“直存”两者的技术基础上,通过全局性的资源统一划分和调度,实现数据的全局性管理。在大型监控系统里面,可能有成千上万个摄像机和海量的存储空间。
如何管理这些摄像头和存储设备之间的对应关系是一个非常复杂的难题。在“块直存”视频监控系统中,H3C引入了数据管理服务器单元(DM),以此来实现存储资源的统一管理。
DM是一个专用的数据管理设备,所有的摄像头和存储资源都由其管理。摄像头需要存储资源时,会统一向DM申请,DM会从存储空间中选择合适的存储资源分配给摄像头,使摄像头与这一块的存储资源建立读写关系。
IP SAN设备完成某个摄像头媒体数据块的存储工作后,根据监控点的IP地址、写入媒体数据的起始和终止时间,自动生成一个块索引值。DM和IP SAN之间进行通信,获取最新的视频存储信息,对所有监控图像的检索等通过DM完成。
当然,这种存储方式必然对监控厂商的技术积累和实力提出了更高的要求,如要求编码器支持双码流,实时监控视频流和存储视频流可以独立编码,同时编码器支持iSCSI协议。
双码流是现在所有高端编码器的基本要求,实现的厂商较多,编码器支持iSCSI则要求监控厂商同时具备专业的存储技术积累,对于目前的多数监控厂商而言,存在一定的技术门槛。可喜的是,我们看到,越来越多的监控厂商认识到存储对于一个监控方案的重要性,开始进行这方面的技术积累。
全部0条评论
快来发表一下你的评论吧 !