CN112379768B - 一种应用于嵌入式云存储***的降功耗方法 - Google Patents
一种应用于嵌入式云存储***的降功耗方法 Download PDFInfo
- Publication number
- CN112379768B CN112379768B CN202011262892.4A CN202011262892A CN112379768B CN 112379768 B CN112379768 B CN 112379768B CN 202011262892 A CN202011262892 A CN 202011262892A CN 112379768 B CN112379768 B CN 112379768B
- Authority
- CN
- China
- Prior art keywords
- disk
- server
- blade server
- management module
- blade
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3215—Monitoring of peripheral devices
- G06F1/3225—Monitoring of peripheral devices of memory devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4418—Suspend and resume; Hibernate and awake
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明提供一种应用于嵌入式云存储***的降功耗方法,包括以下步骤:对于每个接力组,配置对应的服务器管理模块,服务管理模块分别与网关与接力组内的各个刀片服务器连接;对于接力组内的每个刀片服务器,配置磁盘管理模块;磁盘管理模块分别与刀片服务器和各个磁盘连接;接力组内的各个刀片服务器,采用服务器平衡轮转方式进行服务器平衡轮转;处于活跃状态的刀片服务器,采用磁盘平衡轮转方式进行磁盘平衡轮转。优点为:本发明提供一种应用于嵌入式云存储***的降功耗方法,在保证视频存储和读取效率的前提下,能够最大限度的降低整个云存储***的功耗,降低存储成本。
Description
技术领域
本发明属于云存储***技术领域,具体涉及一种应用于嵌入式云存储***的降功耗方法。
背景技术
视频存储多采用X86架构的通用存储服务器,虽满足了高性能需求,但是未过多地考虑产品的节能特性,带来的问题是分配在单位存储空间上的功耗偏高,造成存储成本偏高。
嵌入式***天然具有低功耗的特点,因此基于嵌入式开发的云存储***自然也就继承了低功耗的优势。然而,嵌入式下的云存储集群一旦规模较大,此优势便会显得不那么明显。
对基于嵌入式下的云存储***来说,大规模存储集群往往涉及到成百上千台刀片服务器,就单个刀片服务器挂载72块磁盘来计算,百台刀片服务器构成的存储集群就多达7200块磁盘。因此,降低基于嵌入式下的云存储***功耗是一个很大的挑战。
发明内容
针对现有技术存在的缺陷,本发明提供一种应用于嵌入式云存储***的降功耗方法,可有效解决上述问题。
本发明采用的技术方案如下:
本发明提供一种应用于嵌入式云存储***的降功耗方法,包括以下步骤:
步骤1,集群包括n*m台服务器;将集群中的服务器划分形成n个接力组,分别表示为接力组C1,C2,...,Cn;其中,任意的接力组Ci均包括m个刀片服务器,分别表示为刀片服务器Fi1,Fi2,...,Fim;其中,i=1,2,...,n;
对于接力组Ci上的任意刀片服务器Fij,其中,j=1,2,...,m,包括r个磁盘,分别表示为磁盘Gij1,Gij2,...,Gijr;
步骤2,对于每个接力组Ci,配置对应的服务器管理模块Mi,服务管理模块Mi分别与网关与接力组Ci内的各个刀片服务器连接;
对于接力组Ci内的每个刀片服务器Fij,配置磁盘管理模块Wij,磁盘管理模块Wij分别与刀片服务器Fij和各个磁盘连接;
步骤3,网关实时接收视频流,每当接收到设定长度的视频流时,将该设定长度的视频流等长度按序切分形成n个视频数据块,分别表示为视频数据块S1,S2,...,Sn;然后,将视频数据块S1,S2,...,Sn分布式存储到对应的接力组,即:将视频数据块S1存储到接力组C1,将视频数据块S2存储到接力组C2,依此类推,将视频数据块Sn存储到接力组Cn;然后,再将下一个设定长度的视频流切块并实现分布式存储;如此不断循环;
对于任意接力组Ci,采用以下方式,实现低功耗实时视频流存储:
步骤3A:接力组Ci内的各个刀片服务器,采用服务器平衡轮转方式进行服务器平衡轮转,包括:
步骤3.1,接力组Ci的服务器管理模块Mi预设置服务器轮询策略;所述服务器轮询策略包括服务器轮询顺序以及服务器轮询时间t1;
步骤3.2,服务器管理模块Mi初始化启动,按照服务器轮询顺序激活刀片服务器Fij,使刀片服务器Fij处于活跃状态,而其他m-1个刀片服务器处于休眠状态;其中,休眠状态是指:刀片服务器整体处于低功耗待机状态,磁盘不工作,CPU运行在低功耗模式;
步骤3.3,服务器管理模块Mi只与当前活跃状态的刀片服务器Fij建立视频流传输通道;
服务器管理模块Mi实时采集来自于网关的待存储的视频数据块,一方面,将实时采集到的视频数据块发送给当前活跃状态的刀片服务器Fij;另一方面,采集时间戳T,并根据时间戳T得到当前活跃状态的刀片服务器Fij的已运行时间长度t2;再判断以下公式是否成立:
0<t1-t2<ε
其中:ε为已知预设值,为服务器预轮询提前时间长度;
如果公式不成立,则执行步骤3.4;如果公式成立,则执行步骤3.5;
步骤3.4,返回步骤3.3,实时采集下一个视频数据块并存储到当前活跃状态的刀片服务器Fij;
步骤3.5,服务器管理模块Mi根据服务器轮询顺序,确定下个周期需要激活的刀片服务器SID,记为刀片服务器Fiv,其中,v=1,2,...,m,并且,v≠j;然后,服务器管理模块Mi向网关发送激活刀片服务器Fiv的激活指令;其中,该激活指令中携带有需要激活的刀片服务器Fiv的SID;
步骤3.6,网关对接收到的激活指令进行解析,并根据解析到的刀片服务器SID进行路由寻址,确定需要激活的刀片服务器Fiv的地址;然后,网关直接向需要激活的刀片服务器Fiv发送激活执行指令,使刀片服务器Fiv激活并转为活跃状态;
步骤3.7,此时,刀片服务器Fiv被激活,然后,令v=j;返回步骤3.3;
在上述过程中,在刀片服务器Fiv被激活后,服务器管理模块Mi与刀片服务器Fiv建立视频流传输通道,并直接向刀片服务器Fiv传输视频流数据;对于上一周期处于活跃状态的刀片服务器Fij,当刀片服务器Fij连续t3时间长度均没有接收到服务器管理模块Mi发送的视频流数据时,则刀片服务器Fij检测到其与服务器管理模块Mi的视频流传输通道已切断,刀片服务器Fij转入休眠状态;
步骤3B:处于活跃状态的刀片服务器Fij,采用磁盘平衡轮转方式进行磁盘平衡轮转,包括:
步骤3-1,磁盘管理模块Wij预设置磁盘轮询策略;所述磁盘轮询策略包括磁盘轮询顺序以及磁盘轮询时间t"1;
步骤3-2,磁盘管理模块Wij初始化启动,按照磁盘轮询顺序激活磁盘Gija,其中,a=1,2,...,r,使磁盘Gija处于活跃状态,而其他r-1个磁盘处于休眠状态;其中,休眠状态是指:磁盘整体处于低功耗待机状态;
步骤3-3,磁盘管理模块Wij只与当前活跃状态的磁盘Gija建立视频流读取通道;
磁盘管理模块Wij实时采集来自于活跃状态的刀片服务器Fij的待存储的视频数据块,一方面,将实时采集到的视频数据块发送给当前活跃状态的磁盘Gija;另一方面,采集时间戳T,并根据时间戳T得到当前活跃状态的磁盘Gija的已运行时间长度t"2;再判断以下公式是否成立:
0<t"1-t"2<ε"
其中:ε"为已知预设值,为磁盘预轮询提前时间长度;
如果公式不成立,则执行步骤3-4;如果公式成立,则执行步骤3-5;
步骤3-4,返回步骤3-3,实时采集下一个视频数据块并存储到当前活跃状态的磁盘Gija;
步骤3-5,磁盘管理模块Wij根据磁盘轮询顺序,确定下个周期需要激活的磁盘DID,记为磁盘Gijb,其中,b=1,2,...,r,并且,b≠a;然后,磁盘管理模块Wij向网关发送激活磁盘Gijb的激活指令;其中,该激活指令中携带有需要激活的磁盘Gijb的DID;
步骤3-6,网关对接收到的激活指令进行解析,并根据解析到的磁盘Gijb进行路由寻址,确定需要激活的磁盘Gijb的地址;然后,网关直接向需要激活的磁盘Gijb发送激活执行指令,使磁盘Gijb激活并转为活跃状态;
步骤3-7,此时,磁盘Gijb被激活,然后,令b=a;返回步骤3-3;
在上述过程中,在磁盘Gijb被激活后,磁盘Gijb与磁盘管理模块Wij建立视频流取写通道,并直接向磁盘Gijb传输视频流数据;对于上一周期处于活跃状态的磁盘Gija,当磁盘Gija连续t"3时间长度均没有接收到磁盘管理模块Wij发送的视频流数据时,则磁盘Gija检测到其与磁盘管理模块Wij的视频流传输通道已切断,磁盘Gija转入休眠状态。
优选的,还包括:步骤4,在进行视频回放时,采用磁盘智能预唤醒策略,提前预唤醒磁盘,实现视频回放。
优选的,磁盘智能预唤醒策略是指:
当网关接收到对指定时间t4的视频顺序回放请求时,网关向各个接力组的服务器管理模块下发对指定时间t4的视频顺序获取请求;
每个接收到请求的服务器管理模块,同步执行以下操作:
服务器管理模块从管理的刀片服务器中,定位到与指定时间t4对应的刀片服务器F(t4),然后仅唤醒刀片服务器F(t4);然后,刀片服务器F(t4)的磁盘管理模块W(t4)进一步细定位到与指定时间t4对应的磁盘G(t4),并唤醒磁盘G(t4),一方面,从磁盘G(t4)中从时间t4对应的位置开始,顺序读取视频数据块,并上传给网关;另一方面,磁盘管理模块W(t4)实时监测磁盘G(t4)中从当前时间开始剩余的顺序读取最大容量,当剩余的顺序读取最大容量小于设定阈值时,提前激活下一个相邻的磁盘,保证视频回放无延时。
本发明提供的一种应用于嵌入式云存储***的降功耗方法具有以下优点:
本发明提供一种应用于嵌入式云存储***的降功耗方法,在保证视频存储和读取效率的前提下,能够最大限度的降低整个云存储***的功耗,降低存储成本。
附图说明
图1为本发明提供的一种应用于嵌入式云存储***的降功耗方法的流程示意图。
具体实施方式
为了使本发明所解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明应用于嵌入式构建的分布式存储领域,对大规模云存储***通常功耗较高的问题,提供了一种在嵌入式大规模云存储***下的降功耗方法。本发明在保证视频存储和读取效率的前提下,能够最大限度的降低整个云存储***的功耗,降低存储成本。
具体的,由于视频存储及视频读取的时机存在差异性,即:视频存储是实时存储,时时刻刻都要求有存储介质在线,但仅要求当前负责存储任务的存储介质在线,其他存储介质可以离线休眠;视频回放时理论上要求所有存储介质都在线,然而用户更关心距离当前时间最近的数据,距离当前时间越远的数据被读取到的机会也越小。因此,本发明提出应用于嵌入式云存储***的降功耗方法,使磁盘平衡轮转工作,暂时未工作的磁盘进入离线休眠状态,根据需要择机将其唤醒。同样的,一个接力组内的刀片服务器采用平衡轮转工作,既保证存储效率,也有效降低功耗。
参考图1,本发明提供的一种应用于嵌入式云存储***的降功耗方法,提出刀片服务器接力组(RelayGroup)概念。三个刀片服务器构成一个接力组,接力组与接力组之间为分布式存储关系。
接力组内,刀片服务器进行平衡轮转。轮转到的刀片服务器称之为活跃(ACTIVE)服务器,暂未轮转到的服务器称之为(休眠)STANDBY服务器。休眠(STANDBY)服务器整体处于低功耗待机状态(磁盘不工作,CPU运行在低功耗模式)。
其次,接力组内,活跃(ACTIVE)服务器的磁盘增加轮转机制。服务器的磁盘不需要同时全部在线,磁盘每6小时轮转一次,轮转到的磁盘称之为ACTIVE磁盘,未轮转到的磁盘称之为休眠(STANDBY)磁盘,休眠(STANDBY)磁盘处于离线休眠的低功耗状态。
最后,采用智能预唤醒功能,预唤醒处于休眠状态下的磁盘。在刀片服务器即将开启工作前或者用户进入到视频回放总览页面时,预先向指定磁盘发送唤醒指令,以便进行正常的存储活动或者视频回放业务,保证业务流程的及时性和流畅性。
具体包括以下步骤:
步骤1,集群包括n*m台服务器;将集群中的服务器划分形成n个接力组,分别表示为接力组C1,C2,...,Cn;其中,任意的接力组Ci均包括m个刀片服务器,分别表示为刀片服务器Fi1,Fi2,...,Fim;其中,i=1,2,...,n;实际应用中,可以三个刀片服务器组成一个接力组。
对于接力组Ci上的任意刀片服务器Fij,其中,j=1,2,...,m,包括r个磁盘,分别表示为磁盘Gij1,Gij2,...,Gijr;
步骤2,对于每个接力组Ci,配置对应的服务器管理模块Mi,服务管理模块Mi分别与网关与接力组Ci内的各个刀片服务器连接;
对于接力组Ci内的每个刀片服务器Fij,配置磁盘管理模块Wij,磁盘管理模块Wij分别与刀片服务器Fij和各个磁盘连接;
步骤3,网关实时接收视频流,每当接收到设定长度的视频流时,将该设定长度的视频流等长度按序切分形成n个视频数据块,分别表示为视频数据块S1,S2,...,Sn;然后,将视频数据块S1,S2,...,Sn分布式存储到对应的接力组,即:将视频数据块S1存储到接力组C1,将视频数据块S2存储到接力组C2,依此类推,将视频数据块Sn存储到接力组Cn;然后,再将下一个设定长度的视频流切块并实现分布式存储;如此不断循环;采用此种分布式存储方式,可提高数据存储的可靠性。
对于任意接力组Ci,采用以下方式,实现低功耗实时视频流存储:
步骤3A:接力组Ci内的各个刀片服务器,采用服务器平衡轮转方式进行服务器平衡轮转,包括:
步骤3.1,接力组Ci的服务器管理模块Mi预设置服务器轮询策略;所述服务器轮询策略包括服务器轮询顺序以及服务器轮询时间t1;
步骤3.2,服务器管理模块Mi初始化启动,按照服务器轮询顺序激活刀片服务器Fij,使刀片服务器Fij处于活跃状态,而其他m-1个刀片服务器处于休眠状态;其中,休眠状态是指:刀片服务器整体处于低功耗待机状态,磁盘不工作,CPU运行在低功耗模式;
步骤3.3,服务器管理模块Mi只与当前活跃状态的刀片服务器Fij建立视频流传输通道;
服务器管理模块Mi实时采集来自于网关的待存储的视频数据块,一方面,将实时采集到的视频数据块发送给当前活跃状态的刀片服务器Fij;另一方面,采集时间戳T,并根据时间戳T得到当前活跃状态的刀片服务器Fij的已运行时间长度t2;再判断以下公式是否成立:
0<t1-t2<ε
其中:ε为已知预设值,为服务器预轮询提前时间长度;
如果公式不成立,则执行步骤3.4;如果公式成立,则执行步骤3.5;
步骤3.4,返回步骤3.3,实时采集下一个视频数据块并存储到当前活跃状态的刀片服务器Fij;
步骤3.5,服务器管理模块Mi根据服务器轮询顺序,确定下个周期需要激活的刀片服务器SID,记为刀片服务器Fiv,其中,v=1,2,...,m,并且,v≠j;然后,服务器管理模块Mi向网关发送激活刀片服务器Fiv的激活指令;其中,该激活指令中携带有需要激活的刀片服务器Fiv的SID;
步骤3.6,网关对接收到的激活指令进行解析,并根据解析到的刀片服务器SID进行路由寻址,确定需要激活的刀片服务器Fiv的地址;然后,网关直接向需要激活的刀片服务器Fiv发送激活执行指令,使刀片服务器Fiv激活并转为活跃状态;
步骤3.7,此时,刀片服务器Fiv被激活,然后,令v=j;返回步骤3.3;
在上述过程中,在刀片服务器Fiv被激活后,服务器管理模块Mi与刀片服务器Fiv建立视频流传输通道,并直接向刀片服务器Fiv传输视频流数据;对于上一周期处于活跃状态的刀片服务器Fij,当刀片服务器Fij连续t3时间长度均没有接收到服务器管理模块Mi发送的视频流数据时,则刀片服务器Fij检测到其与服务器管理模块Mi的视频流传输通道已切断,刀片服务器Fij转入休眠状态;其中,连续t3时间长度可设置为5分钟。
步骤3B:处于活跃状态的刀片服务器Fij,采用磁盘平衡轮转方式进行磁盘平衡轮转,包括:
步骤3-1,磁盘管理模块Wij预设置磁盘轮询策略;所述磁盘轮询策略包括磁盘轮询顺序以及磁盘轮询时间t"1;
步骤3-2,磁盘管理模块Wij初始化启动,按照磁盘轮询顺序激活磁盘Gija,其中,a=1,2,...,r,使磁盘Gija处于活跃状态,而其他r-1个磁盘处于休眠状态;其中,休眠状态是指:磁盘整体处于低功耗待机状态;
步骤3-3,磁盘管理模块Wij只与当前活跃状态的磁盘Gija建立视频流读取通道;
磁盘管理模块Wij实时采集来自于活跃状态的刀片服务器Fij的待存储的视频数据块,一方面,将实时采集到的视频数据块发送给当前活跃状态的磁盘Gija;另一方面,采集时间戳T,并根据时间戳T得到当前活跃状态的磁盘Gija的已运行时间长度t"2;再判断以下公式是否成立:
0<t"1-t"2<ε"
其中:ε"为已知预设值,为磁盘预轮询提前时间长度;
如果公式不成立,则执行步骤3-4;如果公式成立,则执行步骤3-5;
步骤3-4,返回步骤3-3,实时采集下一个视频数据块并存储到当前活跃状态的磁盘Gija;
步骤3-5,磁盘管理模块Wij根据磁盘轮询顺序,确定下个周期需要激活的磁盘DID,记为磁盘Gijb,其中,b=1,2,...,r,并且,b≠a;然后,磁盘管理模块Wij向网关发送激活磁盘Gijb的激活指令;其中,该激活指令中携带有需要激活的磁盘Gijb的DID;
步骤3-6,网关对接收到的激活指令进行解析,并根据解析到的磁盘Gijb进行路由寻址,确定需要激活的磁盘Gijb的地址;然后,网关直接向需要激活的磁盘Gijb发送激活执行指令,使磁盘Gijb激活并转为活跃状态;
步骤3-7,此时,磁盘Gijb被激活,然后,令b=a;返回步骤3-3;
在上述过程中,在磁盘Gijb被激活后,磁盘Gijb与磁盘管理模块Wij建立视频流取写通道,并直接向磁盘Gijb传输视频流数据;对于上一周期处于活跃状态的磁盘Gija,当磁盘Gija连续t"3时间长度均没有接收到磁盘管理模块Wij发送的视频流数据时,则磁盘Gija检测到其与磁盘管理模块Wij的视频流传输通道已切断,磁盘Gija转入休眠状态。其中,连续t"3时间长度可设置为5分钟。
还包括:步骤4,在进行视频回放时,采用磁盘智能预唤醒策略,提前预唤醒磁盘,实现视频回放。
智能预唤醒是预判用户操作,主要是在视频回放时,根据视频存储的磁盘位置信息,提前预唤醒磁盘,避免产生回放延时。预唤醒指令通过网关进行调度下发。
其中:磁盘智能预唤醒策略是指:
当网关接收到对指定时间t4的视频顺序回放请求时,网关向各个接力组的服务器管理模块下发对指定时间t4的视频顺序获取请求;
每个接收到请求的服务器管理模块,同步执行以下操作:
服务器管理模块从管理的刀片服务器中,定位到与指定时间t4对应的刀片服务器F(t4),然后仅唤醒刀片服务器F(t4);然后,刀片服务器F(t4)的磁盘管理模块W(t4)进一步细定位到与指定时间t4对应的磁盘G(t4),并唤醒磁盘G(t4),一方面,从磁盘G(t4)中从时间t4对应的位置开始,顺序读取视频数据块,并上传给网关;另一方面,磁盘管理模块W(t4)实时监测磁盘G(t4)中从当前时间开始剩余的顺序读取最大容量,当剩余的顺序读取最大容量小于设定阈值时,提前激活下一个相邻的磁盘,保证视频回放无延时。
具体实现上,可采用以下方式概括实现:
关于降功耗的具体实施步骤如下:
第一步:确定集群范围,一个集群至少由N*3(N>=1)台刀片服务器构成;
第二步:对集群内的刀片服务器划分形成不同的接力组;
第三步:网关统一资源分配,将摄像机设备分配到不同的接力组内;
第四步:接力组根据接入的摄像机设备读取数据,按照轮转策略将数据推送到对应的刀片服务器,接收数据的刀片服务器将数据进行存储。轮转策略包括接力组内的刀片服务器轮转和刀片服务器内部的磁盘轮转两种方式。同时,因为磁盘的轮转,还需要考虑磁盘的预唤醒功能;
第五步:视频回放时,根据回放时间点查找对应的接力组及具体的存储刀片服务器、磁盘,如果当前磁盘处于休眠(STANDBY)状态,则将其唤醒激活,回放结束后再次根据需要令其睡眠。
以某公司自主研发的嵌入式云存储刀片服务器部署为例说明:
本集群由18个Hi3536单元、72块磁盘、外置网口、USB接口、HDMI接口、风扇等等硬件组成。每个Hi3536单元相当于一个刀片服务器,挂载4块磁盘。根据实际测试,每块磁盘的功耗在8w左右。以8w为基准数字进行验证分析。
具体实施步骤如下:
第一步:根据实际项目需要,确定需要部署的摄像机设备数量及刀片服务器数量,明确嵌入式存储集群范围,设定刀片服务器数量为300台。
第二步:将集群范围内的刀片服务器每3台划分为一个接力组,总共划分为100个刀片接力组;
第三步:规划视频监控***总图,按照组网规划部署软件及硬件产品。
第四步:集群***按照本发明提供出既定的调度策略进行轮转;
第五步:***运行90天功耗比较;
单刀片磁盘:72块
总共运行天:90天
刀片服务器:300台
单磁盘功耗:8w
优化前功耗:8w*72*300=172.8kw
优化后方案:8w*72*300*0.55=95.04kw
优化前后对比:预计功耗降低45%,每小时降低77.76度电,按照每度电0.5元计算,预计全年节省电费约340588.8元。
本发明涉及的技术要点包括:1.对多个刀片服务器进行接力分组,根据调度策略,将接入设备的数据均衡轮转发送到每台刀片服务器;2.对接力组内的磁盘进行磁盘均衡轮转,将数据均衡分布到每个磁盘上;3.对休眠磁盘采用智能预唤醒机制。
本申请解决的技术问题是如何处理嵌入式下大规模云存储***运转时,由于未考虑存储***的功耗,导致***功耗过高,而降低了嵌入式天然低功耗优势的问题。本发明根据视频流存储磁盘读写时机的不同,以及嵌入式下云存储***本身的工作特点,综合各种因素选择执行磁盘轮休策略和服务器平衡轮转策略,一方面最大化地保证尽可能多的磁盘参与轮休,另一方面采用磁盘预唤醒的方式保证用户在视频回放过程中体验不受影响。
本发明提供的一种应用于嵌入式云存储***的降功耗方法,具有以下优点:
(1)创造性地提出刀片服务器的接力组策略,以直接降低同一时刻在工作的磁盘数量,达到降功耗的目的,可以降低磁盘总功耗的2/3,集群整体功耗降幅近30%。
(2)在接力组策略的基础上,进一步以刀片服务器接力组组内的磁盘轮休策略作为补充,以直接降低同一时刻在工作的磁盘数量,达到降功耗的目的,可以降低刀片服务器内磁盘总功耗的3/4;综合前一项,集群整体功耗降幅可达45%。
(3)视频回放时执行磁盘预唤醒功能,择机唤醒需要的磁盘,既满足了降功耗的特性,同时也保证了客户体验不受影响。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
Claims (3)
1.一种应用于嵌入式云存储***的降功耗方法,其特征在于,包括以下步骤:
步骤1,集群包括n*m台服务器;将集群中的服务器划分形成n个接力组,分别表示为接力组C1,C2,...,Cn;其中,任意的接力组Ci均包括m个刀片服务器,分别表示为刀片服务器Fi1,Fi2,...,Fim;其中,i=1,2,...,n;
对于接力组Ci上的任意刀片服务器Fij,其中,j=1,2,...,m,包括r个磁盘,分别表示为磁盘Gij1,Gij2,...,Gijr;
步骤2,对于每个接力组Ci,配置对应的服务器管理模块Mi,服务管理模块Mi分别与网关与接力组Ci内的各个刀片服务器连接;
对于接力组Ci内的每个刀片服务器Fij,配置磁盘管理模块Wij,磁盘管理模块Wij分别与刀片服务器Fij和各个磁盘连接;
步骤3,网关实时接收视频流,每当接收到设定长度的视频流时,将该设定长度的视频流等长度按序切分形成n个视频数据块,分别表示为视频数据块S1,S2,...,Sn;然后,将视频数据块S1,S2,...,Sn分布式存储到对应的接力组,即:将视频数据块S1存储到接力组C1,将视频数据块S2存储到接力组C2,依此类推,将视频数据块Sn存储到接力组Cn;然后,再将下一个设定长度的视频流切块并实现分布式存储;如此不断循环;
对于任意接力组Ci,采用以下方式,实现低功耗实时视频流存储:
步骤3A:接力组Ci内的各个刀片服务器,采用服务器平衡轮转方式进行服务器平衡轮转,包括:
步骤3.1,接力组Ci的服务器管理模块Mi预设置服务器轮询策略;所述服务器轮询策略包括服务器轮询顺序以及服务器轮询时间t1;
步骤3.2,服务器管理模块Mi初始化启动,按照服务器轮询顺序激活刀片服务器Fij,使刀片服务器Fij处于活跃状态,而其他m-1个刀片服务器处于休眠状态;其中,休眠状态是指:刀片服务器整体处于低功耗待机状态,磁盘不工作,CPU运行在低功耗模式;
步骤3.3,服务器管理模块Mi只与当前活跃状态的刀片服务器Fij建立视频流传输通道;
服务器管理模块Mi实时采集来自于网关的待存储的视频数据块,一方面,将实时采集到的视频数据块发送给当前活跃状态的刀片服务器Fij;另一方面,采集时间戳T,并根据时间戳T得到当前活跃状态的刀片服务器Fij的已运行时间长度t2;再判断以下公式是否成立:
0<t1-t2<ε
其中:ε为已知预设值,为服务器预轮询提前时间长度;
如果公式不成立,则执行步骤3.4;如果公式成立,则执行步骤3.5;
步骤3.4,返回步骤3.3,实时采集下一个视频数据块并存储到当前活跃状态的刀片服务器Fij;
步骤3.5,服务器管理模块Mi根据服务器轮询顺序,确定下个周期需要激活的刀片服务器SID,记为刀片服务器Fiv,其中,v=1,2,...,m,并且,v≠j;然后,服务器管理模块Mi向网关发送激活刀片服务器Fiv的激活指令;其中,该激活指令中携带有需要激活的刀片服务器Fiv的SID;
步骤3.6,网关对接收到的激活指令进行解析,并根据解析到的刀片服务器SID进行路由寻址,确定需要激活的刀片服务器Fiv的地址;然后,网关直接向需要激活的刀片服务器Fiv发送激活执行指令,使刀片服务器Fiv激活并转为活跃状态;
步骤3.7,此时,刀片服务器Fiv被激活,然后,令v=j;返回步骤3.3;
在上述过程中,在刀片服务器Fiv被激活后,服务器管理模块Mi与刀片服务器Fiv建立视频流传输通道,并直接向刀片服务器Fiv传输视频流数据;对于上一周期处于活跃状态的刀片服务器Fij,当刀片服务器Fij连续t3时间长度均没有接收到服务器管理模块Mi发送的视频流数据时,则刀片服务器Fij检测到其与服务器管理模块Mi的视频流传输通道已切断,刀片服务器Fij转入休眠状态;
步骤3B:处于活跃状态的刀片服务器Fij,采用磁盘平衡轮转方式进行磁盘平衡轮转,包括:
步骤3-1,磁盘管理模块Wij预设置磁盘轮询策略;所述磁盘轮询策略包括磁盘轮询顺序以及磁盘轮询时间t"1;
步骤3-2,磁盘管理模块Wij初始化启动,按照磁盘轮询顺序激活磁盘Gija,其中,a=1,2,...,r,使磁盘Gija处于活跃状态,而其他r-1个磁盘处于休眠状态;其中,休眠状态是指:磁盘整体处于低功耗待机状态;
步骤3-3,磁盘管理模块Wij只与当前活跃状态的磁盘Gija建立视频流读取通道;
磁盘管理模块Wij实时采集来自于活跃状态的刀片服务器Fij的待存储的视频数据块,一方面,将实时采集到的视频数据块发送给当前活跃状态的磁盘Gija;另一方面,采集时间戳T,并根据时间戳T得到当前活跃状态的磁盘Gija的已运行时间长度t"2;再判断以下公式是否成立:
0<t"1-t"2<ε"
其中:ε"为已知预设值,为磁盘预轮询提前时间长度;
如果公式不成立,则执行步骤3-4;如果公式成立,则执行步骤3-5;
步骤3-4,返回步骤3-3,实时采集下一个视频数据块并存储到当前活跃状态的磁盘Gija;
步骤3-5,磁盘管理模块Wij根据磁盘轮询顺序,确定下个周期需要激活的磁盘DID,记为磁盘Gijb,其中,b=1,2,...,r,并且,b≠a;然后,磁盘管理模块Wij向网关发送激活磁盘Gijb的激活指令;其中,该激活指令中携带有需要激活的磁盘Gijb的DID;
步骤3-6,网关对接收到的激活指令进行解析,并根据解析到的磁盘Gijb进行路由寻址,确定需要激活的磁盘Gijb的地址;然后,网关直接向需要激活的磁盘Gijb发送激活执行指令,使磁盘Gijb激活并转为活跃状态;
步骤3-7,此时,磁盘Gijb被激活,然后,令b=a;返回步骤3-3;
在上述过程中,在磁盘Gijb被激活后,磁盘Gijb与磁盘管理模块Wij建立视频流取写通道,并直接向磁盘Gijb传输视频流数据;对于上一周期处于活跃状态的磁盘Gija,当磁盘Gija连续t"3时间长度均没有接收到磁盘管理模块Wij发送的视频流数据时,则磁盘Gija检测到其与磁盘管理模块Wij的视频流传输通道已切断,磁盘Gija转入休眠状态。
2.根据权利要求1所述的一种应用于嵌入式云存储***的降功耗方法,其特征在于,还包括:步骤4,在进行视频回放时,采用磁盘智能预唤醒策略,提前预唤醒磁盘,实现视频回放。
3.根据权利要求2所述的一种应用于嵌入式云存储***的降功耗方法,其特征在于,磁盘智能预唤醒策略是指:
当网关接收到对指定时间t4的视频顺序回放请求时,网关向各个接力组的服务器管理模块下发对指定时间t4的视频顺序获取请求;
每个接收到请求的服务器管理模块,同步执行以下操作:
服务器管理模块从管理的刀片服务器中,定位到与指定时间t4对应的刀片服务器F(t4),然后仅唤醒刀片服务器F(t4);然后,刀片服务器F(t4)的磁盘管理模块W(t4)进一步细定位到与指定时间t4对应的磁盘G(t4),并唤醒磁盘G(t4),一方面,从磁盘G(t4)中从时间t4对应的位置开始,顺序读取视频数据块,并上传给网关;另一方面,磁盘管理模块W(t4)实时监测磁盘G(t4)中从当前时间开始剩余的顺序读取最大容量,当剩余的顺序读取最大容量小于设定阈值时,提前激活下一个相邻的磁盘,保证视频回放无延时。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011262892.4A CN112379768B (zh) | 2020-11-12 | 2020-11-12 | 一种应用于嵌入式云存储***的降功耗方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011262892.4A CN112379768B (zh) | 2020-11-12 | 2020-11-12 | 一种应用于嵌入式云存储***的降功耗方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112379768A CN112379768A (zh) | 2021-02-19 |
CN112379768B true CN112379768B (zh) | 2021-05-18 |
Family
ID=74583350
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011262892.4A Active CN112379768B (zh) | 2020-11-12 | 2020-11-12 | 一种应用于嵌入式云存储***的降功耗方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112379768B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107104961A (zh) * | 2017-04-21 | 2017-08-29 | 中国电子科技集团公司第二十八研究所 | 基于ZooKeeper的分布式实时视频监控处理*** |
CN108174280A (zh) * | 2018-01-18 | 2018-06-15 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种音视频在线播放方法及*** |
CN108989853A (zh) * | 2018-08-24 | 2018-12-11 | 阿里巴巴集团控股有限公司 | 一种多媒体物料的处理方法、装置及多媒体播放设备 |
CN109327539A (zh) * | 2018-11-15 | 2019-02-12 | 上海天玑数据技术有限公司 | 一种分布式块存储***及其数据路由方法 |
CN109525794A (zh) * | 2018-12-27 | 2019-03-26 | 中铁第四勘察设计院集团有限公司 | 一种视频存储与管理方法及*** |
CN110913165A (zh) * | 2019-10-21 | 2020-03-24 | 福建星网智慧科技股份有限公司 | 基于级联框架的视频会议***的视频流轮播方法和装置 |
CN111083408A (zh) * | 2019-12-20 | 2020-04-28 | 苏州浪潮智能科技有限公司 | 一种视频存储业务的处理方法、***及设备 |
CN111897656A (zh) * | 2020-08-06 | 2020-11-06 | 北京中电兴发科技有限公司 | 一种基于镜像队列的主队列负载平衡方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8522290B2 (en) * | 2005-10-07 | 2013-08-27 | Infosys Technologies, Ltd. | Video on demand system and methods thereof |
JP6127489B2 (ja) * | 2012-12-11 | 2017-05-17 | 株式会社リコー | 処理要求装置、処理要求装置の制御プログラム |
US10705961B2 (en) * | 2013-09-27 | 2020-07-07 | Intel Corporation | Scalably mechanism to implement an instruction that monitors for writes to an address |
-
2020
- 2020-11-12 CN CN202011262892.4A patent/CN112379768B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107104961A (zh) * | 2017-04-21 | 2017-08-29 | 中国电子科技集团公司第二十八研究所 | 基于ZooKeeper的分布式实时视频监控处理*** |
CN108174280A (zh) * | 2018-01-18 | 2018-06-15 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种音视频在线播放方法及*** |
CN108989853A (zh) * | 2018-08-24 | 2018-12-11 | 阿里巴巴集团控股有限公司 | 一种多媒体物料的处理方法、装置及多媒体播放设备 |
CN109327539A (zh) * | 2018-11-15 | 2019-02-12 | 上海天玑数据技术有限公司 | 一种分布式块存储***及其数据路由方法 |
CN109525794A (zh) * | 2018-12-27 | 2019-03-26 | 中铁第四勘察设计院集团有限公司 | 一种视频存储与管理方法及*** |
CN110913165A (zh) * | 2019-10-21 | 2020-03-24 | 福建星网智慧科技股份有限公司 | 基于级联框架的视频会议***的视频流轮播方法和装置 |
CN111083408A (zh) * | 2019-12-20 | 2020-04-28 | 苏州浪潮智能科技有限公司 | 一种视频存储业务的处理方法、***及设备 |
CN111897656A (zh) * | 2020-08-06 | 2020-11-06 | 北京中电兴发科技有限公司 | 一种基于镜像队列的主队列负载平衡方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112379768A (zh) | 2021-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200358710A1 (en) | Container-based mobile code offloading support system in cloud environment and offloading method thereof | |
CN108920153B (zh) | 一种基于负载预测的Docker容器动态调度方法 | |
CN105187512A (zh) | 一种虚拟机集群负载均衡方法及*** | |
CN103188277A (zh) | 负载能耗管理***、方法和服务器 | |
CN103763396A (zh) | 基于多协议并行采集技术的能耗数据采集器及其采集方法 | |
CN104102543A (zh) | 一种云计算环境中负载调整的方法和装置 | |
CN104219318A (zh) | 一种分布式文件存储***及方法 | |
CN105868004B (zh) | 一种基于云计算的业务***的调度方法及调度装置 | |
CN102736725A (zh) | 一种硬盘节能控制方法、装置及中央处理器 | |
CN109857239A (zh) | 存储控制方法及装置 | |
CN102929769A (zh) | 一种基于代理服务的虚拟机内部数据采集方法 | |
CN104360724B (zh) | 一种基于作业调度的刀片服务器的散热方法 | |
CN104881990A (zh) | 基于多协议并行采集技术的能耗数据采集器及其采集方法 | |
US9727252B2 (en) | Methods and systems for optimal snapshot distribution within a protection schedule | |
TW202011146A (zh) | 動態地分配和優化電力資源的方法及系統、以及非暫態性機器可讀媒體 | |
CN101853185B (zh) | 刀片服务器的业务调度方法和刀片服务器 | |
CN104796673A (zh) | 一种面向能耗优化的云视频监控***任务接入方法 | |
CN103617090A (zh) | 一种基于分布式管理的节能方法 | |
CN103188099B (zh) | 一种多应用***的备份方法、装置及*** | |
CN112379768B (zh) | 一种应用于嵌入式云存储***的降功耗方法 | |
CN102681650B (zh) | 一种电源控制节能方法及其对应的存储*** | |
CN107666510A (zh) | 一种空气源热泵远程管理云服务*** | |
CN105528054A (zh) | 集群***综合调度节能方法及装置 | |
US8281159B1 (en) | Systems and methods for managing power usage based on power-management information from a power grid | |
CN105183130A (zh) | 一种云平台下物理机节省电能的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |