首页> 中国专利> 面向数据密集型服务协同系统的组件服务部署方法

面向数据密集型服务协同系统的组件服务部署方法

摘要

本发明公开了一种面向数据密集型服务协同的组件服务部署方法,采用基于阴性选择的多目标优化算法进行部署优化。将据数据密集型服务协同的组件服务部署问题映射到阴性选择算法中,单个组件服务的单个部署方案映射为基因,所有组件服务的一个部署方案映射为抗体,将所有可能基因构建形成基因库。根据基于阴性选择方法顺序迭代匹配,经过多次循环迭代匹配最终得到抗原,将该抗体对应的部署方案作为最优的部署方案。每次迭代过程中首先通过基因重组生成一定数量的抗体,形成抗体群组,再通过阴性选择,从抗体群组中剔除低质量抗体,降低搜索空间,且每次迭代后都根据迭代结果更新基因仓库,保证在下一轮迭代中能够通过基因重组生成更优的抗体。

著录项

  • 公开/公告号CN103413040A

    专利类型发明专利

  • 公开/公告日2013-11-27

    原文格式PDF

  • 申请/专利权人 浙江大学;

    申请/专利号CN201310338178.2

  • 申请日2013-08-05

  • 分类号G06F19/00;H04L29/06;

  • 代理机构杭州天勤知识产权代理有限公司;

  • 代理人胡红娟

  • 地址 310027 浙江省杭州市西湖区浙大路38号

  • 入库时间 2024-02-19 21:05:45

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-05-11

    专利实施许可合同备案的生效 IPC(主分类):G06F19/00 合同备案号:2018330000035 让与人:浙江大学 受让人:恒生电子股份有限公司 发明名称:面向数据密集型服务协同系统的组件服务部署方法 申请公布日:20131127 授权公告日:20160608 许可种类:普通许可 备案日期:20180417 申请日:20130805

    专利实施许可合同备案的生效、变更及注销

  • 2016-06-08

    授权

    授权

  • 2013-12-18

    实质审查的生效 IPC(主分类):G06F19/00 申请日:20130805

    实质审查的生效

  • 2013-11-27

    公开

    公开

说明书

技术领域

本发明涉及通信领域,尤其涉及一种面向数据密集型服务协同系 统的组件服务部署方法。

背景技术

近年来,随着云计算、物联网、移动互联网等新一代信息技术的 发展,互联网数据成爆炸式增长。据统计,互联网一天产生的全部数 据可以刻满1.68亿张DVD,发出的邮件相当于美国两年的纸质信件 数量,发出的社区帖子相当于《时代》杂志770年的文字量。美国互 联网数据中心指出互联网数据每年将增长50%,每两年便将翻一番。 在互联网数据正以前所未有的速度急剧增长的态势下,《纽约时报》 于2012年发表文章“Age of Big Data”正式拉开了“大数据”时代的 序幕,掀起了大数据组织、管理、分析、挖掘和应用的研究热潮。

基于大数据的处理和分析,通过互联网提供各类专业性、个性化 的特色服务,将是现代企业在“大数据”时代的一个重要发展方向。 相比企业现已提供的各类信息服务和业务服务,这类服务的一个重要 特征是以大数据处理和分析为基础,其实现过程通常伴有海量数据的 操作、交换和存储,服务的处理周期、响应时间都相对较长,这类服 务被称之为数据密集型服务。随着企业大数据的不断积累,针对大数 据的价值挖掘和利用的不断推进,数据密集型服务作为互联网上的一 种重要服务形态,开始得到工业界和学术界的高度关注,并成为服务 计算领域的一个重要研究方向,形成了一批相关的学术会议,如 DIEW、DIDC、DIES、DISA等,涌现出众多的研究成果,推动了数 据密集型服务的应用。

目前,数据密集型服务已开始被应用于天文学、高能物理学以及 生物信息学等领域。为了解决更为复杂的问题,多个数据密集型服务 往往会依据一定的业务逻辑进行协同工作。然而,数据密集型服务的 协同相对于传统服务之间的协同有着很大不同。首先,数据密集型服 务处理的数据大小通常达到TB级甚至PB级,其中既有已存在的输 入数据源,也有在大数据处理过程中产生的中间数据和最终结果数据, 服务协同不再以过程为中心,转而变成以数据为中心。其次,在分布 式环境下部署并执行数据密集型服务的协同过程,需要多数据中心的 协作;在协同的执行过中,将不可避免的产生大量的数据传输开销, 而在传统的服务协同中,数据传输的时间开销相对于服务的执行时间 可以忽略。此外,传统服务由于处理的数据量不大,只需要将数据存 储在本地即可;而数据密集型服务处理的数据量巨大,往往存储在云 数据中心,这就导致了服务存取数据的方式发生了变化,不再是单一 的在服务之间进行数据迁移,而更有可能是将服务向数据源迁移。

