CN104702654A - 基于视频云存储系统的存储与提取性能平衡的方法与装置 - Google Patents

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

Info

Publication number
CN104702654A
CN104702654A CN201410064256.9A CN201410064256A CN104702654A CN 104702654 A CN104702654 A CN 104702654A CN 201410064256 A CN201410064256 A CN 201410064256A CN 104702654 A CN104702654 A CN 104702654A
Authority
CN
China
Prior art keywords
data
storage
storage server
video cloud
headend equipment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410064256.9A
Other languages
English (en)
Other versions
CN104702654B (zh
Inventor
刘锋
葛发松
张传庆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Hikvision Digital Technology Co Ltd
Original Assignee
Hangzhou Hikvision Digital Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Hikvision Digital Technology Co Ltd filed Critical Hangzhou Hikvision Digital Technology Co Ltd
Priority to CN201410064256.9A priority Critical patent/CN104702654B/zh
Publication of CN104702654A publication Critical patent/CN104702654A/zh
Application granted granted Critical
Publication of CN104702654B publication Critical patent/CN104702654B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及视频云存储,公开了一种基于视频云存储的存储与提取性能平衡的方法与装置。本发明包括以下步骤:将获取的数据按容量分为数据块并分散存储到至少一个存储服务器的不同存储设备中;提取数据时,获取待提取数据所在的存储服务器信息,该信息包括数据块大小和系统负载高低;保证分散存储优先的前提下,根据存储服务器信息以用户定义的优先级,制定提取策略;根据提取策略向存储服务器并发地提取数据。本发明中,数据分散存储到不同存储服务器,有效利用了系统资源;在保证分散存储优先的前提下,根据提取策略并发地向不同的存储服务器提取数据,保证数据安全性的同时能够高效提取数据,减少了存储和提取数据对于系统资源抢占的冲突。

Description

基于视频云存储系统的存储与提取性能平衡的方法与装置
技术领域
本发明涉及视频云存储领域,特别涉及基于视频云存储系统的存储与提取性能平衡的方法与装置。
背景技术
视频云存储是在云计算概念上延伸和发展出来的一种通过集群应用、网格技术或分式文件系统等功能,通过应用软件集合起来协同工作,共同对外提供高效视频数据存储和业务访问功能的一个系统。
随着科技的发展,视频云部署的规模越来越大,数据量正在以千万数量级增长,同时用户对视频云存储性能和应用体验的要求也越来越高。在性能方面的要求主要包括:存储速度快、数据高安全性和系统整体性能实用率高等。在用户体验方面的要求主要包括:各项功能的反应时间短,效率高等特点。这种现状下在视频云存储高速写数据和用户的体验间产生了不可避免的冲突,为了解决这个问题亟需设计从视频云存储系统提取(一种基于视频云存储系统特性读取视频数据的方法)数据的解决方案,有效的解决视频云存储高速存储和用户体验间的冲突。
目前很多系统在存储和提取数据时大多采用顺序存储顺序提取的方式和分块存储顺序提取的方式,这两种方式不但效率低而且用户体验效果差,当整个系统在执行大数据量存储和大并发量提取时,常常会导致数据丢失等异常发生,实际场景描述如图1和图2所示。其中,图1为视频云存储系统正常环境应用场景,在正常使用环境中视频云存储系统首先需要满足对大数据的存储,并保证数据安全可靠,但这种使用场景往往只是一种理想环境,视频云存储可以存储海量数据,同时也会有大量的用户需要同时提取数据,这样不但会对网络造成压力也会严重影响视频云存储系统的系统,如图2视频云存储系统真实运行环境所示。在异常环境中由于视频云存储的存储服务器负载过高,不但影响提取效率更重要的是会影响正常的数据存储功能,很可能会导致数据丢失等问题,还可能会造成更严重的后果。
发明内容
本发明的目的在于提供一种基于视频云存储系统的存储与提取性能平衡的方法与装置,将数据分散存储到不同的存储服务器中,有效利用了视频云存储系统资源,提升了整体效率;在分散存储数据的基础上,提取数据时在保证视频云存储的分散存储功能优先进行的前提下,根据提取策略并发地向不同的存储服务器提取数据,既在一定程度上保证了数据的安全性,又能够高效提取数据,减少了视频云存储系统中存储和提取数据对于系统资源抢占的冲突。
为解决上述技术问题,本发明的实施方式公开了一种基于视频云存储系统的存储与提取性能平衡的方法,包括以下步骤:
当从前端设备获取到数据时,对数据按容量进行分块得到数据块,并将数据块分散存储到至少一个存储服务器的不同存储设备中;
当用户欲从视频云存储系统中提取数据时,从管理服务器中获取需要提取的数据所在的存储服务器信息,存储服务器信息包括存储服务器所存储的数据块大小和系统负载高低的信息;
在保证视频云存储的分散存储功能优先进行的前提下,根据数据的存储服务器信息以及用户定义的数据优先级,制定提取策略,提取策略用于控制并发提取数据的线程数、各线程提取数据的速度以及数据提取的优先级;
根据制定的提取策略,向存储服务器并发地提取数据。
本发明的实施方式还公开了一种基于视频云存储系统的存储与提取性能平衡的装置,包括:
分散存储模块,用于当从前端设备获取到数据时,对数据按容量进行分块得到数据块,并将数据块分散存储到至少一个存储服务器的不同存储设备中;
存储服务器信息获取模块,用于当用户欲从视频云存储系统中提取数据时,从管理服务器中获取需要提取的数据所在的存储服务器信息,存储服务器信息包括存储服务器所存储的数据块大小和系统负载高低的信息;
提取策略制定模块,用于在保证视频云存储的分散存储功能优先进行的前提下,根据数据的存储服务器信息以及用户定义的数据优先级,制定提取策略,提取策略用于控制并发提取数据的线程数、各线程提取数据的速度以及数据提取的优先级;
提取模块,用于根据制定的提取策略,向存储服务器并发地提取数据。
本发明实施方式与现有技术相比,主要区别及其效果在于:
本发明将数据分散存储到不同的存储服务器中,有效利用了视频云存储系统资源,提升了整体效率;在分散存储数据的基础上,提取数据时在保证视频云存储的分散存储功能优先进行的前提下,根据提取策略并发地向不同的存储服务器提取数据,既在一定程度上保证了数据的安全性,又能够高效提取数据,减少了视频云存储系统中存储和提取数据对于系统资源抢占的冲突,保证在海量数据存储和大量数据提取时,视频云存储系统能够正常高效地运行。
进一步地,存储策略可以保证数据按照用户的要求进行存储,同时保证各个存储设备平摊整个系统的压力。
进一步地,根据数据容量大小决定分散粒度,取代现有技术中按照时间等因素决定分散粒度,能够精确控制分散粒度,从而使数据存储均匀,充分利用存储资源。
进一步地,通过实时获取存储服务器的分块数据信息,能够及时更新在提取数据的过程中存储服务器的压力,从而对提取速度进行动态控制。
附图说明
图1是视频云存储系统正常环境应用场景示意图;
图2是视频云存储系统异常环境应用场景示意图;
图3是本发明第一实施方式中一种基于视频云存储系统的存储与提取性能平衡的方法的流程示意图;
图4是本发明第一实施方式中一种基于视频云存储系统的存储与提取性能平衡的方法的数据提取的核心原理图;
图5是本发明第一实施方式中一种基于视频云存储系统的存储与提取性能平衡的方法的时序图;
图6是本发明第一实施方式中一种基于视频云存储系统的存储与提取性能平衡的方法的流程图;
图7是本发明第二实施方式中一种基于视频云存储系统的存储与提取性能平衡的装置的结构示意图。
具体实施方式
在以下的叙述中,为了使读者更好地理解本申请而提出了许多技术细节。但是,本领域的普通技术人员可以理解,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的实施方式作进一步地详细描述。
本发明第一实施方式涉及一种基于视频云存储系统的存储与提取性能平衡的方法,图3是该基于视频云存储系统的存储与提取性能平衡的方法的流程示意图。
具体地说,如图3所示,该基于视频云存储系统的存储与提取性能平衡的方法包括以下步骤:
在步骤301中,当从前端设备获取到数据时,对数据按容量进行分块得到数据块,并将数据块分散存储到至少一个存储服务器的不同存储设备中。
优选地,在步骤301中,将数据块分散存储到至少一个存储服务器的不同存储设备中,包括以下子步骤:
按设定的存储策略为前端设备预分配至少一个存储服务器,前端设备将数据块发送给分配到的存储服务器;
按设定的存储策略为前端设备预分配挂接在存储服务器上的存储设备,存储服务器将数据块存储到分配到的存储设备中。
此外,可以理解,当预分配的存储空间被写满时,前端设备需要再次向管理服务器申请存储服务器,并且申请到存储服务器后,需要再次向新的存储服务器申请存储空间。
优选地,在步骤301中将数据块分散存储到至少一个存储服务器的不同存储设备中的步骤之前,还包括步骤:
设定存储策略,为数据块的分散存储预分配至少一个存储服务器的不同存储设备,存储策略包括:
前端设备向管理服务器申请存储服务器时,如果用户选择对数据进行分散存储,则根据各存储服务器的系统性能,为前端设备分配相应的存储服务器;如果用户选择对数据进行集中存储,则为前端设备分配集中存储所指定范围内的存储服务器;
前端设备向存储服务器申请存储设备时,挑选存储压力最小的存储设备分配给前端设备。
存储策略可以保证数据按照用户的要求进行存储,同时保证各个存储设备平摊整个系统的压力。
此外,可以理解,用户选择进行集中存储时,管理服务器为前端设备分配集中存储所指定范围内的存储服务器,指定范围内的存储服务器可以为多台,因此集中存储在本发明中是一种分散程度较低的分散存储。
需要说明的是,当从前端设备获取到数据时,对数据按容量进行分块得到数据块的步骤中,数据块的大小小于存储设备容量大小的千分之一。
此外,可以理解,在本发明的其他实施方式中,在对视频数据按容量进行分块得到数据块时,也可以根据实际的应用场景,采用其它方式确定数据分块的上限,例如将数据分块的上限定为1GB或者其它数值,而不局限于此处提到的方式。
根据数据容量大小决定分散粒度,取代现有技术中按照时间等因素决定分散粒度,能够精确控制分散粒度,从而使数据存储均匀,充分利用存储资源。
此后进入步骤302,当用户欲从视频云存储系统中提取数据时,从管理服务器中获取需要提取的数据所在的存储服务器信息,存储服务器信息包括存储服务器所存储的数据块大小和系统负载高低的信息。
此外,可以理解,存储服务器信息为整体数据的信息,由各个存储服务器所对应的分块数据信息构成。在开始提取的时候,提取者就能够得到整体数据的信息。存储服务器信息包括还包括存储服务器的IP。
此后进入步骤303,在保证视频云存储的分散存储功能优先进行的前提下,根据数据的存储服务器信息以及用户定义的数据优先级,制定提取策略,提取策略用于控制并发提取数据的线程数、各线程提取数据的速度以及数据提取的优先级。
制定提取策略时,一方面应该考虑存储服务器的负载信息以及所存储的需要提取的数据块的大小,对于存储数据块大、负载低的存储服务器优先采用高并发提取数据,对于存储数据块小、负载高的存储服务器采用低速或延缓提取数据。另一方面应当考虑到提升用户体验方面的需求,优先提取用户定义的数据优先级高的数据。因此,将两方面相结合,对于存储服务器存储的数据块大、优先级高以及系统负载低的采用高并发提取数据,对于数据块小、优先级低以及系统负载高的采用低速或者延缓提取数据。
此后进入步骤304,根据制定的提取策略,向存储服务器并发地提取数据。
优选地,在根据制定的提取策略,向存储服务器并发地提取数据的步骤304之后,还包括步骤:
实时更新所获取的存储服务器信息并根据更新后的存储服务器信息得到新的提取策略。
此外,可以理解,在本发明的其他实施方式中,此步骤中更新存储服务器信息还可以通过主动上报的方式实现,或者在提取的数据信息中包含用于更新提取策略的存储服务器信息。
通过实时获取存储服务器的分块数据信息,能够及时更新在提取数据的过程中存储服务器的压力,从而对提取速度进行动态控制。
此后结束此流程。
本发明将数据分散存储到不同的存储服务器中,有效利用了视频云存储系统资源,提升了整体效率。在分散存储数据的基础上,提取数据时在保证视频云存储的分散存储功能优先进行的前提下,根据提取策略并发地向不同的存储服务器提取数据,既在一定程度上保证了数据的安全性,又能够高效提取数据,减少了视频云存储系统中存储和提取数据对于系统资源抢占的冲突,保证在海量数据存储和大量数据提取时,视频云存储系统能够正常高效地运行。
作为本发明的优选例,主要提供的是在视频云存储系统特有的条件下,解决高效提取数据的方案,本方案的基本思想是在视频云存储技术的基础上保证在海量数据存储和大量提取数据时,视频云存储系统能够正常高效的运行。
基于视频云存储的特点,当从前端编码器(进行录像的前端摄像头)获取到大量数据时,尽可能的将数据分散存储到不同的存储服务器中,这样在存储时不但有效的利用了云存储系统资源,提升了视频云存储系统的整体效率并且在一定程度上保证了数据的安全性(不因为一台存储服务器或一个存储设备故障导致整体数据都不可用);更重要的一点是在提取数据时,可以并发的向不同的存储服务器提取数据,并且可以根据当前存储服务器的性能和当前存储服务器存储需要提取数据量的多少制定提取策略。利用提取策略,来减少视频云存储系统中存储和提取数据对于系统资源抢占的冲突。
优选例中视频云存储系统数据提取的核心原理图如图4所示,其中:
管理服务器是视频云存储系统中的管理节点,主要负责存储索引记录,调度系统中的存储资源等功能;
存储服务器是视频云存储系统中的存储节点,主要负责存储视频数据;
性能管控系统为虚拟系统,此系统既包括了存储服务器本身的性能控制,又包含了视频云存储的SDK的分配策略等,此系统为提取数据流程中各个模块的管控中心,控制了提取策略、提取速度、提取的优先级等。
图4所示核心原理图的方案中存储前端数据包含了以下几个步骤:
1.预分配存储服务器资源
前端设备(编码器等其它产生数据的设备)首先接入到视频云存储中。当前端设备产生存储需求时,前端设备首先需要向管理服务器申请一台存储服务器。当视频云存储有多台存储服务器时,管理服务器可以根据设定的策略挑选一台存储服务器。
2.预分配存储空间资源
前端设备得到存储服务器时,需要向存储服务器申请存储空间。存储空间是由存储服务器按照现有的硬件环境进行划分和设定。当存储服务器中有多个存储设备,存储服务器根据设定的策略挑选一台存储设备。
3.存储前端数据
前端将产生的数据发送给存储服务器,存储服务器将数据存储到之前预分配的存储设备中。
4.切换存储资源
当预分配的存储空间被写满时,前端设备需要再次向管理服务器申请存储服务器,并且申请到存储服务器后,需要再次向新的存储服务器申请存储空间。
前端设备存储数据的过程,重复上面的步骤,直到所有需要存储的数据都得到了存储。
图4所示核心原理图的方案中提取数据包含了以下几个步骤:
1.开始提取数据
由于同一个前端编码器的数据被分散存储到不同的存储服务器中,当用户希望从视频云存储系统中提取数据时,性能管控系统首先从管理服务器中获取当前需要提取数据的存储服务器信息(即图4中所示的向管理服务器查询数据信息)。性能管控系统获取的信息为整体数据的信息(如图4中所示的录像文件总大小信息),整体数据信息由各个分块数据信息构成,分块信息包括存储服务器的IP、存储数据大小和系统负载等。
性能管控系统会根据存储服务器的负载信息、存储数据大小以及用户指定的优先级制定一个提取策略(策略的核心思想是首先保证视频云存储正常功能稳定高效的运行,其次是存储服务器存储数量大、负载性能低的优先采用高并发提取数据,存储服务器存储数据流小且负载高的采用低速或延缓提取数据)。
性能管控系统根据提取策略开启对存储服务器提取数据过程(如图4中所示的创建线程从存储服务器提取数据信息)。
2.提取过程
提取过程中,性能控制系统实时的更新分块数据信息,以便达到用户优先级控制。
3.结束提取数据
性能控制系统判定提取数据是否完成,如若完成,停止整个提取过程,不再保留任何中间信息。
本方案中存储前端数据时提及的存储策略为管理服务器与存储服务器共同决定的。存储策略是在保证数据按照用户的要求进行存储,并且保证视频云存储的各个设备都能够均衡的工作,平摊整个系统的压力。目前存储策略包含了存储服务器的分配、存储设备的分配等等。策略如下:
1、当用户选择数据进行分散存储时,前端设备连续的向管理服务器申请存储服务器时,管理服务器尽可能的给出不同的存储服务器;
2、当用户选择数据进行集中存储时,前端设备连续的向管理服务器申请存储服务器时,管理服务器尽可能的给出指定范围内的存储服务器,若指定的存储服务器有多台,管理服务器尽可能的给出不同的存储服务器。
3、前端设备向存储服务器申请存储空间时,存储服务器挑选一台存储压力最小的设备进行空间分配。
以上的存储策略可以很好的满足用户对于数据存储的要求,并且保证了整个系统的压力分散到每台存储设备中。
本方案中提取数据时提及的提取策略为性能管控系统对于数据提取过程的控制。提取策略是在保证视频云存储的存储数据等功能不受影响下,一种尽可能快的提取数据的方法。目前,提取策略包含了提取数据速度的控制、并发提取数据数目(即提取线程数)的控制、数据提取优先级的控制等等。策略如下:
1、性能管控系统优先保证视频云存储的其它功能(例如存储功能)正常进行;
2、性能管控系统优先保证用户定义的数据优先级;
3、在满足1、2的情况下,性能管控系统尽可能在不同的存储服务器并发提取数据;
4、在满足1、2情况下,性能管控系统发现提取数据都集中在一个存储服务器时,性能管控系统获取存储服务器压力,对提取速度进行动态控制。
5、系能管控系统确保并发提取数据的最大数目,此最大数目为视频云存储、性能管控系统根据压力计算给出的一个限制。
以上的提取策略有效的保证了视频云存储在高效存储与高速提取性能间的平衡,并且很好的满足了用户的应用体验。
将上述分散存储与并发提取结合起来,本方案是在视频云存储基础上完成的,如图5所示为基于视频云存储系统的存储与提取性能平衡的方法的时序图,主要操作包括:
1、存储服务器分散存储前端编码器的视频数据信息;
2、性能管控系统监控各个存储服务器的负载信息,确保存储服务器的性能;
3、需要提取数据信息时,性能管控系统首先向管理服务器发送请求获取存储信息;
4、性能管控系统根据返回的存储服务器信息,制定提取策略;
5、性能管控系统根据策略,去存储服务器提取数据信息;
6、性能管控系统每隔一个时间T向当前存储服务器发送查询系统性能请求;
7、性能管控系统根据返回的系统信息重新制定提取策略;
图6为相应的基于视频云存储系统的存储与提取性能平衡的方法的流程图,如图6所示:
在步骤601中,获取存储服务器的系统信息;
此后进入步骤602,制定存储策略并存储数据;
此后进入步骤603,获取存储服务器的系统信息;
此后进入步骤604,判断存储服务器性能是否优秀,存储需提取数据量是否大,以制定提取策略;
若判断结果为是,则进入步骤605,并发提取数据信息,此后进入步骤607;
若判断结果为否,则进入步骤606,低速提取或延缓提取,此后进入步骤607;
在步骤607中,重新获取存储服务器的系统信息,以更新提取策略。
本发明的各方法实施方式均可以以软件、硬件、固件等方式实现。不管本发明是以软件、硬件、还是固件方式实现,指令代码都可以存储在任何类型的计算机可访问的存储器中(例如永久的或者可修改的,易失性的或者非易失性的,固态的或者非固态的,固定的或者可更换的介质等等)。同样,存储器可以例如是可编程阵列逻辑(Programmable Array Logic,简称“PAL”)、随机存取存储器(Random Access Memory,简称“RAM”)、可编程只读存储器(Programmable Read Only Memory,简称“PROM”)、只读存储器(Read-Only Memory,简称“ROM”)、电可擦除可编程只读存储器(Electrically Erasable Programmable ROM,简称“EEPROM”)、磁盘、光盘、数字通用光盘(Digital Versatile Disc,简称“DVD”)等等。
本发明第二实施方式涉及一种基于视频云存储系统的存储与提取性能平衡的装置,图7是该基于视频云存储系统的存储与提取性能平衡的装置的结构示意图。
具体地说,如图7所示,该基于视频云存储系统的存储与提取性能平衡的装置包括:
分散存储模块,用于当从前端设备获取到数据时,对数据按容量进行分块得到数据块,并将数据块分散存储到至少一个存储服务器的不同存储设备中。
存储服务器信息获取模块,用于当用户欲从视频云存储系统中提取数据时,从管理服务器中获取需要提取的数据所在的存储服务器信息,存储服务器信息包括存储服务器所存储的数据块大小和系统负载高低的信息。
提取策略制定模块,用于在保证视频云存储的分散存储功能优先进行的前提下,根据数据的存储服务器信息以及用户定义的数据优先级,制定提取策略,提取策略用于控制并发提取数据的线程数、各线程提取数据的速度以及数据提取的优先级。
提取模块,用于根据制定的提取策略,向存储服务器并发地提取数据。
此外,可以理解,对于存储服务器存储的数据块大、优先级高以及系统负载低的采用高并发提取数据,对于数据块小、优先级低以及系统负载高的采用低速或者延缓提取数据。
优选地,分散存储模块包括以下子模块:
存储服务器分配子模块,用于按存储策略设定模块所设定的存储策略为前端设备预分配至少一个存储服务器,以使前端设备将数据块发送给分配到的存储服务器;
存储设备分配子模块,用于根据存储策略设定模块所设定的存储策略为前端设备预分配挂接在存储服务器上的存储设备,以使存储服务器将数据块存储到分配到的存储设备中。
此外,可以理解,当预分配的存储空间被写满时,前端设备需要再次向管理服务器申请存储服务器,并且申请到存储服务器后,需要再次向新的存储服务器申请存储空间。
优选地,在分散存储模块从前端设备获取到数据,对数据按容量进行分块得到数据块时,数据块的大小小于存储设备容量大小的千分之一。
此外,可以理解,在本发明的其他实施方式中,在对数据按容量进行分块得到数据块时,也可以根据实际的应用场景,采用其它方式确定数据分块的上限,例如将数据分块的上限定为1GB或者其它数值,而不局限于此处提到的方式。
根据数据容量大小决定分散粒度,取代现有技术中按照时间等因素决定分散粒度,能够精确控制分散粒度,从而使数据存储均匀,充分利用存储资源。
优选地,该基于视频云存储系统的存储与提取性能平衡的装置还包括:
存储策略设定模块,用于为数据块的分散存储预分配至少一个存储服务器的不同存储设备,存储策略包括:
前端设备向管理服务器申请存储服务器时,如果用户选择对数据进行分散存储,则根据各存储服务器的系统性能,为前端设备分配相应的存储服务器。如果用户选择对数据进行集中存储,则为前端设备分配集中存储所指定范围内的存储服务器;
前端设备向存储服务器申请存储设备时,挑选存储压力最小的存储设备分配给前端设备。
存储策略可以保证数据按照用户的要求进行存储,同时保证各个存储设备平摊整个系统的压力。
此外,可以理解,用户选择进行集中存储时,管理服务器为前端设备分配集中存储所指定范围内的存储服务器,指定范围内的存储服务器可以为多台,因此集中存储在本发明中是一种分散程度较低的分散存储。
优选地,该基于视频云存储系统的存储与提取性能平衡的装置还包括:
提取策略更新模块,用于实时更新所获取的存储服务器信息并根据更新后的存储服务器信息得到新的提取策略。
通过实时获取存储服务器的分块数据信息,能够及时更新在提取数据的过程中存储服务器的压力,从而对提取速度进行动态控制。
此外,可以理解,在本发明的其他实施方式中,此步骤中更新存储服务器信息还可以通过主动上报的方式实现,或者在提取的数据信息中包含用于更新提取策略的存储服务器信息。
第一实施方式是与本实施方式相对应的方法实施方式,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。
针对现有技术的如下缺点,本发明提供一种解决方案,应用于视频云存储系统中解决存储和提取数据时由于抢占系统资源导致的存储和提取效率下降的问题:
1、多数系统在存储和提取之间存在抢占系统资源的缺陷;
2、多数分散存储系统分散粒度控制简单,一般为前端按照时间等因素决定分散粒度,不能精确控制分散粒度,进而存储数据不均,不能充分利用存储资源;
3、多数分散存储系统分散策略简单并且单一;一般由前端决定了存储设备的选择,单一的进行分散还是集中存储,数据不能灵活的进行选择存储设备;
4、提取较大数据时,多为顺序读取,资源利用率低效率不高;
5、在开始提取的时候,系统给不出或者提取者得不到整体数据信息(如数据大小等信息);
6、采用分块提取数据,一般为简单的分块,效率不高,无法充分利用视频云存储的特性,体现视频云存储高效的特点;
7、采用并发提取数据,独占系统资源影响正常的视频数据存储功能;
8、采用并发提取数据,没有优先级概念,不能动态的控制每块是否提取数据以及提取速度;
基于视频云存储系统特性的本解决方案包括以下几点:
1、系统根据一定的策略并发提出数据;
2、系统根据一定的策略同时从多个存储节点提取数据;
3、系统根据一定的策略加快或减缓从存储节点提取数据;
4、系统根据一定的策略均衡存储和提出效率;
5、系统根据一定的策略保证数据存储的优先性;
与现有技术的上述缺点相比,本发明提供的解决方案有如下优点:
1、充分利用当前系统资源与功能,实现高效存储和高效提取功能;
2、提取较大数据时,根据视频云存储具有的特性并发提取数据,资源利用率和提取效率高;
3、不只是简单的分块提取,根据视频云存储具有的特性合理分配资源;
4、在高并发提取数据时,不会影响视频云存储主要的功能,例如:高速存储数据和多路回放等功能;
5、采用合理的分配策略,使提取效率达到最优的效果;
6、采用合理的算法使视频云存储系统资源利用率达到最优的效果;
7、可控制每一个块的数据是否提取以及提取速度;
本发明实现了一种基于云存储系统中提取大数据的解决实施方案,在本实施方案中,不影响其它业务的正常使用,其创新点主要体现在:
对云存储系统中,大数据可以有效的进行提取;
大并发提取数据,可以保证云存储系统其它业务的正常进行。
需要说明的是,本发明各设备实施方式中提到的各单元都是逻辑单元,在物理上,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现,这些逻辑单元本身的物理实现方式并不是最重要的,这些逻辑单元所实现的功能的组合才是解决本发明所提出的技术问题的关键。此外,为了突出本发明的创新部分,本发明上述各设备实施方式并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,这并不表明上述设备实施方式并不存在其它的单元。
需要说明的是,在本专利的权利要求和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
虽然通过参照本发明的某些优选实施方式,已经对本发明进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

Claims (10)

1.一种基于视频云存储系统的存储与提取性能平衡的方法,其特征在于,包括以下步骤:
当从前端设备获取到数据时,对数据按容量进行分块得到数据块,并将数据块分散存储到至少一个存储服务器的不同存储设备中;
当用户欲从视频云存储系统中提取数据时,从管理服务器中获取需要提取的数据所在的存储服务器信息,所述存储服务器信息包括存储服务器所存储的数据块大小和系统负载高低的信息;
在保证视频云存储的分散存储功能优先进行的前提下,根据数据的存储服务器信息以及用户定义的数据优先级,制定提取策略,所述提取策略用于控制并发提取数据的线程数、各线程提取数据的速度以及数据提取的优先级;
根据所述制定的提取策略,向存储服务器并发地提取数据。
2.根据权利要求1所述的基于视频云存储系统的存储与提取性能平衡的方法,其特征在于,在所述将数据块分散存储到至少一个存储服务器的不同存储设备中的步骤之前,还包括步骤:
设定存储策略,为数据块的分散存储预分配至少一个存储服务器的不同存储设备,所述存储策略包括:
前端设备向管理服务器申请存储服务器时,如果用户选择对数据进行分散存储,则根据各存储服务器的系统性能,为前端设备分配相应的存储服务器;如果用户选择对数据进行集中存储,则为前端设备分配集中存储所指定范围内的存储服务器;
前端设备向存储服务器申请存储设备时,挑选存储压力最小的存储设备分配给前端设备。
3.根据权利要求1所述的基于视频云存储系统的存储与提取性能平衡的方法,其特征在于,在所述将数据块分散存储到至少一个存储服务器的不同存储设备中的步骤中,包括以下子步骤:
按设定的存储策略为前端设备预分配至少一个存储服务器,前端设备将数据块发送给所述分配到的存储服务器;
按设定的存储策略为前端设备预分配挂接在所述存储服务器上的存储设备,存储服务器将数据块存储到所述分配到的存储设备中。
4.根据权利要求1所述的基于视频云存储系统的存储与提取性能平衡的方法,其特征在于,在所述当从前端设备获取到数据时,对数据按容量进行分块得到数据块的步骤中,所述数据块的大小小于存储设备容量大小的千分之一。
5.根据权利要求1所述的基于视频云存储系统的存储与提取性能平衡的方法,其特征在于,在所述根据制定的提取策略,向存储服务器并发地提取数据的步骤之后,还包括步骤:
实时更新所获取的存储服务器信息并根据更新后的存储服务器信息得到新的提取策略。
6.一种基于视频云存储系统的存储与提取性能平衡的装置,其特征在于,包括:
分散存储模块,用于当从前端设备获取到数据时,对数据按容量进行分块得到数据块,并将数据块分散存储到至少一个存储服务器的不同存储设备中;
存储服务器信息获取模块,用于当用户欲从视频云存储系统中提取数据时,从管理服务器中获取需要提取的数据所在的存储服务器信息,所述存储服务器信息包括存储服务器所存储的数据块大小和系统负载高低的信息;
提取策略制定模块,用于在保证视频云存储的分散存储功能优先进行的前提下,根据数据的存储服务器信息以及用户定义的数据优先级,制定提取策略,所述提取策略用于控制并发提取数据的线程数、各线程提取数据的速度以及数据提取的优先级;
提取模块,用于根据所述制定的提取策略,向存储服务器并发地提取数据。
7.根据权利要求6所述的基于视频云存储系统的存储与提取性能平衡的装置,其特征在于,还包括:
存储策略设定模块,用于为数据块的分散存储预分配至少一个存储服务器的不同存储设备,所述存储策略包括:
前端设备向管理服务器申请存储服务器时,如果用户选择对数据进行分散存储,则根据各存储服务器的系统性能,为前端设备分配相应的存储服务器;如果用户选择对数据进行集中存储,则为前端设备分配集中存储所指定范围内的存储服务器;
前端设备向存储服务器申请存储设备时,挑选存储压力最小的存储设备分配给前端设备。
8.根据权利要求6所述的基于视频云存储系统的存储与提取性能平衡的装置,其特征在于,所述分散存储模块包括以下子模块:
存储服务器分配子模块,用于按存储策略设定模块所设定的存储策略为前端设备预分配至少一个存储服务器,以使前端设备将数据块发送给所述分配到的存储服务器;
存储设备分配子模块,用于根据存储策略设定模块所设定的存储策略为前端设备预分配挂接在所述存储服务器上的存储设备,以使存储服务器将数据块存储到所述分配到的存储设备中。
9.根据权利要求6所述的基于视频云存储系统的存储与提取性能平衡的装置,其特征在于,在所述分散存储模块从前端设备获取到数据,对数据按容量进行分块得到数据块时,所述数据块的大小小于存储设备容量大小的千分之一。
10.根据权利要求6所述的基于视频云存储系统的存储与提取性能平衡的装置,其特征在于,还包括:
提取策略更新模块,用于实时更新所获取的存储服务器信息并根据更新后的存储服务器信息得到新的提取策略。
CN201410064256.9A 2014-02-25 2014-02-25 基于视频云存储系统的存储与提取性能平衡的方法与装置 Active CN104702654B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410064256.9A CN104702654B (zh) 2014-02-25 2014-02-25 基于视频云存储系统的存储与提取性能平衡的方法与装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410064256.9A CN104702654B (zh) 2014-02-25 2014-02-25 基于视频云存储系统的存储与提取性能平衡的方法与装置

Publications (2)

Publication Number Publication Date
CN104702654A true CN104702654A (zh) 2015-06-10
CN104702654B CN104702654B (zh) 2019-04-30

Family

ID=53349418

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410064256.9A Active CN104702654B (zh) 2014-02-25 2014-02-25 基于视频云存储系统的存储与提取性能平衡的方法与装置

Country Status (1)

Country Link
CN (1) CN104702654B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105306967A (zh) * 2015-10-28 2016-02-03 天彩电子(深圳)有限公司 一种云视频平台中的资源调配方法
CN106603673A (zh) * 2016-12-19 2017-04-26 上海交通大学 基于纠删码的细粒度云存储调度方法
CN106959820A (zh) * 2016-01-11 2017-07-18 杭州海康威视数字技术股份有限公司 一种数据提取方法和系统
CN110177309A (zh) * 2019-05-31 2019-08-27 北京大米科技有限公司 视频数据存储的方法、装置、电子设备及介质
CN110244573A (zh) * 2019-06-27 2019-09-17 深圳市星际无限科技有限公司 基于智能家电的存储系统与智能家电

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1434386A (zh) * 2003-01-25 2003-08-06 华中科技大学 基于集群视频服务器的节目源分片分布式存储方法
CN101605148A (zh) * 2009-05-21 2009-12-16 何吴迪 云存储的并行系统的架构方法
CN101656751A (zh) * 2008-08-18 2010-02-24 北京数码大方科技有限公司 加速上传与下载文件的方法及其系统
CN102262668A (zh) * 2011-07-28 2011-11-30 南京中兴新软件有限责任公司 分布式文件系统文件读写方法、分布式文件系统及其装置
CN102457554A (zh) * 2010-10-29 2012-05-16 镇江雅迅软件有限责任公司 一种基于多线程并发执行技术的文件下载方法
CN102546782A (zh) * 2011-12-28 2012-07-04 北京奇虎科技有限公司 一种分布式系统及其数据操作方法
CN103457980A (zh) * 2012-06-04 2013-12-18 联想(北京)有限公司 终端设备和数据获取方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1434386A (zh) * 2003-01-25 2003-08-06 华中科技大学 基于集群视频服务器的节目源分片分布式存储方法
CN101656751A (zh) * 2008-08-18 2010-02-24 北京数码大方科技有限公司 加速上传与下载文件的方法及其系统
CN101605148A (zh) * 2009-05-21 2009-12-16 何吴迪 云存储的并行系统的架构方法
CN102457554A (zh) * 2010-10-29 2012-05-16 镇江雅迅软件有限责任公司 一种基于多线程并发执行技术的文件下载方法
CN102262668A (zh) * 2011-07-28 2011-11-30 南京中兴新软件有限责任公司 分布式文件系统文件读写方法、分布式文件系统及其装置
CN102546782A (zh) * 2011-12-28 2012-07-04 北京奇虎科技有限公司 一种分布式系统及其数据操作方法
CN103457980A (zh) * 2012-06-04 2013-12-18 联想(北京)有限公司 终端设备和数据获取方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105306967A (zh) * 2015-10-28 2016-02-03 天彩电子(深圳)有限公司 一种云视频平台中的资源调配方法
CN105306967B (zh) * 2015-10-28 2018-08-21 天彩电子(深圳)有限公司 一种云视频平台中的资源调配方法
CN106959820A (zh) * 2016-01-11 2017-07-18 杭州海康威视数字技术股份有限公司 一种数据提取方法和系统
CN106603673A (zh) * 2016-12-19 2017-04-26 上海交通大学 基于纠删码的细粒度云存储调度方法
CN110177309A (zh) * 2019-05-31 2019-08-27 北京大米科技有限公司 视频数据存储的方法、装置、电子设备及介质
CN110244573A (zh) * 2019-06-27 2019-09-17 深圳市星际无限科技有限公司 基于智能家电的存储系统与智能家电

Also Published As

Publication number Publication date
CN104702654B (zh) 2019-04-30

Similar Documents

Publication Publication Date Title
KR101502896B1 (ko) 맵 리듀스를 이용한 분산 메모리 클러스터 제어 장치 및 방법
US10768857B2 (en) Storage system having a controller that selects a die of a solid state disk to store data
JP6025149B2 (ja) データを管理するシステムおよび方法
CN105589812B (zh) 磁盘碎片整理方法、装置及主机
US10356150B1 (en) Automated repartitioning of streaming data
CN104702654A (zh) 基于视频云存储系统的存储与提取性能平衡的方法与装置
US9026759B2 (en) Storage system management apparatus and management method
US10884667B2 (en) Storage controller and IO request processing method
CN102985909B (zh) 为良好分格的对象提供高扩展性网络存储的方法和设备
CN103095805A (zh) 一种对数据进行智能分层管理的云存储系统
CN103077197A (zh) 一种数据存储方法装置
CN110321331A (zh) 利用多级散列函数来确定存储地址的对象存储系统
CN103761059A (zh) 一种用于海量数据管理的多盘位存储方法及系统
EP4170491A1 (en) Resource scheduling method and apparatus, electronic device, and computer-readable storage medium
CN104182487A (zh) 一种支持多种存储方式的统一存储方法
CN102413186A (zh) 基于私有云计算的资源调度方法、装置和云管理服务器
JP2019144821A (ja) 運用管理システム及び運用管理方法
CN109669822A (zh) 电子装置、备用存储池的创建方法和计算机可读存储介质
CN114003377A (zh) 一种基于es服务的内存熔断方法、装置、设备及可读介质
US8443369B1 (en) Method and system for dynamically selecting a best resource from each resource collection based on resources dependencies, prior selections and statistics to implement an allocation policy
CN102970349B (zh) 一种dht网络的存储负载均衡方法
US9177274B2 (en) Queue with segments for task management
CN107277143A (zh) 一种资源匹配管理方法及装置
CN105740065A (zh) 一种控制异步任务执行的方法及装置
JP2011070464A (ja) 計算機システム及び計算機システムの性能管理方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant