一种基于云计算的信息处理方法

文档序号:8475213阅读:459来源:国知局
一种基于云计算的信息处理方法
【技术领域】
[0001] 本发明涉及云计算,特别涉及一种基于云计算的信息处理方法。
【背景技术】
[0002] 云存储具有高可靠性、高扩展性、廉价低开销的特点。每台存储机器都是一个独立 的存储节点,节点的加入和分离不影响系统的正常运行,文件的数据量大;在处理海量视频 数据方面具有优势。但是,由于视频数据数据分块数量很多,并且每个数据分块及其版本都 存储在云平台中的不同节点中,因此在大量节点上需要进行事务的最优调度,而目前云平 台中的调度和资源分配机制是一种静态地局部调度机制,在进行资源分配和调度时,仅考 虑距离数据最近节点的当前资源状态,而没有从系统全局的角度进行资源的最佳分配。

【发明内容】

[0003] 为解决上述现有技术所存在的问题,本发明提出了一种基于云计算的信息处理方 法,包括:
[0004] 客户端的调度进程向管理节点查询事务需要处理的视频文件的分块信息树;
[0005] 客户端的调度进程根据视频文件的分块信息把该事务划分成多个子事务,其中每 个子事务处理一个数据块,划分后的结果以有向图的形式输出;
[0006] 判断有向图中是否存在无前驱的子事务,如果存在,从图中选择一个无前驱或者 所有前驱子事务都已经完成的子事务;
[0007] 客户端通过数据分块信息树和该子事务的描述信息中的数据块编号对节点执行 聚类,输出节点集合;
[0008] 客户端向该节点集合中的所有节点发送事务处理请求,事务处理请求中包含所述 子事务的描述信息;
[0009] 计算该子事务在各个节点的估计处理时间,并利用第一调整因数对所述估计处理 时间进行校准,所述第一调整因数关联于每个节点处理该类型子事务的历史特性信息;
[0010] 根据每个节点正在被执行的事务队列版本,正在等待资源的事务队列版本,当前 空闲资源数量,计算该子事务在每个节点中的资源就绪时间;
[0011] 计算出所述子事务在每个节点的最早完成时间,并利用第二调整因数对所述最早 完成时间进行校准,所述第二调整因数关联于每个节点中不同优先级的事务在单位等待时 间内被延迟的时间量;
[0012] 各个节点向客户端反馈所述子事务的最早完成时间,客户端从所述节点集合中选 择最早完成时间最小的节点来执行所述子事务,将该子事务根据其优先级插入所选择节点 的等待事务队列,或者抢占其它低优先级的事务立即执行;
[0013] 客户端判断所述有向图是否为空,若为空,则方法结束。
[0014] 本发明相比现有技术,具有以下优点:
[0015] 本发明提出的方法提高了云平台系统的资源利用率和负载均衡的效果。
【附图说明】
[0016] 图1是根据本发明实施例的基于云计算的信息处理方法的流程图。
【具体实施方式】
[0017] 下文与图示本发明原理的附图一起提供对本发明一个或者多个实施例的详细描 述。结合这样的实施例描述本发明,但是本发明不限于任何实施例。本发明的范围仅由权 利要求书限定,并且本发明涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节 以便提供对本发明的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中 的一些或者所有细节也可以根据权利要求书实现本发明。
[0018] 本发明在云计算环境下,对处理视频数据的事务以及事务调度与资源分配方法进 行建模,在此模型下提出了一种面向视频数据的事务调度方法。该方法以云存储系统中视 频数据文件的分块多版本存储形式为基础来规划并行处理事务,以数据块和版本的映射关 系为特征对云平台中数据节点执行聚类,以已执行完毕事务的反馈信息为基础来动态调度 未执行事务,以此来提高系统资源利用率和负载均衡的效果。图1是根据本发明实施例的 基于云计算的信息处理方法流程图。
[0019] 视频应用中的用户需求以事务描述文件的形式提交到云存储系统的客户端。当一 个事务被提交时,客户端根据数据分块信息把该事务划分成多个子事务来并行执行。每个 子事务关联着一个数据块。这样同一个事务中不同子事务就可以分布到不同的节点上执 行,能够避免子事务之间由于资源竞争而造成的瓶颈,更好地适应视频数据处理过程中资 源消耗高的特点。数据分块信息通过树Tr来描述:
[0020] Tr = (C,R),其中C是一个数据元素集合,其中的元素代表一个数据块;R是一个 二元关系集合,其中的元素代表两个数据块的内容是否相同。数据元素集合C中的元素 Ci 可以用一个二元组向量来描述:Ci= <bl(K;ki,a,
[0021] 其中bl(x;ki表示数据块i的编号,a i表示数据块i所在节点的编号。二元关系集合 R中的元素 rq表示数据块j是数据块i的版本。在随机的时间事务被提交到云存储系统 的客户端,提交到客户端的事务流可以描述为J= IJc^JpJ2, Ji,…,Jlri, Jj
[0022] 其中上可用六元组向量来描述:j i=〈transid i,(IeciCli, ??ΙθΑ,Ieveli, rcvJi, encLti〉,其中transid为事务编号,(IeciCl为事务描述文件编号,HleiCl为事务需要处理的 视频数据文件编号,level为事务的优先级,rcv_t为事务的提交时间,end_t为完成该事务 的截止时间。提交的事务ji被客户端划分为多个子事务。划分后的子事务可以用一个有 向图GR来描述:
[0023] GR =〈V,E>
[0024] 顶点集合V中的每个元素代表一个子事务。对于子事务Vi用一个九元组向量来 描述:V i=〈taskid i,transidp type" Wli, Cpui, Iiiemi, disk" bandp blocks〉
[0025] taskid为子事务编号,transid为子事务所属事务编号,type为子事务类型,wl负 载量(百万指令级),cpu,mem,disk,band为子事务执行时占用虚拟机中的抽象资源(CPU, 内存,磁盘和带宽)数量。虽然在虚拟机的抽象资源中,CPU资源可以在多个不同子事务之 间分时复用,但是相当一部分视频程序属于计算密集型事务(例如编解码),对于CPU资源 消耗相当大,多个计算密集型事务同时在一个CPU核上运行,会导致执行速度急剧降低,因 此需要限制一个处理机上的计算密集型事务的数量。因此也将CPU资源抽象成数量来度 量,将一个处理机抽象成4个CPU资源。blockid为事务需要处理的数据块编号。边集合E 中的每个元素代表两个子事务之间的一个依赖关系。eM(ei^e E)表示子事务Vi是子事 务 '的前驱,子事务 '是子事务V 后继。
[0026] 结合视频数据处理的特点,在本发明提出的事务调度和资源分配模型中每个数据 节点都有一个调度进程。这些调度进程知道它们所在数据节点的虚拟机的当前状态。并且 不同节点的调度进程能够和客户端的调度进程通信,传递事务调度和控制信息。客户端的 调度进程根据查询到的视频数据分块信息树Tr将事务划分成子事务后,根据二元关系集 合R将数据节点执行聚类,聚类规则如下:
[0027] af Dm,对于任意a"如果Dm,a# a」,则存在ιγR
[0028] 存储同一个数据块m的所有数据节点组成一个聚类集合Dm,ai为聚类集合D m内的 一个节点。客户端的调度进程从提高资源利用率和负载均衡的角度在DmR选择一个最佳 节点来执行任务。
[0029] 如果数据节点的调度进程接受了一个事务,则该事务或者根据其优先级插入这个 节点的等待事务队列,或者抢占其它低优先级的事务立即执行。事务执行完毕后,数据节点 的调度进程就通知客户端的调度进程,以便客户端的调度进程进行后继事务的调度。
[0030] 在云存储系统中,视频数据的数据块分布的节点数量巨大,因此存储有视频数据 数据块的各个节点需要有效地减少管理节点的负载。在本发明提出的事务调度模型中,节 点具有分配自身资源和事务调度的能力,具有统计自身资源和负载状态的能力。
[0031] 在本发明提出的动态资源分配和事务调度的方法中,客户端c的调度进程向数据 块m对应的聚类集合D mft所有数据节点(a i,a2, a3)发出事务处理请求。Dm内所有的数据 节点根据内部资源和当前负载状态,并利用由历史运行状态信息提取出来的动态因数计算 出事务V i在该节点的估计执行效果,并反馈给客户端调度进程。客户端调度进程根据反馈 信息选择能够最早完成该事务的节点来执行事务 Vi。这种以客户端主导调度过程,数据节 点主导资源分配以及动态反馈的方式对有利于整个云存储系统的负载均衡。
[0032] 第1步。客户端c的调度进程向管理节点查询事务需要处理的视频文件的分块信 息树Tr。
[0033] 第2步。客户端c的调度进程根据视频文件的分块信息把该事务划分成多个子事 务,其中每个子事务处理一个数据块,划分后的结果以有向图GR的形式输出。
[0034] 第3步。判断GR中是否存在无前驱的子事务,如果不存在,则等待。否则,从GR 中选择一个无前驱或者所有前驱子事务都已经完成的子事务,假设为Vi。
[0035] 第4步。客户端c通过数据分块信息树Tr和子事务Vi描述信息中的数据块编号 131〇〇1^对节点执行聚类,输出一个节点集合0 131。。151,0131。。1^={31,3 2,,"*,311_1}。客户端〇 向Dbltjdd中的所有节点发送事务处理请求,事务处理请求中包含了子事务V i的描述信息。
[0036] 第5步。收到事务处理请求的节点a』根据子事务V ^勺负载量(wl J,事务类型以 及节点a」的资源特性,估计子事务V i在节点a」的估计处理时间ETM' i,本发明用事务处 理时间矩阵的一个元素 ETMm来表示子事务V i在节点a」的估计处理时间。当子事务V ^勺 负载量很大时,估算值与实际值之间会有比较大的偏差。因此引入一个调整因数fmkd来对 ETM' i, j进行校准,得到最终的TM i, j。
[0037] ETMijj= ETM' JljXfmkjj
[0038] 其中fmk,』为第k类事务关于节点a』的调整因数。调整因数fm k,』反映了节点a j 执行第k类事务的历史特性。fmy的初始值为1。
[0039] fm' k,』=Tact j/ETMi,』
[0040] fmk, j= (fm k,』X λ+fm'k,』X (I-λ ))/2
[0041] fmk, j是一个更新值,节点a」每执行完一个第k类的子事务后,则计算出fm' k, J, Tactk,」为子事务k在节点a」上的实际处理时间(包括子事务开始执行前或者被抢占后等 待资源就绪的时间)。如果
[0042] I fm' k,j_l I > Δ fm,则该fm' k,j舍弃,Δ fm为一个预定义阈值,λ为一个预定义的权 值,分别调节fmk,j的更新速度和幅度。如果fmk,j更新幅度太小,则当节点a j
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1