基于云存储的集群式摄像数据存储系统的制作方法

文档序号:10691213阅读:292来源:国知局
基于云存储的集群式摄像数据存储系统的制作方法
【专利摘要】本发明公开了一种基于云存储的集群式摄像数据存储系统,包括客户端API单元、管理服务器集群、工作服务器集群、备份服务器集群和存储单元,客户端API单元设置在摄像机端,管理服务器集群通过API处理模块与客户端API单元实现云服务数据传输反馈,管理服务器集群通过负载均衡模块与工作服务器集群实现数据传输反馈,管理服务器集群通过节点监控模块对工作服务器进行工作状态监控,管理服务器集群通过高可用服务器与备份服务器实现数据传输对云管理平台集群的数据进行备份,工作服务器通过读写存储单元实现视频数据的云存储。本发明存储系统具有性能优异、可用性强、扩容简单、数据处理效率高和成本低廉的特点。
【专利说明】
基于云存储的集群式摄像数据存储系统
技术领域
[0001]本发明涉及云存储技术领域,具体是指一种基于云存储的集群式摄像数据存储系统。
【背景技术】
[0002]监控技术在网络技术和信息化高速发展的带动下,并伴随着安防行业对于监控系统需求的急剧增加一直飞速发展。目前视频监控系统的现状是网络化多媒体监控系统及半数字化监控系统共存,带来严重的数据存储问题。现有的视频监控系统在数据存储存在如下问题:如监控数据在写入和读取的时候都要经过视频服务器(存储设备),那么视频服务器就会成为系统的故障点,也会成为整个视频监控系统的瓶颈;在监控中心,如果几百路数据同时写入的时候,那么可能会有上百MB的带宽需求,一般存储设备都会具有几百MB的存储带宽,所以后端不会出现性能瓶颈,而流经的视频服务器前端通过以太网接口与几百路视频相连,考虑到服务器本身承受并发1的能力和网卡的可利用率,很难承受几百路视频数据的同时写入,所以视频服务器也就成为了整个系统的瓶颈所在。如在一个大型视频管理平台中,会有很多软件功能模块,如网络直播、网络录像、视频点播、报警联网控制等,相应的会有很多服务器,这种方式对客户最直接的影响就是增加服务器成本。
[0003]随着政府对安防建设关注程度的不断增加,视频监控系统每年都在扩大。前端监控点数量的增加,后端的存储容量也成比例的增加,同样视频管理平台也要相应的扩建,录像、转发等服务器也会相应的增加,在现有网络环境下进行整套系统更改扩建会非常繁琐。
[0004]针对于此,中国发明专利CN 103152437 A公开了一种分布式视频监控云存储系统,该系统至少包括两个存储设备,每个存储设备上嵌入平台软件,编码器将摄像头采集的模拟信号转换成数字信号之后直接进入存储设备,无须经过视频服务器,同时多个存储设备通过平台软件管控整个监控系统;平台软件包括两个部分,一部分是在存储设备上分布式运行的一些服务程序,一部分是用户在Windows上使用的客户端程序。通过上述架构,视频监控存储管理平台与视频存储设备整合在一起,从而省去了运行监控平台的服务器。优点:集存储、录像、转发、浏览、下载、回放、联网等功能于一体。但是,该系统架构复杂,扩容难度大,在实际用用中可用性不强,其存储过程涉及编码专门等复杂流程,直接制约了其性能的提高和成本的节约,应用新还是有一定的局限。

【发明内容】