由于数据密集型服务协同处理的数据量十分庞大,这些数据会部 署在不同的数据中心。因此,在数据密集型服务协同的执行过程中不 可避免地需要进行跨数据中心的数据传输。如何减少这些数据传输开 销对于提高数据密集型服务协同的执行性能至关重要。一方面,由于 数据规模巨大且数据中心间网络带宽有限;另一方面,存在一些数据 只能被存放于指定的数据中心而不能被移动,故如何实现服务协同过 程中跨数据中心的高效数据传输成为一个挑战。此外,数据密集型服 务协同的流程特性决定了其数据之间存在数据依赖关系。在多数据中 心环境下,合理的服务部署方案应力求保持这种数据间的依赖关系, 这将利于降低流程执行过程中跨数据中心数据传输所导致的时间开 销,进而提升执行效率。因此,如何有效地部署服务以减少数据中心 间的数据传输开销是实现服务协同整体执行性能优化的一大挑战。此 外,由于数据密集型服务协同过程往往伴随着大规模数据的处理,因 此如何优化其执行性能也是一个重要的研究课题。

传统的性能优化方法大多建立在性能分析、性能预测等技术的基 础之上,这些方法可分为建模和经验测量两种类型。建模方法不需要 具备真实系统,成本较低,通用性较好,但是准确度相对较低,且无 法适用于数据密集型服务协同这样的复杂系统。经验测量方法准确度 较好,但是需要具备真实系统或基准程序,性能预测的成本较高。因 此,如何针对数据密集型服务协同提出高效准确的性能预测模型,是 对其执行性能进行优化的重要基础。

发明内容

本发明针对现有的数据密集型服务协同系统在执行时会产生大 量数据传输开销的问题,提供了一种面向数据密集型服务协同系统的 组件服务部署方法。

本发明的面向数据密集型服务协同系统的组件服务部署方法,包 括:

1)初始化过程,将组件服务部署映射到阴性选择算法中,将单 个组件服务部署到某一数据中心表示为基因,部署方案表示成由基因 组成的抗体,并将所有可能的基因构建形成基因仓库,同时还建立一 个初始状态为空的低质量基因库;

2)基因重组,从基因仓库中选取若干基因组合生成预定数量的 抗体,形成抗体群组;

3)阴性选择,根据低质量基因库从所述的抗体群组中剔除低质 量抗体,保留高质量抗体;

4)抗体评估,计算所述高质量抗体的适应度,并根据所述的适 应度将所述的高质量抗体分为适应度较高组和适应度较低组;

5)基因评估,根据基因的适应度从所述适应度较低组的抗体中 确定低质量基因,并存入低质量基因库;

6)基因仓库更新,利用适应度较高组的抗体的基因更新基因仓 库;

7)循环进行步骤2)~6)直至设定的循环次数,选取适应度最 高的抗体为抗原,并将所述的抗原对应的部署方案作为所述的组件服 务部署方案。

本发明针对数据密集型服务协同的组件服务部署问题,采用基于 阴性选择(negative selection algorithm)的多目标优化算法进行部署 优化。将据数据密集型服务协同的部署问题模型映射到阴性选择算法 中,将单个组件服务的单个部署方案映射为基因,将所有组件服务的 单个部署方案映射为抗体。根据基于阴性选择方法顺序迭代匹配,每 次迭代过程中先通过基因重组生成一定数量的抗体,形成抗体群组, 再根据阴性选择算法剔除抗体群组中的低质量抗体,降低搜索空间, 另外每次迭代最后都根据迭代结果更新基因仓库,保证在下一轮迭代 中能够生成更优的抗体。每次生成抗体的数量,其大小可根据实际的 应用场景设定。经过多次迭代匹配最终得到全局最优的部署方案。

所述步骤2)中依据概率从基因库中选取基因,概率高的基因优 先被选取。

所述的概率根据公式:

probabiliy(i,j)=Ci,j·localfitness(i,j)Σk=1qCi,k·localfitness(i,k)

得到,其中:

probabiliy(i,j)表示第i个组件服务部署到第j个数据中心对应基因 的概率;

Ci,j和Ci,k为参考矩阵中的元素,所述的参考矩阵为p×q阶矩阵,, p为数据密集型服务协同系统中组件服务的数量,q表示可用于部署 的数据中心的数量,该参考矩阵在初始化过程中建立,且初始状态该 参考矩阵中所有元素为1;

