「技术分享」TSINGSEE青犀视频云存储架构的设计和特点

在流媒体领域,云边端融合是指云计算(云服务)、边缘侧、终端三者相互合作、互相渗透的智慧物联网部署方式,这是AI安防市场发展的主流方向。随着万物互联时代的到来,云边端协同发展也成为安防视频行业厂商的重要布局。

对于TSINGSEE青犀视频来说,云计算服务包括了目前已经存在的视频智能云服务EasyDSS、EasyGBS、EasyCVR、EasyRTC等视频平台;边缘计算则主要依托于网关设备来完成,包括EasyNVR边缘计算网关、EasyNTS上云网关、EasyCVR智能边缘网关;终端则是RTMP推流摄像头、单兵设备和4G布控球等设备。

众所周知,流媒体服务器是支撑视频播出的基础系统,具有视频转码、视频直播、视频点播等视频能力。随着5G、物联网等新兴技术的推动,互联网数据呈指数增长。在安防监控领域也是如此,在新技术的促进下,视频监控技术朝着规模化、集中化、高清化和智能化的方向快速发展,随之而来的是海量视频数据的存储挑战。在视频监控的整体方案中,视频数据的存储也是整个方案的重点之一。

本文我们从技术的角度,和大家一起分享TSINGSEE青犀视频在视频监控领域,关于视频云存储的技术架构和特点。

一、建设意义

TSINGSEE青犀视频云存储技术采用分布式文件系统、分布式数据库实现统一的存储架构,保证了系统的扩展性、可用性和性能。同时结合各行业、各场景的业务应用,需要为视频应用定制一套适用于视频应用的存储系统。视频云存储的优势在于视频资源的有效管理和访问,同时支持海量小文件的高效存储。

二、如何建设

通过引入云存储管理模块,融合统一存储架构,可提升存储中心的灵活性和可靠性,并且提升对存储资源用量的监控和生命周期管理。视频云兼容多种存储设备,采用分布式和虚拟化技术将原有的孤立存储设备纳入统一的存储网络环境中,使网络内所有服务器都能平等的共享存储资源,实现存储系统的最大化利用率。

采用云存储技术后,原有的本地存储将整合到统一的存储网络中,通过网络系统的扩展,可以进一步实现广域网内存储资源的共享。采用分布式共享存储体系,所有网络存储资源均可以被网络内的计算节点共享,当存储资源不足时,仅需要添加存储节点到存储网络中,所有的计算节点就能够快速的识别并使用新添加的存储空间,满足业务扩展需求。

「技术分享」TSINGSEE青犀视频云存储架构的设计和特点_第1张图片

在视频存储中,存储的内容分为结构化数据和非结构化数据,结构化数据采用分布式数据存储;而非结构化数据(例如视频、图片、文本、特征等)存储在分布式文件系统中。

三、云存储技术方案

1、存储物理结构

TSINGSEE青犀视频云将有效的资源统一管理,并按照实际需求从逻辑上进行分割,按照需要分配给各个部门、工作人员以及功能系统使用。逻辑上分配的资源只有在使用的时候才会实际分配,不使用的时候会自动回收,实现资源的有效利用。下图为视频云多业务系统共享视频云存储示意图:

2、分布式文件系统

TSINGSEE青犀视频云存储采用的分布式文件系统是Scale-Out存储解决方案,具有强大的横向扩展能力,通过扩展能够支持数PB存储容量和处理数千客户端。分布式文件系统借助TCP/IP或InfiniBand RDMA网络将物理分布的存储资源聚集在一起,使用单一全局命名空间来管理数据。GlusterFS基于可堆叠的用户空间设计,可为各种不同的数据负载提供优异的性能。

分布式文件系统摆脱原有独立、高成本的封闭存储系统,能够利用普通廉价的存储设备来部署可集中管理、横向扩展、虚拟化的存储池,存储容量可扩展至TB/PB级。分布式文件系统主要特征如下:

1)弹性存储系统(Elasticity)

存储系统具有弹性能力,意味着企业可以根据业务需要灵活地增加或缩减数据存储以及增删存储池中的资源,而不需要中断系统运行。视频云存储允许动态增删数据卷、扩展或缩减数据卷、增删存储服务器等,不影响系统正常运行和业务服务。

2)线性横向扩展(Linear Scale-Out)

线性扩展对于存储系统而言是非常难以实现的,通常系统规模扩展与性能提升之间是LOG对数曲线关系,因为同时会产生相应负载而消耗了部分性能的提升。横向扩展(Scale-Out)通过增加存储节点来提升整个系统的容量或性能,这一扩展机制是目前的存储技术热点,能有效应对容量、性能等存储需求。

目前的分布式文件系统大多都具备横向扩展能力。视频云存储是线性横向扩展架构,它通过横向扩展存储节点即可以获得线性的存储容量和性能的提升。因此,结合纵向扩展GlusterFS可以获得多维扩展能力,增加每个节点的磁盘可增加存储容量,增加存储节点可以提高性能,从而将更多磁盘、内存、I/O资源聚集成更大容量、更高性能的虚拟存储池。