[0005]本发明的目的是提供一种基于云存储的集群式摄像数据存储系统,具有性能优异、可用性强、扩容简单、数据处理效率高和成本低廉的特点。
[0006]本发明可以通过以下技术方案来实现:
本发明公开了一种基于云存储的集群式摄像数据存储系统,包括客户端API单元、管理服务器集群、工作服务器集群、备份服务器集群和存储单元,所述客户端API单元设置在摄像机端,所述管理服务器集群包括API处理模块、负载均衡模块、节点监控模块和高可用模块,所述管理服务器集群通过API处理模块与所述客户端API单元实现云服务数据传输反馈,所述管理服务器集群通过负载均衡模块与所述工作服务器集群实现数据传输反馈,所述管理服务器集群通过节点监控模块对所述工作服务器进行工作状态监控,所述管理服务器集群通过高可用服务器与所述备份服务器实现数据传输对云管理平台集群的数据进行备份,所述工作服务器通过读写存储单元实现视频数据的云存储。
[0007]在具体作用上,API处理模块主要负载接受客户端API单元的服务请求信息,记录本次请求服务请求的相关信息,如源地址,请求类型,摄像机类型等。同时在工作服务器集群中选择一台合适的工作服务器,将请求转发至工作服务器集群的具体节点,由工作服务器集群的具体节点来应答客户端API单元的服务请求。负载均衡模块主要是基于工作服务器集群中各工作服务器节点提供的工作服务器都是相同的考虑,采用了 IP负载均衡技术,从工作服务器集群中选择一台工作服务器响应服务请求,同时记录此次请求,以便下次访问时,直接选择相同的工作服务器;同时,针对因请求差异服务时间的长度不同造成的负载倾斜,采用动态反馈调度算法进行调整。节点监控模块主要用于接收工作服务器上报的信息,该信息包括负载值以及工作状态,负载值计算得到节点权值,并用于负载均衡调度;该模块同时可以监控工作服务器是否故障,一般认为在一定时间内未接收到工作服务器心跳数据包则认为节点故障,本模块将定期发送负载值作为心跳连接。高可用性模块是在管理服务器集群和备份服务器之间保持一个心跳连续,管理服务器集群故障后,备份服务器获得管理服务器集群的IP,这样客户端以及工作服务器集群的数据会发往备份服务器,同时,为了保证管理服务器集群和备份服务器集群之间的数据保持一致,采用共享存储方法。
[0008]进一步地,所述存储单元包括高性能录像池和休眠录像池。在实际应用中,由于摄像机的类型以及分辨率,码流等不同,产生的数据量也有很大的差别,必然导致对应的录像存储池存储的数据量也有很大的差别,因此,储集群划分为高性能录像池和休眠录像池,有利于针对其数据特点进行针对性存储,提高存储速度和效率。
[0009]进一步地,所述存储单元包括若干磁盘阵列RAID5,同时兼顾了存储性能、数据安全和存储成本。
[0010]进一步地,所述负载模块IP负载均衡技术从工作服务器集群中选择一台服务器响应服务请求,同时记录此次请求,以便下次访问时,直接选择相同的服务器。
[0011 ]进一步地,所述API处理模块从客户端API单元接收并记录的信息包括源地址,请求类型和摄像机类型。
[0012]进一步地,所述节点监控模块说记录的信息包括工作服务器集群的载值以及工作服务器集群的工作状态。
[00?3] 进一步地,所述高性能录像池创建录像池时使各录像卷属于不同的物理卷实现磁盘空间分散式利用,使得各存储节点可以并发工作,从而提高存储节点的吞吐量和响应速度。
[OOM] 进一步地,所述休眠录像池创建录像池时使各录像卷属于相同的物理卷实现磁盘空间集中式利用,最大化利用磁盘空间,让存储空间尽可能的集中,即剩余的磁盘空间也可以分配给其它录像池利用。
[0015]本发明一种基于云存储的集群式摄像数据存储系统,具有如下的有益效果:
第一、性能优异,系统能够并行处理用户请求,提高计算机的处理性能; 第二、可用性强,系统包括多个节点,工作服务器集群内的一台服务器无法正常工作时,管理服务器集群会自动进行任务切换,将任务分配给其它节点,有效避免单点故障;第三、扩容简单,无论是增加前端摄像机还是扩容后端存储,均不用对整个系统进行重新配置,提高系统的可用性和安全性;
第四、数据处理效率高,采用集群系统设计能更高效工作,更快响应客户端的请求,按照一定的调度算法,将请求分发出去;
第五、成本低廉,本系统架构简单,数据处理效率高,可实现性和扩容性强,有效节省其使用和维护成本。
【附图说明】
[0016]图1为本发明一种基于云存储的集群式摄像数据存储系统的原理框图示意图。
[0017]图2为本发明一种基于云存储的集群式摄像数据存储系统的文件块号的构造。
[0018]图3为本发明一种基于云存储的集群式摄像数据存储系统的日志格式。
[0019]图4为本发明一种基于云存储的集群式摄像数据存储系统的用户上传文件流程图。
[0020]图5为本发明一种基于云存储的集群式摄像数据存储系统的用户下载文件流程图。
[0021]图6为本发明一种基于云存储的集群式摄像数据存储系统的用户删除文件流程图。
[0022]图7为本发明一种基于云存储的集群式摄像数据存储系统实施例2的录像存储池创建流程图。
【具体实施方式】
[0023]为了使本技术领域的人员更好地理解本发明的技术方案,下面结合实施例及附图对本发明产品作进一步详细的说明。
[0024]实施例1
如图1所示,本发明公开了本发明公开了一种基于云存储的集群式摄像数据存储系统,包括客户端API单元、管理服务器集群、工作服务器集群、备份服务器集群和存储单元,所述客户端API单元设置在摄像机端,所述管理服务器集群包括API处理模块、负载均衡模块、节点监控模块和高可用模块,所述管理服务器集群通过API处理模块与所述客户端API单元实现云服务数据传输反馈,所述管理服务器集群通过负载均衡模块与所述工作服务器集群实现数据传输反馈,所述管理服务器集群通过节点监控模块对所述工作服务器进行工作状态监控,所述管理服务器集群通过高可用服务器与所述备份服务器实现数据传输对云管理平台集群的数据进行备份,所述工作服务器通过读写存储单元实现视频数据的云存储。所述存储单元包括若干磁盘阵列RAID5。所述负载模块IP负载均衡技术从工作服务器集群中选择一台服务器响应服务请求,同时记录此次请求,以便下次访问时,直接选择相同的服务器。所述API处理模块从客户端API单元接收并记录的信息包括源地址,请求类型和摄像机类型。所述节点监控模块说记录的信息包括工作服务器集群的载值以及工作服务器集群的工作状态。
[0025]本系统通过基于云的数据存储部署模式,通过集群技术将多个单点服务器构成集群系统,利用负载均衡算法分配客户端服务请求,并利用备份服务器保证系统的高可用性。有效合理地进行资源和数据的统一计算和处理。具体良好的透明性和扩展性。在实际应用中,其具体实现过程如下:
a)构建云存储单元,云存储单元是整个集群系统的基础,本系统采用磁盘阵列RAID5来存储客户发送的视频数据,并设计存储池,根据客户端设备特性将数据存储于不同的逻辑卷。
[0026]b)构建服务器集群,本系统设计了集群网络连接方式,同时,管理服务器集群对外交互API,以及对工作服务器的监控,设计了工作服务器负载值的计算以及向管理服务器上报工作状态。
[0027]c)集群负载均衡调度,管理服务器通过负载均衡调度算法选择适当的工作服务器来处理客户端的服务请求。
[0028]d)构建高可用集群系统,实现通过一台备份服务器实时监控管理服务器的工作状态。并保证与管理服务器之间的数据同步。
[0029]实施例2
为确保系统中所有文件的完整性和文件的摘要信息,本发明存储系统中采用SHA或MD5等散列算法来实现。文件块的摘要信息被加入到文件块号中。其中文件块号的构造如下图2所示:
在图2中,该文件的块号前半段为文件块的信息摘要,即MD5值,后半段为文件块生成时客户端的地址及当前时间。因此,系统在利用散列机制对文件块进行寻址时,只使用该块号的前半段(即文件块的摘要信息)进行寻址。这样就可以保证相同的文件块会被定为到相同的SU(存储单元集群)中,通过这种方式,系统的存储利用率可以得到极大的提升,也可以进一步节省存储空间。
[0030]a)存储模型设计
每一片文件上传到数据存储单元之后都会产生相应的日志,并保存在数据库中,其日志格式如下图3所示:
在图3中,Infohash表示文件索引号;Sequence表示文件片上传成功后文件片所属逻辑管理单元的序列号;Delete表示该文件片是否删除标记;Time表示文件片在数据存储单元上通过gettime0fday()函数得到的时间戳,只要用于垃圾回收;Path表示文件片所在的物理存储介质的绝对存储路径。
[0031]b)用户上传文件流程
客户端登录成功并认证成功后,用户发出请求上传文件片信息,文件的分片是在客户端完成的,同时在客户端生成的index随上传文件请求一起发送到数据存储模块,存储模块会查询数据库看该文件的index是否存储于存储单元,如已经存在,则返回给请求用户一个消息,告知该文件已经存在,客户端继续请求下一个上传的文件片。然后该文件片不存在存储单元中,则客户端将文件片数据上传到SU(存储单元集群),SU再利用心跳函数与其他SU的文件片保持同步,并推送文件片数据到其他SU的副本上,最后写入数据库和磁盘,并返回给客户端一个上传文件成功的消息,其具体流程图如图4所示:c)用户下载文件流程客户端请求下载一个文件片数据的消息,同时在请求下载的消息中包含有文件片的index,当SU收到请求文件片的index后,通过数据库去查询该index的存储的具体位置信息,如果查询到该index的存在,则通过具体的位置信息(存储位置)去读取数控并传给客户端,如果没有查询到该index,或是文件已经打了删除标记则给用户返回一个错误的消息,其具体流程图如图5所示。
[0032]d)用户删除文件流程
客户端登录成功后,向服务器发送删除文件片的请求,同时请求消息中带有需要删除的文件片index,SU模块在数据库中查询该index是否存在;如果存在,则在数据库中将该文件打上删除标记。如果不存在,则向客户端返回一个不存在的消息,最后由SU自己删除打上删除标记的文件片数据,并删除数据库中的记录。具体流程图如图6所示。
[0033]实施例3
本发明公开了一种基于云存储的集群式摄像数据存储系统,存储单元包括高性能录像池和休眠录像池,所述高性能录像池创建录像池时使各录像卷属于不同的物理卷实现磁盘空间分散式利用;所述休眠录像池创建录像池时使各录像卷属于相同的物理卷实现磁盘空间集中式利用。在实际使用中,其录像存储池创建流程如图7所示:
首先发出客户端A[I单元发出创建录像存储池的请求,管理服务器集群验证密钥是否一致,若不一致,产生错误信息,发送应答信息。
[0034]若密钥一致,计算所需空间,判断具体类型为高性能录像池还是休眠录像池。
[0035]若为高性能录像池,计算各节点所需要的空间,然后节点剩余空间从大到小的顺序排序,按照从大到小的顺序选择存储节点,创建录像存储池;
若为休眠录像池,则节点剩余空间从小到大顺序排序,根据节点剩余空间最大的节点来判断能否容纳存储数据,若不能容纳,自动转至容高性能录像池按照节点剩余空间从大到小的顺序排序后使用高性能录像池进行存储;若节点剩余空间最大的节点可以容纳存储,选择节点剩余空间最大的存储节点创建录像池。
[0036]创建录像池成功后,保存录像池信息,产生应答信息,发送应答信息;若创建录像池失败,产生错误信息,发送应答信息。
[0037]以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
【主权项】
1.一种基于云存储的集群式摄像数据存储系统,其特征在于:包括客户端API单元、管理服务器集群、工作服务器集群、备份服务器集群和存储单元,所述客户端API单元设置在摄像机端,所述管理服务器集群包括API处理模块、负载均衡模块、节点监控模块和高可用模块,所述管理服务器集群通过API处理模块与所述客户端API单元实现云服务数据传输反馈,所述管理服务器集群通过负载均衡模块与所述工作服务器集群实现数据传输反馈,所述管理服务器集群通过节点监控模块对所述工作服务器进行工作状态监控,所述管理服务器集群通过高可用服务器与所述备份服务器实现数据传输对云管理平台集群的数据进行备份,所述工作服务器通过读写存储单元实现视频数据的云存储。2.根据权利要求1所述的基于云存储的集群式摄像数据存储系统,其特征在于:所述存储单元包括高性能录像池和休眠录像池。3.根据权利要求2所述的基于云存储的集群式摄像数据存储系统,其特征在于:所述存储单元包括若干磁盘阵列RAID5。4.根据权利要求3所述的基于云存储的集群式摄像数据存储系统,其特征在于:所述负载模块IP负载均衡技术从工作服务器集群中选择一台服务器响应服务请求,同时记录此次请求,以便下次访问时,直接选择相同的服务器。5.根据权利要求4所述的基于云存储的集群式摄像数据存储系统,其特征在于:所述API处理模块从客户端API单元接收并记录的信息包括源地址,请求类型和摄像机类型。6.根据权利要求5所述的基于云存储的集群式摄像数据存储系统,其特征在于:所述节点监控模块说记录的信息包括工作服务器集群的载值以及工作服务器集群的工作状态。7.根据权利要求6所述的基于云存储的集群式摄像数据存储系统,其特征在于:所述高性能录像池创建录像池时使各录像卷属于不同的物理卷实现磁盘空间分散式利用。8.根据权利要求6所述的基于云存储的集群式摄像数据存储系统,其特征在于:所述休眠录像池创建录像池时使各录像卷属于相同的物理卷实现磁盘空间集中式利用。
【文档编号】H04N5/781GK106060173SQ201610585076
【公开日】2016年10月26日
【申请日】2016年7月22日 公开号201610585076.4, CN 106060173 A, CN 106060173A, CN 201610585076, CN-A-106060173, CN106060173 A, CN106060173A, CN201610585076, CN201610585076.4
【发明人】蔡业飞, 刘勇, 邹时鹏
【申请人】恒业智能信息技术(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1