localfitness(i,j)为局部目标函数,表示第i个组件服务部署到第j 个数据中心对应基因的适应度,datai表 示第i个组件服务所需要的输入数据的大小,dcj.sc是第j个数据中心 的容量。

依据概率进行基因重组,适应度越高的基因被选择进行重组生成 抗体的概率也越高,从而保证每轮迭代过程中生成的抗体的质量不断 提高。基因的适应度与数据中心的容量有关,在第i个组件服务部署 到第j个数据中心后,剩余的存储空间越大,函数localfitness(i,j), 即相应基因的适应度越高,该基因被选择生成抗体的概率也越高。

所述步骤3)中确定低质量抗体的方法如下:

将步骤2)中生成的抗体分别与低质量基因库匹配,若抗体中含 有低质量基因库中的基因数量超过了设定的阈值,或抗体中包含适应 度小于0的基因,则认定该抗体为低质量抗体;否则,认定为高质量 抗体。

抗体中的基因质量决定抗体的质量,当抗体中含有的低质量基因 达到一定的比例时,该抗体就为低质量。另外,当抗体中任一基因的 适应度小于0,则说明该基因对应的组件服务所需要输入的数据量超 过了数据中心的容量,因此包含该基因的抗体对应的整个部署方案不 可用,该抗体也被认定为低质量抗体。

所述步骤4)中根据全局目标函数:

fitness(v)=ω1··Latency-1+ω2·Roverload(DC)-1

计算高质量抗体的适应度,fitness(v)表示抗体v的适应度,其中:

Latency表示在该部署方案下,数据密集型服务协同系统的数据传 输的时间开销:Latency=Tdata+Texec+Tc,Tdata是组件服务之间的数据传 输的时间开销,Texec表示服务执行的时间开销,Tc表示其他的固定时 间开销;

Roverload(DC)为所有数据中心的负载率,

Roverload(dc)=0usagedc.sc<dc.ste(usagedc.sc-dc.st)/dc.stotherwise,Roverload(dc)表示数据中心 dc的负载率,usage表示所有传输到数据中心dc的数据量,dc.st表 示数据中心dc的负载上限百分比,dc.sc表示数据中心dc的容量;

ω1和ω2分别表示变量Latency和Roverload(DC)的权重;

是调节参数。

ω1、ω2和可以根据偏好或实际应用场景进行配置,ω1和ω2作 为调节参数,用于平衡目标数据传输时间开销和负载的比例,用于 平衡变量ω1和ω2的值。如果两个含有数据依赖关系的组件服务部署 在同一个数据中心,则这两个组件服务部署之间不存在数据传输开销 Tdata,此时Tdata=0。Tc表示其他的固定时间开销,例如请求,响应, 建立连接等时间开销。由于数据密集型服务协同系统要处理的数据量 是十分庞大的,因此数据传输的时间开销要远远大于其他时间开销, 因此Latency近似等于Tdata。通过该方法计算抗体的适应度,同时将数 据之间的传输开销和数据中心的存储负载作为优化的目标。

所述步骤4)中将适应度高于平均值的抗体分为适应度较高组, 低于平均值的抗体分为适应度较低组;

所述平均值为所有高质量抗体的适应度的平均值。

所述步骤5)中低质量基因确定通过如下方法确定:若基因的适 应度低于设定的阈值,则确定该低质量基因。

一般认为适应度越低,包含低质量基因的可能性越大,因此从适 应度较低组确认低质量基因,有效缩小了搜索的范围,提高效率。

所述步骤6)还包括根据公式:更新参考矩 阵中的相应元素,ρ是衰减系数,fitnessmax是适应度较高组中抗体的 适应度的最大值,Ci,j'为Ci,j更新后的值。

衰减系数ρ用于提升算法的收敛性,通过该方法更新参考矩阵中 的元素,保证高质量基因在基因重组过程中被选择的概率不断提升。

所述的初始化过程还包括设定循环次数为50次。

一般迭代次数越高,最后得到的组件服务部署方案越好,但是次 数高,导致计算量大。通过50次迭代一般已经能够保证最终得到的 部署方案满足服务协同系统的性能要求,且能够有效的降低计算量, 提升优化速率。

本发明的面向数据密集型服务协同的组件服务部署优化方法采 用基于阴性选择(negative selection algorithm)的多目标优化算法进 行部署优化,将不同的组件服务部署到合适的数据中心,有效降低了 组件服务之间的数据传输开销。

附图说明

图1为本实施例的面向数据密集型服务协同的组件服务部署方 法应用场景;