TSINGSEE青犀视频云存储利用三种基本技术来获得线性横向扩展能力:

  • 消除元数据服务;
  • 高效数据分布,获得扩展性和可靠性;
  • 通过完全分布式架构并行化获得性能的最大化。

3)高可靠性(Reliability)

与大多数分布式文件系统类似,视频云存储可以构建在普通的服务器和存储设备之上,因此可靠性显得尤为关键。视频云存储采用了多种技术来实现这一设计目标。

首先,它假设故障是正常事件,包括硬件、磁盘、网络故障以及管理员误操作造成的数据损坏等。视频云存储设计支持自动复制和自动修复功能来保证数据可靠性,不需要管理员的干预。

其次,视频云存储利用了底层文件系统磁盘文件系统的日志功能来提供一定的数据可靠性。

再次,视频云存储是无元数据服务器设计,不需要元数据的同步或者一致性维护,很大程度上降低了系统复杂性,不仅提高了性能,还大大提高了系统可靠性。

视频云存储相比于其他云存储系统具备以下几个特性:

  • 无源节点设计,相比于单元节点设计的文件系统(例如Hadoop中HDFS)没有单节点故障(当主节点异常则整个系统都不可用)。
  • 文件系统中内嵌视频帧索引技术,天生具备视频点播、调阅、任意切片等功能。
  • 支持海量文件存储,既可以保证大文件访问的高吞吐量,又可以保证小文件访问的高I/O能力。其他的文件系统(以Hadoop的HDFS为例)要么对于大文件有较好特性,要么对小文件支持的比较优秀,同时单节点的文件系统无法支持过多的文件数量,超过千万级的文件数量就比较困难了。
  • 针对资源中心,新旧存储通过异构存储虚拟化设备实现存储资源的大整合,统一为业务提供存储空间服务。
  • 利用数据同步设备实现两资源中心云存储资源的实时同步,建立双活数据中心,当基础设备出现故障,业务能保持不中断,继续提供服务。
  • 同时两地资源中心分别通过备份存储设备建立备份系统,为数据保留多个副本,保证数据的安全性。

4)大文件存储

针对视频文件应用的特殊性,在基础文件系统上建立了视频文件系统,对视频文件进行流化索引处理。可以为视频侦察分析提供精确的视频流定位检索等服务。技术特点如下:

  • 自动流化视频文件,对上传的视频文件自动识别格式,自动进行流化建立视频流索引,索引信息包括帧类型、帧格式、时间戳、在文件中的偏移等。
  • 自定义流化索引,支持客户端自主对文件进行流化,需要客户端按照特定的格式为视频文件上传流化索引数据。对一些服务端暂时无法支持自动流化的文件这一点很重要。
  • 支持标准和主流厂商的视频文件格式,可以支持标准H264和市场主流厂商(如海康、大华等)格式的文件,还可以以组件方式灵活扩展。
  • 精确定位视频帧,可以对视频帧进行快速精确定位,精确到具体的某一帧。

5)小文件存储

小文件系统是专门为小文件设计的一种存储系统,系统采用文件打包的方式将若干个小文件打包成一个较大的文件。文件打包会大大降低文件的数量,从而提升文件操作的速度,同时也降低了底层文件系统的压力。采用文件打包的方式会增加文件访问的复杂度,但相比于海量文件数量带来的影响要小得多。

XCFS小文件系统只是代表XCFS具备存储小文件的能力,并采用多种机制保证文件的访问效率和数据安全。而XCFS选择何种机制完全有XCFS自身决定,用户根本感觉不到。技术特点如下:

  • 透明打包处理,服务端会将存入的文件按照特定的算法存入到一个大文件包中,并且会对文件包中的所有文件建立索引机制,在读取文件时文件包对用户是透明的,只需以原来的小文件的名称为参数进行读取,服务端会依据文件包中的索引为用户找到文件在包中的具体位置。
  • 客户端打包上传,由于小文件通过网络单独上传会导致网络和磁盘的I/O次数都过多,影响性能。小文件系统可以由客户端自行将要上传的小文件打包成一个文件包后上传到服务端,客户端在打包时只需遵循特定的规则后,服务端即可识别和管理这个文件包。这种方式大大的减少了I/O次数,对网络和磁盘的I/O性能都有很大地提高。
  • 灵活的文件包管理提供了灵活的文件包管理,支持文件包的追加和删除小文件,合并两个文件包,在文件包之间迁移文件等。
  • 专有小文件接口,这些接口利用小文件系统的特性,可以高效的访问指定文件,同时降低系统自动识别小文件带来的负担。

云存储、云计算和大数据相关技术已经对安防行业,特别是视频监控行业,形成了深刻的影响,实现了重大的推进作用。TSINGSEE青犀视频基于音视频流媒体领域多年的经验积累和研发技术,可为用户提供多元化的视频应用场景解决方案。如果感兴趣,欢迎关注我们的更新。

你可能感兴趣的:(音视频,视频智能分析,物联网)