基于视频云存储系统的存储与提取性能平衡的方法与装置的制造方法_2

文档序号:8383801阅读:来源:国知局
分之一。
[0044]此外,可以理解,在本发明的其他实施方式中,在对视频数据按容量进行分块得到数据块时,也可以根据实际的应用场景,采用其它方式确定数据分块的上限,例如将数据分块的上限定为IGB或者其它数值,而不局限于此处提到的方式。
[0045]根据数据容量大小决定分散粒度,取代现有技术中按照时间等因素决定分散粒度,能够精确控制分散粒度,从而使数据存储均匀,充分利用存储资源。
[0046]此后进入步骤302,当用户欲从视频云存储系统中提取数据时,从管理服务器中获取需要提取的数据所在的存储服务器信息,存储服务器信息包括存储服务器所存储的数据块大小和系统负载高低的信息。
[0047]此外,可以理解,存储服务器信息为整体数据的信息,由各个存储服务器所对应的分块数据信息构成。在开始提取的时候,提取者就能够得到整体数据的信息。存储服务器信息包括还包括存储服务器的IP。
[0048]此后进入步骤303,在保证视频云存储的分散存储功能优先进行的前提下,根据数据的存储服务器信息以及用户定义的数据优先级,制定提取策略,提取策略用于控制并发提取数据的线程数、各线程提取数据的速度以及数据提取的优先级。
[0049]制定提取策略时,一方面应该考虑存储服务器的负载信息以及所存储的需要提取的数据块的大小,对于存储数据块大、负载低的存储服务器优先采用高并发提取数据,对于存储数据块小、负载高的存储服务器采用低速或延缓提取数据。另一方面应当考虑到提升用户体验方面的需求,优先提取用户定义的数据优先级高的数据。因此,将两方面相结合,对于存储服务器存储的数据块大、优先级高以及系统负载低的采用高并发提取数据,对于数据块小、优先级低以及系统负载高的采用低速或者延缓提取数据。
[0050]此后进入步骤304,根据制定的提取策略,向存储服务器并发地提取数据。
[0051]优选地,在根据制定的提取策略,向存储服务器并发地提取数据的步骤304之后,还包括步骤:
[0052]实时更新所获取的存储服务器信息并根据更新后的存储服务器信息得到新的提取策略。
[0053]此外,可以理解,在本发明的其他实施方式中,此步骤中更新存储服务器信息还可以通过主动上报的方式实现,或者在提取的数据信息中包含用于更新提取策略的存储服务器信息。
[0054]通过实时获取存储服务器的分块数据信息,能够及时更新在提取数据的过程中存储服务器的压力,从而对提取速度进行动态控制。
[0055]此后结束此流程。
[0056]本发明将数据分散存储到不同的存储服务器中,有效利用了视频云存储系统资源,提升了整体效率。在分散存储数据的基础上,提取数据时在保证视频云存储的分散存储功能优先进行的前提下,根据提取策略并发地向不同的存储服务器提取数据,既在一定程度上保证了数据的安全性,又能够高效提取数据,减少了视频云存储系统中存储和提取数据对于系统资源抢占的冲突,保证在海量数据存储和大量数据提取时,视频云存储系统能够正常高效地运行。
[0057]作为本发明的优选例,主要提供的是在视频云存储系统特有的条件下,解决高效提取数据的方案,本方案的基本思想是在视频云存储技术的基础上保证在海量数据存储和大量提取数据时,视频云存储系统能够正常高效的运行。
[0058]基于视频云存储的特点,当从前端编码器(进行录像的前端摄像头)获取到大量数据时,尽可能的将数据分散存储到不同的存储服务器中,这样在存储时不但有效的利用了云存储系统资源,提升了视频云存储系统的整体效率并且在一定程度上保证了数据的安全性(不因为一台存储服务器或一个存储设备故障导致整体数据都不可用);更重要的一点是在提取数据时,可以并发的向不同的存储服务器提取数据,并且可以根据当前存储服务器的性能和当前存储服务器存储需要提取数据量的多少制定提取策略。利用提取策略,来减少视频云存储系统中存储和提取数据对于系统资源抢占的冲突。
[0059]优选例中视频云存储系统数据提取的核心原理图如图4所示,其中:
[0060]管理服务器是视频云存储系统中的管理节点,主要负责存储索引记录,调度系统中的存储资源等功能;
[0061]存储服务器是视频云存储系统中的存储节点,主要负责存储视频数据;
[0062]性能管控系统为虚拟系统,此系统既包括了存储服务器本身的性能控制,又包含了视频云存储的SDK的分配策略等,此系统为提取数据流程中各个模块的管控中心,控制了提取策略、提取速度、提取的优先级等。
[0063]图4所示核心原理图的方案中存储前端数据包含了以下几个步骤:
[0064]1.预分配存储服务器资源
[0065]前端设备(编码器等其它产生数据的设备)首先接入到视频云存储中。当前端设备产生存储需求时,前端设备首先需要向管理服务器申请一台存储服务器。当视频云存储有多台存储服务器时,管理服务器可以根据设定的策略挑选一台存储服务器。
[0066]2.预分配存储空间资源
[0067]前端设备得到存储服务器时,需要向存储服务器申请存储空间。存储空间是由存储服务器按照现有的硬件环境进行划分和设定。当存储服务器中有多个存储设备,存储服务器根据设定的策略挑选一台存储设备。
[0068]3.存储前端数据
[0069]前端将产生的数据发送给存储服务器,存储服务器将数据存储到之前预分配的存储设备中。
[0070]4.切换存储资源
[0071]当预分配的存储空间被写满时,前端设备需要再次向管理服务器申请存储服务器,并且申请到存储服务器后,需要再次向新的存储服务器申请存储空间。
[0072]前端设备存储数据的过程,重复上面的步骤,直到所有需要存储的数据都得到了存储。
[0073]图4所示核心原理图的方案中提取数据包含了以下几个步骤:
[0074]1.开始提取数据
[0075]由于同一个前端编码器的数据被分散存储到不同的存储服务器中,当用户希望从视频云存储系统中提取数据时,性能管控系统首先从管理服务器中获取当前需要提取数据的存储服务器信息(即图4中所示的向管理服务器查询数据信息)。性能管控系统获取的信息为整体数据的信息(如图4中所示的录像文件总大小信息),整体数据信息由各个分块数据信息构成,分块信息包括存储服务器的IP、存储数据大小和系统负载等。
[0076]性能管控系统会根据存储服务器的负载信息、存储数据大小以及用户指定的优先级制定一个提取策略(策略的核心思想是首先保证视频云存储正常功能稳定高效的运行,其次是存储服务器存储数量大、负载性能低的优先采用高并发提取数据,存储服务器存储数据流小且负载高的采用低速或延缓提取数据)。
[0077]性能管控系统根据提取策略开启对存储服务器提取数据过程(如图4中所示的创建线程从存储服务器提取数据信息)。
[0078]2.提取过程
[0079]提取过程中,性能控制系统实时的更新分块数据信息,以便达到用户优先级控制。
[0080]3.结束提取数据
[0081]性能控制系统判定提取数据是否完成,如若完成,停止整个提取过程,不再保留任何中间信息。
[0082]本方案中存储前端数据时提及的存储策略为管理服务器与存储服务器共同决定的。存储策略是在保证数据按照用户的要求进行存储,并且保证视频云存储的各个设备都能够均衡的工作,平摊整个系统的压力。目前存储策略包含了存储服务器的分配、存储设备的分配等等。策略如下:
[0083]1、当用户选择数据进行分散存储时,前端设备连续的向管理服务器申请存储服务器时,管理服务器尽可能的给出不同的存储服务器;
[0084]2、当用户选择数据进行集中存储时,前端设备连续的向管理服务器申请存储服务器时,管理服务器尽可能的给出指定范围内的存储服务器,若指定的存储服务器有多台,管理服务器尽可能的给出不同的存储服务器。
[0085]3、前端设备向存储服务器申请存储空间时,存储服务器挑选一台存储压力最小的设备进行空间分配。
[0086]以上的存储策略可以很好的满足用户对于数据存储的要求,并且保证了整个系统的压力分散到每台存储设备中。
[0087]本方案中提取数据时提及的提取策略为性能管控系统对于数据提取过程的控制。提取策略是在保证视频云存储的存储数据等功能不受影响下,一种尽可能快的提取数据的方法。目前,提取策略包含了提取数据速度的控制、并发提取数据数目(即提取线程数)的控制、数据提取优先级的控制等等。策略如下:
[0088]1、性能管控系统优先保证视频云存储的其它功能(例如存储功能)正常进行;
[0089]2、性能管控系统优先保证用户定义的数据优先级;
[0090]3、在满足1、2的情况下,性能管控系统尽可能在不同的存储服务器并发提取数据;
[0091]4、在满足1、2情况下,性能管控系统发现提取数据都集中在一个存储服务器时
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1