视频业务信息读写性能的调整方法和设备 【技术领域】
本发明涉及通信技术领域,特别涉及一种视频业务信息读写性能的调整方法、设备和系统。
背景技术
在现有的技术方案中,基于网络互联协议(Internet Protocol,IP)存储区域网络(Storage Area Network,SAN)的视频监控技术方案得到了广泛的应用。
视频监控技术方案一般由摄像头、前端视频编码器(Encoder,EC)、监控管理设备、后端IP SAN和视频管理客户端(Video Management Client,VC)组成。摄像头采集图像数据后,视频编解码将模拟视频数据进行数字编码压缩处理,再将视频数据存储到存储设备中,VC客户端进行历史录像回放。
如图1所示,为现有技术中的视频监控技术方案的控制和数据流程图。
监控管理设备统一管理EC、IP SAN和VC,上述各设备之间的信息交互通过控制信令流来实现。
EC向IP SAN写入视频数据、VC从IP SAN读取视频数据为数据读写流。
EC视频数据存储在IP SAN某个阵列中的固定逻辑资源(Logical UnitNumber,LUN)中,不同EC对应的LUN可能分布在相同阵列上,也可能分布在不同阵列上。该LUN的创建在新EC加入到该方案中后完成,EC向监控管理设备请求分配对应LUN,监控管理设备再向IP SAN请求,IP SAN一般会优先选择在空闲空间较多的阵列上进行创建LUN。
如图1所示,当VC 1回放指定EC1的历史视频数据时,VC1先向监控管理设备请求,监控管理设备向VC1返回EC1对应LUN1的信息,VC1从LUN1上读取数据。
在实现本发明的过程中,申请人发现现有技术至少存在以下问题:
现有技术对于每个EC数据写入是平等对待的,没有作EC性能区分处理。但是EC种类很多,每种型号自身的性能是不一样的,即便IP SAN为每个LUN提供相同的处理能力,也会导致自身性能低的EC较容易出现写入丢包现象。整个方案的性能会受到性能最低的EC的直接影响,从而影响整个方案的性能表现。
现有技术对于VC回放和EC写入不作整体考虑。经常会出现EC写入正常的情况下VC回放图像停顿的现象,这是由于IP SAN向EC返回的写操作够快,但IP SAN向VC返回的读操作速度过慢,赶不上VC回放所需的速度,导致图像停顿。
【发明内容】
本发明提供一种视频业务信息读写性能的调整方法、设备和系统,控制性能动态调节过程,根据视频业务信息的读写状态进行各存储单元的读写性能的调整。
为达到上述目的,本发明一方面提供了一种视频业务信息读写性能的调整方法,应用于包括多个视频编码设备、多个视频客户端、一个存储设备和一个管理设备的系统中,其中,所述存储设备中包括多个存储单元,各所述存储单元分别与各所述视频编码设备相对应,存储各所述视频编码设备所生成的视频业务信息,所述管理设备中保存所述存储单元与所述视频编码设备的对应关系,并对所述存储设备进行读写性能调整控制,所述方法包括:
所述存储设备接收所述管理设备发送的针对一个或多个需要提高写入性能或读取性能的存储单元的性能调整请求;
当所述存储单元需要提高写入性能时,所述存储设备抑制其他存储单元的写入性能和/或读取性能,或抑制所述存储单元自身的读取性能,并提高所述需要提高写入性能的存储单元的写入性能,当所述存储单元需要提高读取性能时,所述存储设备抑制其他存储单元的写入性能和/或读取性能,或抑制所述存储单元自身的写入性能,并提高所述需要提高读取性能的存储单元的读取性能。
优选的,所述存储设备中还可以包括多个存储阵列,所述存储阵列中分别包含一个或多个存储单元,其中,所述存储设备抑制或提高存储单元的写入性能或读取性能,具体通过以下的方式实现:
所述存储设备降低或提高存储单元所属的存储阵列的输入输出IO处理线程的优先级;或,
所述存储设备减少或增加分配给存储单元所属的存储阵列的写缓存或读缓存;或,
所述存储设备减少或增加分配给存储单元的写缓存或读缓存。
优选的,所述存储设备提高所述需要提高写入性能或读取性能的存储单元的写入性能或读取性能之后,所述方法还包括:
所述存储设备接收所述管理设备发送的调整完成通知;
所述存储设备保存所述调整完成通知所对应的各存储单元的写入性能或读取性能的调整结果。
优选的,在所述存储设备接收到所述管理设备发送地调整完成通知之前,还包括:
如果所述存储设备接收到了针对当前被提升写入性能或读取性能的存储单元的性能调整请求,要求提高所述存储单元的写入性能或读取性能,则所述存储设备重复所述调整流程,增强当前被抑制性能的存储单元的写入性能和/或读取性能的抑制程度,并增强当前被提升性能的存储单元的写入性能或读取性能的提成程度;
如果所述存储设备接收到了针对当前被抑制写入性能或读取性能的存储单元的性能调整请求,要求提高所述存储单元的写入性能或读取性能,则所述存储设备恢复所述当前被抑制性能的存储单元的写入性能或读取性能,并抑制当前没有处于调整状态的另一个存储单元的写入性能或读取性能。
另一方面,本发明还提供了一种存储设备,应用于包括多个视频编码设备、多个视频客户端、一个存储设备和一个管理设备的系统中,其中,所述存储设备中包括多个多个存储单元,各所述存储单元分别与各所述视频编码设备相对应,存储各所述视频编码设备所生成的视频业务信息,所述管理设备中保存所述存储单元与所述视频编码设备的对应关系,并对所述存储设备进行读写性能调整控制,所述存储设备包括:
通信模块,用于接收所述管理设备发送的针对一个或多个需要提高写入性能或读取性能的存储单元的性能调整请求和/或调整完成通知,还用于接收所述视频编码设备的视频业务信息,和/或向视频客户端发送视频业务信息;
识别模块,用于根据所述通信模块所接收的性能调整请求和/或调整完成通知,识别需要进行性能调整或调整完成的存储单元和所述存储单元需要调整或完成调整的性能内容;
调整模块,用于根据所述识别模块的识别结果进行性能调整或保存调整结果,当所述识别模块识别所述存储单元需要提高写入性能时,所述调整模块抑制其他存储单元的写入性能和/或读取性能,或抑制所述存储单元自身的读取性能,并提高所述需要提高写入性能的存储单元的写入性能,当所述识别模块识别所述存储单元需要提高读取性能时,所述调整模块抑制其他存储单元的写入性能和/或读取性能,或抑制所述存储单元自身的写入性能,并提高所述需要提高读取性能的存储单元的读取性能。
优选的,所述存储设备中还可以包括多个存储阵列,所述存储阵列中分别包含一个或多个存储单元,其中,所述调整模块抑制或提高存储单元的写入性能或读取性能,具体通过以下的方式实现:
所述调整模块降低或提高存储单元所属的存储阵列的输入输出IO处理线程的优先级;或,
所述调整模块减少或增加分配给存储单元所属的存储阵列的写缓存或读缓存;或,
所述调整模块减少或增加分配给存储单元的写缓存或读缓存。
优选的,在所述通信模块接收到所述管理设备发送的调整完成通知之前,
如果所述通信模块接收到了针对当前被抑制性能的存储单元或当前被提升性能的存储单元的性能调整请求,要求提高所述存储单元的写入性能,
所述识别模块,还用于识别所述通信模块所接收的性能调整请求所对应的存储单元当前是否处于被抑制性能或被提升性能的性能调整状态;
所述调整模块,还用于当所述识别模块识别所述存储单元处于被提升性能的性能调整状态时,重复所述调整流程,增强当前被抑制性能的存储单元的写入性能和/或读取性能的抑制程度,并增强当前被提升性能的存储单元的写入性能或读取性能的提成程度,当所述识别模块识别所述存储单元处于被抑制的性能调整状态时,恢复所述当前被抑制性能的存储单元的写入性能或读取性能,并抑制当前没有处于调整状态的另一个存储单元的写入性能或读取性能。
另一方面,本发明还提供了一种视频业务信息读写性能的调整方法,应用于包括多个视频编码设备、多个视频客户端、一个存储设备和一个管理设备的系统中,其中,所述存储设备中包括多个存储单元,各所述存储单元分别与各所述视频编码设备相对应,存储各所述视频编码设备所生成的视频业务信息,所述管理设备中保存所述存储单元与所述视频编码设备的对应关系,并对所述存储设备进行读写性能调整控制,所述方法包括:
所述管理设备接收所述视频编码设备发送的写入性能提高请求,或所述视频客户端发送的读取性能提高请求;
所述管理设备根据保存的所述存储单元与所述视频编码设备的对应关系,识别所述写入性能提高请求或读取性能提高请求所对应的需要提高写入性能或读取性能的存储单元;
所述管理设备向所述存储设备发送针对所述需要提高写入性能或读取性能的存储单元的性能调整请求,使所述存储设备进行相应的性能调整。
优选的,所述方法还包括:
所述管理设备接收所述视频编码设备或所述视频客户端发送的业务正常通知;
所述管理设备根据保存的所述存储单元与所述视频编码设备的对应关系,识别所述业务正常通知所对应的存储单元;
所述管理设备向所述存储设备发送针对所述业务正常通知所对应的存储单元的调整完成通知,使所述存储设备保存相应的调整结果。
另一方面,本发明还提供了一种管理设备,应用于包括多个视频编码设备、多个视频客户端、一个存储设备和一个管理设备的系统中,其中,所述存储设备中包括多个存储单元,各所述存储单元分别与各所述视频编码设备相对应,存储各所述视频编码设备所生成的视频业务信息,所述管理设备包括:
存储模块,用于存储所述存储单元与所述视频编码设备的对应关系;
通信模块,用于接收所述视频编码设备发送的写入性能提高请求,或所述视频客户端发送的读取性能提高请求,并向所述存储设备发送针对相应的需要提高写入性能或读取性能的存储单元的性能调整请求;
识别模块,用于根据所述存储模块保存的所述存储单元与所述视频编码设备的对应关系,识别所述通信模块所接收的写入性能提高请求或读取性能提高请求所对应的需要提高写入性能或读取性能的存储单元。
优选的,所述通信模块,还用于接收所述视频编码设备或所述视频客户端发送的业务正常通知,并向所述存储设备发送针对所述业务正常通知所对应的存储单元的调整完成通知,使所述存储设备保存相应的调整结果;
所述识别模块,还用于根据所述存储模块所保存的所述存储单元与所述视频编码设备的对应关系,识别所述通信模块所接收的业务正常通知所对应的存储单元。
与现有技术相比,本发明具有以下优点:
通过应用本发明的技术方案,实现了视频业务信息的读写性能的动态调节,从而,可以根据视频业务信息的读写状态进行各存储单元的读写性能的调整,满足设备的读写需要,改善了系统进行视频业务信息读写业务的处理质量,提高了视频业务的可靠性。
【附图说明】
图1为现有技术中的视频监控技术方案的控制和数据流程图;
图2为本发明所提出的一种视频业务信息读写性能的调整方法的流程示意图;
图3为本发明从管理设备的角度提出了一种视频业务信息读写性能的调整方法;
图4为本发明所提出的一种视频业务信息存储的应用场景结构示意图;
图5为本发明所提出的一种视频业务信息写入性能的调整方法的流程示意图;
图6为本发明所提出的另一种视频业务信息写入性能的调整方法的流程示意图;
图7为本发明所提出的一种视频业务信息存储的应用场景的结构示意图;
图8为本发明所提出的一种视频业务信息读取性能的调整方法的流程示意图;
图9为本发明所提出的一种存储设备的结构示意图;
图10为本发明所提出的一种管理设备的结构示意图。
【具体实施方式】
如背景技术所述,现有的视频业务存储和读取机制中对资源的划分不能根据设备的具体性能需求进行调整,不能满足各设备读写操作中的具体业务需求,并因此可能造成视频业务信息的丢失,影响视频业务处理质量,并进而影响用户的使用体验。
本发明的技术方案在视频编码设备(EC)、管理设备(Manager)、存储设备(IP SAN)以及视频客户端(VC)之间建立一套通信机制,用于控制性能动态调节过程。通过EC或VC发送性能调整请求或业务正常通知、管理设备向IP SAN传递控制消息、IP SAN运行内部性能调节过程等步骤,平衡多EC之间的写入性能,或平衡VC读取和EC写入之间的性能,从而解决低配置EC写丢包问题以及EC写入正常情况下VC回放图像停顿等问题。
本发明提出了一种视频业务信息读写性能的调整方法,应用于包括多个视频编码设备、多个视频客户端、一个存储设备和一个管理设备的系统中,其中,存储设备中包括多个存储单元,各存储单元分别与各视频编码设备相对应,存储各视频编码设备所生成的视频业务信息,管理设备中保存存储单元与视频编码设备的对应关系,并对存储设备进行读写性能调整控制。
如图2所示,为本发明所提出的一种视频业务信息读写性能的调整方法的流程示意图,具体包括以下步骤:
步骤S201、存储设备接收管理设备发送的针对一个或多个需要提高写入性能或读取性能的存储单元的性能调整请求。
其中,在本步骤执行之前,还包括触发管理设备发送性能调整请求的过程,具体包括以下两种情况:
情况一、提高写入性能的触发流程。
当视频编码设备判断自身出现写入数据丢失的情况时,视频编码设备向管理设备发送写入性能提高请求。
管理设备根据存储单元与视频编码设备的对应关系确定需要提高写入性能的存储单元,并向存储设备发送针对需要提高写入性能的存储单元的性能调整请求。
情况二、提高读取性能的触发流程。
当视频客户端判断自身读取一个视频编码设备的视频业务信息出现读取数据停顿的情况时,视频客户端向管理设备发送针对视频编码设备的读取性能提高请求。
管理设备根据存储单元与视频编码设备的对应关系确定需要提高写入性能的存储单元,并向存储设备发送针对需要提高读取性能的存储单元的性能调整请求。
步骤S202、存储设备判断接收到的性能调整请求所对应的存储单元是需要提高写入性能还是读取性能。
当判断该存储单元需要提高写入性能时,转入步骤S203;
当判断该存储单元需要提高读取性能时,转入步骤S204。
步骤S203、存储设备抑制其他存储单元的写入性能和/或读取性能,或抑制该存储单元自身的读取性能,并提高需要提高写入性能的存储单元的写入性能。
步骤S204、存储设备抑制其他存储单元的写入性能和/或读取性能,或抑制该存储单元自身的写入性能,并提高该需要提高读取性能的存储单元的读取性能。
在具体的应用场景中,存储设备中还可以包括多个存储阵列,并且存储阵列中分别包含一个或多个存储单元,步骤S203和步骤S204所提出的抑制或提高存储单元的写入性能或读取性能的处理步骤,具体通过以下的方式实现:
方式一、存储设备降低或提高存储单元所属的存储阵列的输入输出(Input/Output,IO)处理线程的优先级。
这种方式适用于存储阵列中全部存储单元的读写性能的提高,提高输入处理线程的优先级,将提高该存储阵列中全部存储单元的写入性能,提高输出处理线程的优先级,将提高该存储阵列中全部存储单元的读取性能。
方式二、存储设备减少或增加分配给存储单元所属的存储阵列的写缓存或读缓存。
这种方式同样适用于存储阵列中全部存储单元的读写性能的提高,增加存储阵列的写缓存,将提高该存储阵列中全部存储单元的写入性能,增加存储阵列的读缓存,将提高该存储阵列中全部存储单元的读取性能。
方式三、存储设备减少或增加分配给存储单元的写缓存或读缓存。
这种方式适用于直接针对存储单元个体的读写性能的提高,增加存储单元的写缓存,将提高该存储单元的写入性能,增加存储单元的读缓存,将提高该存储单元的读取性能。
在实际的应用场景中,上述的三种方式不仅局限于独立的调整应用,根据具体的系统设置也可以进行多种方式的组合使用,以达到更为精确和灵活的调整效果,这样的变化同样属于本发明的保护范围。
需要进一步指出的是,如果在经过一次对于写入性能或读取性能的调整后,调整结果仍不能满足视频编码设备或者视频客户端的视频业务需要时,该视频编码设备或者视频客户端可以继续发起提升写入性能或读取性能的请求,管理设备识别后向存储设备发起针对同一存储单元的性能调整请求,即执行以下步骤S205:
步骤S205、存储设备接收管理设备发送的针对当前已经处于性能提升状态的存储单元的性能调整请求。
重新返回步骤S202,进入新的一轮的性能调整过程,由于该存储单元当前已经处于性能提升状态,所以,存储设备重复针对该存储单元的调整流程,增强当前被抑制性能的存储单元的写入性能和/或读取性能的抑制程度,并增强当前被提升性能的存储单元的写入性能或读取性能的提成程度。
上述的循环过程可以重复执行,直至性能调整结果满足视频编码设备或者视频客户端的视频业务需要时,执行后续的步骤S205,结束针对该存储单元的性能调整。
具体处理过程如下:
步骤S206、存储设备接收管理设备发送的调整完成通知。
步骤S207、存储设备保存调整完成通知所对应的各存储单元的写入性能或读取性能的调整结果。
通过上述的调整结果的保存处理,使得当前调整的结果能够得以保存,从而保证系统中的视频业务正常进行。
需要进一步指出的是,为了保证系统的正常运行,需要避免性能调整过程的无限循环,以及因为反复进行调整而造成的系统资源的浪费即对正常视频业务的影响,因此,可以限制调整过程循环的次数,通过设置调整次数阈值的方式进行限定,当针对同一存储单元的调整循环次数达到所设置的调整次数阈值时,无论当前的性能调整结果是否满足视频编码设备或者视频客户端的视频业务需要,存储设备都将直接结束针对该存储单元的调整过程,这样的变化同样属于本发明的保护范围。
而在实际的应用场景中,步骤S205中管理设备发送调整完成通知的触发机制可以是接收到接收到视频编码设备或视频客户端发送的业务正常通知,而对业务正常通知的发送则涉及到完成上述的性能调整操作后,在视频编码设备或视频客户端侧,对性能调整结果的检验流程,具体分为以下两种情况:
(1)写入性能的检验流程
视频编码设备所对应的存储单元的写入性能被提高之后,如果视频编码设备判断自身在预设的检验时间内没有出现写入数据丢失的情况,视频编码设备向管理设备发送业务正常通知。
当管理设备接收到被提高写入性能的存储单元所对应的视频编码设备发送的业务正常通知时,管理设备根据存储单元与视频编码设备的对应关系,确定该业务正常通知所对应的存储单元,并向存储设备发送针对该存储单元的调整完成通知,使存储设备保存该调整完成通知所对应的各存储单元的写入性能的调整结果。
(2)读取性能的检验流程
视频编码设备所对应的存储单元的读取性能被提高之后,如果视频客户端判断自身在预设的检验时间内读取视频编码设备的视频业务信息没有出现读取数据停顿的情况,视频客户端向管理设备发送业务正常通知。
当管理设备接收到读取被提高读取性能的存储单元的视频业务信息的视频客户端发送的业务正常通知时,管理设备根据存储单元与视频编码设备的对应关系,确定该业务正常通知所对应的存储单元,并向存储设备发送针对该存储单元的调整完成通知,使存储设备保存该调整完成通知所对应的各存储单元的读取性能的调整结果。
需要进一步指出的是,在上述的检验流程中所提及的检验时间,是预设的一个检测周期,是在性能调整后开始计时的一个用于检测性能调整效果的时间区间,如果在该时间区间内,视频业务信息的写入或读取均正常进行,则视为性能调整有效,可以向管理设备发送业务正常的通知,反之,如果在该时间区间内,视频业务信息的写入或读取仍存在问题,则视为性能调整无效,继续向管理设备发送性能调整请求,继续对存储单元的读写性能进行调整。
在实际应用过程中,上述的检验时间计时起点可以是准确的调整生效时间(此种情况需要存储设备或者管理设备的性能调整反馈,在此不再详述),也可以是能够标识调整进行的其他时间点,比如:视频编码设备或视频客户端发送性能调整请求的时间,为了提高及时精度,还可以预估由发送性能调整请求到性能调整生效的延迟时间,在发送性能调整请求并经过上述延迟时间后的时间点开始计时,具体检验时间的计时规则和设定长度的变化并不影响本发明的保护范围。
上述是完整的视频业务信息读写性能的性能调整流程,但是由于性能调整的代价是以存储设备中其他存储单元或本存储单元的写入性能降低为前提的,因此,可能出现被降低写入性能的存储单元的当前性能不能满足视频业务要求的情况,在这种情况下,需要对现有的调整状态进行再调整,即恢复当前的被降低性能的存储单元的性能,并选择其他存储单元进行替代,具体调整方案如下:
当存储设备接收到管理设备发送的针对存储单元的要求提高写入性能的性能调整请求,且判断该性能调整请求所对应的存储单元当前处于被抑制的性能调整状态时,存储设备恢复被抑制写入性能的存储单元的写入性能,并抑制另一个与当前提高写入性能的存储单元或抑制写入性能的存储单元不同的其他存储单元的写入性能。
需要说明的是,上述的判断该性能调整请求所对应的存储单元当前处于被抑制的性能调整状态的操作可以使存储设备来执行,也可以是管理设备来实行,这样的变化并不影响本发明的保护范围。
需要进一步指出的是,为了更好的实现调整效果,对于当前提高存储单元的写入性能的情况,可以优先选择抑制与提高写入性能的存储单元和抑制写入性能的存储单元位于不同存储阵列的其他存储单元的写入性能,相应的,对于当前提高存储单元的读取性能的情况,可以优先选择抑制与提高读取性能的存储单元和抑制写入性能的存储单元位于相同存储阵列的其他存储单元的写入性能,但这只是一种优选的实施方式,只要能够通过抑制某个存储单元的写入性能实现对待调整存储单元的写入性能或读取性能的提高,相应的存储单元是否位于相同的存储阵列,并不会影响本发明的保护范围。
为了更加清楚的说明本发明所提出的技术方案,本发明还从管理设备的角度提出了一种视频业务信息读写性能的调整方法,同样应用于包括多个视频编码设备、多个视频客户端、一个存储设备和一个管理设备的系统中,其中,存储设备中包括多个存储单元,各存储单元分别与各视频编码设备相对应,存储各视频编码设备所生成的视频业务信息,管理设备中保存存储单元与视频编码设备的对应关系,并对存储设备进行读写性能调整控制。
如图3所示,为本发明从管理设备的角度提出了一种视频业务信息读写性能的调整方法,具体包括以下步骤:
步骤S301、管理设备接收视频编码设备发送的写入性能提高请求,或视频客户端发送的读取性能提高请求。
其中,写入性能提高请求或读取性能提高请求的触发流程已在前文的步骤S201中进行了详细说明,在此不再重复叙述。
步骤S302、管理设备根据保存的存储单元与视频编码设备的对应关系,识别写入性能提高请求或读取性能提高请求所对应的需要提高写入性能或读取性能的存储单元。
步骤S303、管理设备向存储设备发送针对需要提高写入性能或读取性能的存储单元的性能调整请求,使存储设备进行相应的性能调整。
对于具体的应用场景,在存储设备提高所述需要提高写入性能或读取性能的存储单元的写入性能或读取性能之后,本发明所提出的技术方案还进一步包括:
步骤S304、管理设备接收视频编码设备或视频客户端发送的业务正常通知。
其中,业务正常通知的触发流程以及相应的调整结果检验流程已在前文中进行了详细说明,在此不再重复叙述。
步骤S305、管理设备根据保存的存储单元与视频编码设备的对应关系,识别业务正常通知所对应的存储单元。
步骤S306、管理设备向存储设备发送针对该业务正常通知所对应的存储单元的调整完成通知,使存储设备保存相应的调整结果。
相应的在被降低写入性能的存储单元的当前性能不能满足视频业务要求的情况下,对现有的调整状态进行再调整的流程也与上述说明相一致,在此不再赘述。
与现有技术相比,本发明具有以下优点:
通过应用本发明的技术方案,实现了视频业务信息的读写性能的动态调节,从而,可以根据视频业务信息的读写状态进行各存储单元的读写性能的调整,满足设备的读写需要,改善了系统进行视频业务信息读写业务的处理质量,提高了视频业务的可靠性。
下面结合具体的应用场景,对本发明的具体实施方案进行说明。
如图4所示,为本发明所提出的一种视频业务信息存储的应用场景的结构示意图,该应用场景可以实现视频监控业务,包括多个视频编码设备(EC)作为视频监控信息的采集设备,生成相应的视频业务信息(监控数据),并在IP SAN中相对应的存储单元(LUN)中进行存储,在IP SAN中,各LUN分别归属于不同的存储阵列(阵列A、B、C……)。
在该应用场景中,当一个视频编码设备发现自身的视频业务信息在存储过程中出现丢包现象时,将启动本发明所提出的写入性能提高流程,具体流程图如图5所示,包括以下步骤:
步骤S501、EC1检测到自身出现丢包,便向管理设备发送写入性能提高请求,要求“提高EC1写入性能”。
出现这种情况的可能性在于EC1配置较低,要求写IO响应时间比其他EC要小,而IP SAN初始情况下对所有阵列/LUN平等对待。
出现EC1丢包的情况,即表示EC1存储的速度赶不上EC1对接收的图像进行编码的速度。
步骤S502、管理设备向IP SAN发送写入性能提高请求,要求提高LUN1处理写入的性能。
需要说明的是。在本步骤中,还包括性能调整的目的存储单元的识别过程,由于管理设备中存储有EC1与LUN1之间的对应关系,所以,当管理设备接收到要求提高EC1的写入性能的请求时,可以识别出需要进行写入性能提升的实际是LUN1。
步骤S503、IP SAN启动内部性能调节过程,提高LUN1的写入性能。
具体的调节方式是选择对与LUN1(位于阵列A)位于不同阵列上的LUN3(位于阵列B),对LUN3写入性能进行抑制,并对LUN1的写入性能进行提升。
而进一步的,抑制或提升写入性能的方法可以包括:
(1)IP SAN内部程序调节不同阵列的IO处理线程优先级;
(2)IP SAN为不同阵列重新分配不同容量的写缓存;
(3)IP SAN在LUN层面为不同LUN重新分配不同容量的写缓存。
在具体的应用场景中,具体采用哪种抑制或提升写入性能的方法并不影响本发明的保护范围。
步骤S504、性能调节完成,方案稳定运行一定时间后,EC1判断自身丢包现象已解决,则EC1向管理设备发送“丢包已解决”的通知消息(即前述的业务正常通知)。
步骤S505、如果管理设备接收到EC1发送的通知消息,并且其他EC(特别是EC3)写入均正常,则管理设备向IP SAN发送调整完成通知,保存当前性能调整状态。
步骤S506、IP SAN接收到调整完成通知后,保存当前性能调整状态。
这里所述的保存当前性能调整状态,具体指保存当前相关存储单元的性能调整状态,其中,包括被提高写入或读取性能的存储单元的性能调整状态,以及作为性能提高的代价而被抑制写入性能的存储单元的当前性能调整状态。
上述流程通过抑制EC3的写入性能,提升了EC1的写入性能,在保证EC3写入正常的情况下,解决了EC1的丢包现象。
但是,在此过程中,可能会出现EC3的写入性能达不到视频业务要求的情况,在此情况下,需要对现有的调整状态进行再调整,如图6所示,包括以下步骤:
其中,步骤S601至步骤S603的处理流程与步骤S601至步骤S603的处理流程是一致的,在此不再重复叙述。
在步骤S603完成之后,即IP SAN完成了内部性能调节后,如果EC3检测到自身的视频业务信息的写入过程中发生丢包现象。将进行如下处理步骤:
步骤S604、EC3检测到自身出现丢包,向管理设备发送写入性能调整请求,要求“提高EC1写入性能”。
在此种情况下,丢包现象的原因在于IP SAN对LUN3进行了写入性能抑制。
步骤S605、管理设备根据内部保存状态信息,判断得知EC3所对应的LUN3当前处于性能调节状态,所以,在接收到EC3的请求后,向IP SAN发送写入性能恢复请求,要求“恢复LUN3的写入性能”。
如果对于存储单元是否处于调整状态的判断由IP SAN来执行,则本步骤直接向IP SAN发送针对LUN3的性能调整请求,要求提高写入性能即可,这样的变化同样属于本发明的保护范围。
步骤S606、IP SAN判断当前处于内部性能调节状态,则在接收到“恢复LUN3的写入性能”的写入性能恢复请求后,重新进行存储单元的写入性能调节。
在具体的应用场景中,重新进行存储单元的写入性能调节的过程如下:
(1)恢复LUN3写入性能,即恢复阵列B的IO处理线程优先级,或恢复阵列B或LUN3在写缓存中的空间容量;
(2)选择下一个可被抑制的LUN,例如选择与LUN1处于不同阵列(阵列C)上的LUN4资源;
(3)对LUN4进行写入性能的抑制。
步骤S607、性能调节完成,方案稳定运行一定时间后,EC1判断自身丢包现象已解决,则EC1向管理设备发送“丢包已解决”的通知消息(即前述的业务正常通知)。
步骤S608、如果管理设备接收到EC1发送的通知消息,并且其他EC(特别是EC3、EC4)写入均正常,则管理设备向IP SAN发送调整完成通知,保存当前性能调整状态。
步骤S609、IP SAN接收到调整完成通知后,保存当前性能调整状态。
另一方面,如图7所示,为本发明所提出的一种视频业务信息读取的应用场景的结构示意图,该应用场景可以实现视频监控业务,包括多个视频编码设备(EC)作为视频监控信息的采集设备,生成相应的视频业务信息(监控数据),并在IP SAN中相对应的存储单元(LUN)中进行存储,在IP SAN中,各LUN分别归属于不同的存储阵列(阵列A、B、C……),还包括多个视频客户端(VC)作为视频监控信息的读取设备,在IP SAN中的LUN读取视频监控信息。
在该应用场景中,当一个视频客户端发现自身的视频业务信息在读取过程中出现回放图像停顿现象时,将启动本发明所提出的读取性能提高流程,具体流程图如图8所示,包括以下步骤:
步骤S801、VC1在回放EC1储存的历史视频数据时,检测到出现图像停顿现象,便向管理设备发送读取性能提高请求,要求“提高EC1储存的视频数据读取性能”。
出现这种情况的可能性在于当逻辑资源LUN1或阵列A上写入IO频繁,会影响其上的读IO响应较慢,VC从LUN1读取数据的速度赶不上VC回放图像帧率的要求,就会出现回放图像停顿。
步骤S802、管理设备向IP SAN发送读取性能提高请求,要求提高LUN1处理读取的性能。
在本步骤中,还包括性能调整的目的存储单元的识别过程,由于管理设备中存储有EC1与LUN1之间的对应关系,所以,当管理设备接收到要求提高EC1的读取性能的请求时,可以识别出需要进行读取性能提升的实际是LUN1。
步骤S803、IP SAN启动内部性能调节过程,提高LUN1的读取性能。
因为抑制LUN1的写入性能,来提高LUN1读取的效果最明显,所以,具体的调节方式优先选择LUN1进行写入性能抑制,以提升LUN1本身的读取性能。
具体的抑制或提升的方法为:
IP SAN内部程序调节LUN1的IO线程优先级,即提高读IO线程优先级,降低写IO线程优先级。
需要进一步指出的,此流程从LUN层面进行调节,也可考虑从RAID层面进行调节,即先试探提高阵列A读IO线程优先级,降低阵列A写IO线程优先级,若不成功再对阵列B进行试探性调整节。
此时,如果EC1检测到自身出现丢包,则执行步骤S804。
步骤S804、EC1检测到丢包,向管理设备发送请求,要求“提高EC1写入性能”。
在此种情况下,丢包现象的原因在于IP SAN对LUN1进行了写入性能抑制。
步骤S805、管理设备根据内部保存状态信息,判断得知EC1所对应的LUN1当前处于性能调节状态,所以,在接收到EC1请求后,向IP SAN发送写入性能恢复请求,要求“恢复LUN1的写入性能”。
如果对于存储单元是否处于调整状态的判断由IP SAN来执行,则本步骤直接向IP SAN发送针对LUN1的性能调整请求,要求提高写入性能即可,这样的变化同样属于本发明的保护范围。
步骤S806、IP SAN判断当前处于内部性能调节状态,则在接收到“恢复LUN1的写入性能”的写入性能恢复请求后,重新进行存储单元的写入性能调节。
在具体的应用场景中,重新进行存储单元的写入性能调节的过程如下:
(1)恢复LUN1写入性能,即恢复LUN1的写IO处理线程优先级;
(2)选择下一个可被抑制的LUN,例如选择相同阵列上的LUN2资源;
(3)对LUN2进行写入抑制。
步骤S807、性能调节完成,方案稳定运行一定时间后,VC1判断回放图像停顿已解决,则VC1向管理设备发送“回放图像停顿已解决”的通知消息(即前述的业务正常通知)。
步骤S808、如果管理设备接收到VC1发送的通知消息,并且其他EC(特别是EC1、EC2)写入均正常则管理设备向IP SAN发送调整完成通知,保存当前性能调整状态。
步骤S809、IP SAN接收到调整完成通知后,保存当前性能调整状态。
与现有技术相比,本发明具有以下优点:
通过应用本发明的技术方案,实现了视频业务信息的读写性能的动态调节,从而,可以根据视频业务信息的读写状态进行各存储单元的读写性能的调整,满足设备的读写需要,改善了系统进行视频业务信息读写业务的处理质量,提高了视频业务的可靠性。
另一方面,为了实现上述的方法,本发明还提供了一种存储设备,应用于包括多个视频编码设备、多个视频客户端、一个存储设备和一个管理设备的系统中,其中,存储设备中包括多个多个存储单元,各存储单元分别与各视频编码设备相对应,存储各视频编码设备所生成的视频业务信息,管理设备中保存存储单元与视频编码设备的对应关系,并对存储设备进行读写性能调整控制。
如图9所示,为本发明提供的一种存储设备的结构示意图,具体包括:
通信模块91,用于接收管理设备发送的针对一个或多个需要提高写入性能或读取性能的存储单元的性能调整请求和/或调整完成通知,还用于接收视频编码设备的视频业务信息,和/或向视频客户端发送视频业务信息;
识别模块92,用于根据通信模块91所接收的性能调整请求和/或调整完成通知,识别需要进行性能调整或调整完成的存储单元和存储单元需要调整或完成调整的性能内容;
调整模块93,用于根据识别模块92的识别结果进行性能调整或保存调整结果。
当识别模块92识别存储单元需要提高写入性能时,调整模块93抑制其他存储单元的写入性能和/或读取性能,或抑制所述存储单元自身的读取性能,并提高需要提高写入性能的存储单元的写入性能,当识别模块92识别存储单元需要提高读取性能时,调整模块93抑制其他存储单元的写入性能和/或读取性能,或抑制存储单元自身的写入性能,并提高需要提高读取性能的存储单元的读取性能。
在具体的应用场景中,存储设备中还可以包括多个存储阵列,存储阵列中分别包含一个或多个存储单元,其中,调整模块93抑制或提高存储单元的写入性能或读取性能,具体通过以下的方式实现:
方式一、调整模块93降低或提高存储单元所属的存储阵列的输入输出IO处理线程的优先级。
这种方式适用于存储阵列中全部存储单元的读写性能的提高,提高输入处理线程的优先级,将提高该存储阵列中全部存储单元的写入性能,提高输出处理线程的优先级,将提高该存储阵列中全部存储单元的读取性能。
方式二、调整模块93减少或增加分配给存储单元所属的存储阵列的写缓存或读缓存。
这种方式同样适用于存储阵列中全部存储单元的读写性能的提高,增加存储阵列的写缓存,将提高该存储阵列中全部存储单元的写入性能,增加存储阵列的读缓存,将提高该存储阵列中全部存储单元的读取性能。
方式三、调整模块93减少或增加分配给存储单元的写缓存或读缓存。
这种方式适用于直接针对存储单元个体的读写性能的提高,增加存储单元的写缓存,将提高该存储单元的写入性能,增加存储单元的读缓存,将提高该存储单元的读取性能。
在实际的应用场景中,上述的三种方式不仅局限于独立的调整应用,根据具体的系统设置也可以进行多种方式的组合使用,以达到更为精确和灵活的调整效果,这样的变化同样属于本发明的保护范围。
需要进一步指出的是,在通信模块91接收到管理设备发送的调整完成通知之前,
如果通信模块91接收到了针对当前被抑制性能的存储单元或当前被提升性能的存储单元的性能调整请求,要求提高存储单元的写入性能,
识别模块92,还用于识别通信模块91所接收的性能调整请求所对应的存储单元当前是否处于被抑制性能或被提升性能的性能调整状态;
调整模块93,还用于当识别模块92识别存储单元处于被提升性能的性能调整状态时,重复所述调整流程,增强当前被抑制性能的存储单元的写入性能和/或读取性能的抑制程度,并增强当前被提升性能的存储单元的写入性能或读取性能的提成程度,当识别模块92识别存储单元处于被抑制的性能调整状态时,恢复当前被抑制性能的存储单元的写入性能或读取性能,并抑制当前没有处于调整状态的另一个存储单元的写入性能或读取性能。
需要进一步指出的是,为了更好的实现调整效果,对于当前提高存储单元的写入性能的情况,可以优先选择抑制与提高写入性能的存储单元和抑制写入性能的存储单元位于不同存储阵列的其他存储单元的写入性能,相应的,对于当前提高存储单元的读取性能的情况,可以优先选择抑制与提高读取性能的存储单元和抑制写入性能的存储单元位于相同存储阵列的其他存储单元的写入性能,但这只是一种优选的实施方式,只要能够通过抑制某个存储单元的写入性能实现对待调整存储单元的写入性能或读取性能的提高,相应的存储单元是否位于相同的存储阵列,并不会影响本发明的保护范围。
相对应的,为了实现上述的技术方案,本发明还提供了一种管理设备。
如图10所示,本发明所提出的管理设备包括:
存储模块101,用于存储存储单元与视频编码设备的对应关系;
通信模块102,用于接收视频编码设备发送的写入性能提高请求,或视频客户端发送的读取性能提高请求,并向存储设备发送针对相应的需要提高写入性能或读取性能的存储单元的性能调整请求;
识别模块103,用于根据存储模块101保存的存储单元与视频编码设备的对应关系,识别通信模块102所接收的写入性能提高请求或读取性能提高请求所对应的需要提高写入性能或读取性能的存储单元。
在具体的应用场景中,通信模块102还用于接收视频编码设备或视频客户端发送的业务正常通知,并向存储设备发送针对业务正常通知所对应的存储单元的调整完成通知,使存储设备保存相应的调整结果;
识别模块103,还用于根据存储模块101所保存的存储单元与视频编码设备的对应关系,识别通信模块102所接收的业务正常通知所对应的存储单元。
与现有技术相比,本发明具有以下优点:
通过应用本发明的技术方案,实现了视频业务信息的读写性能的动态调节,从而,可以根据视频业务信息的读写状态进行各存储单元的读写性能的调整,满足设备的读写需要,改善了系统进行视频业务信息读写业务的处理质量,提高了视频业务的可靠性。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施场景所述的方法。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施场景的优劣。
以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。