图2为本实施例的面向数据密集型服务协同的组件服务部署方 法的工作流程图。

具体实施方式

下面将结合附图和具体实施例对本发明做进一步的说明。

本实施的面向数据密集型服务协同的组件服务部署方法的应用 场景如图1所示:某大型企业想要发布一个服务协同系统S,S包含 了5个组件服务sa到se,需要处理来自4个不同数据中心dc1到dc4的大规模数据。

本实施的面向数据密集型服务协同的组件服务部署方法,如图2 所示,包括:

1)初始化过程,包括:

将数据密集型服务协同系统的部署优化问题映射到阴性选择算 法中,将最优的组件服务部署方案表示成抗原,部署方案表示成由基 因组成的抗体,例如(2,3,1,2,4)表示一个抗体,表示该数据 密集型服务协同系统中第1个组件服务部署在2号数据中心,第2个 组件服务部署在3号数据中心,以此类推。将单个组件服务部署到某 一数据中心表示为基因,并初始化所有可能基因,将所有可能基因构 建基因库;

建立5×4阶参考矩阵Consistence Matrix表示,用于评估一个组 件服务被部署到某个数据中心是否合适,Ci,j为参考矩阵Consistence  Matrix中的元素,用于计算第i个组件服务部署到第j个数据中心对 应的基因的适应度,初始状态Ci,j=1;

建立低质量集合SELF set,作为低质量基因库,用来存放低质量 的基因,初始状态SELF set为空集;

设定每次生成的抗体数为50和循环次数为50。

2)根据每个基因的概率进行基因重组,生成50个抗体,形成抗 体群组,概率高的基因优选被选择,每个基因的概率根据公式:

probabiliy(i,j)=Ci,j·localfitness(i,j)Σk=1qCi,k·localfitness(i,k)

得到,probabiliy(i,j)表示第i个组件服务部署到第j个数据中心对应的 基因的概率。

3)阴性选择,将所述的抗体与SELF set进行匹配,若抗体中含 有SELF set中的基因数量超过了设定的阈值(本实施例中为抗体中 基因总数的10%),或者抗体包含适应度小于0的基因,则认定该抗 体为低质量抗体,从抗体的群组中剔除,否则,认定该抗体为高质量 抗体并保留。

4)抗体评估,根据全局目标函数评估保留下的高质量抗体的适 应度,根据抗体的适应度将高质量抗体分成两组,适应度大于或等于 平均值的分为适应度较高组,否则,分为适应度较低组。将全局目标 函数为:

fitness(v)=ω1··Latency-1+ω2·Roverload(DC)-1,

Latency表示在该部署方案下,数据密集型服务协同系统的数据传 输时间开销,

Latency=Tdata+Texec+Tc

Tdata是组件服务之间的数据传输开销,如果两个含有数据依赖关 系的组件服务部署在同一个数据中心,则Tdata=0,Texec表示服务执行 的时间开销,Tc表示其他的固定时间开销,

Roverload(DC)为所有负载中心的负载率,

Roverload(DC)=ΣdciDCRoverload(dci),

其中,Roverload(dci)为一个数据中心dc的负载率,

Roverload(dc)=0usagedc.sc<dc.ste(usagedc.sc-dc.st)/dc.stotherwise,

usage表示所有传输到dc的数据量,dc.st表示数据中心的负载上 限,dc.sc表示数据中心的容量,ω1和ω2表示变量Latency和Roverload(DC) 的权重,是调节参数,ω1、ω2和根据实际场景设定。本实施例中 满足ω12=1,且均设为0.5,一般为所有数据中的负载率的平均 值与数据传输时间开销的比值。

5)基因评估,根据局部目标函数计算适应度较低组抗体中的基 因的适应度,若低于设定的阈值(本实施例中为0.1-0.3),则认定为 低质量基因,并存入集合SELF set。局部目标函数为:

localfitness(i,j)=dcj.sc-dataidcj.sc,

localfitness(i,j)表示第i个组件服务部署到第j个数据中心对应的 基因的适应度,datai表示第i个组件服务所需要的输入数据的大小。 dcj.sc是第j个数据中心的数据容量。

6)基因仓库更新,对于所述的适应度较高组,通过公式: 更新Consistence Matrix中的相应元素,ρ是衰 减系数(本实施例中为0.9),Ci,j是矩阵Consistence Matrix中的元素, Ci,j'为Ci,j更新后的值。

7)循环进行步骤2)~6)直至设定的循环次数50次终,选取适 应度最高的抗体为抗原,并将所述的抗原对应的部署方案作为所述的 组件服务部署方案。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号