基于聚類的动态负载均衡在数据采集上的应用.docVIP

基于聚類的动态负载均衡在数据采集上的应用.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于聚類的动态负载均衡在数据采集上的应用

基于聚类的动态负载均衡在数据采集上的应用 摘要:为了构建一个基于微博的社会网络,需要提供大量的微博数据源,那么如何才能实时高效的获取微博信息是构建微博社会网络面临的重大挑战。本文提出了一种基于聚类的动态负载均衡数据采集方法,将聚类算法与动态负载均衡结合是一次新的尝试,测试表明,能够满足对微博数据采集的需求。 关键词:微博;聚类;负载均衡;一致hash算法 application of clustering-based dynamic load balancing in the data collection liu dezhi (faculty of computer,guangdong university of technology,guangzhou510006,china) abstract:to build social networks based on microblog,we need to provide large microblogging data source,however how to efficient access to the microblogging information is to build social networks of the major challenges facing.this paper presents dynamic load balancing method of data collection based on clustering,combined with clustering and dynamic load balancing is a new attempt,the tests show that it can meet the demand for microblogging data collection. keywords:microblog;clustering;load balance;consistency hash algorithm 一、引言 随着web2.0技术的快速发展,微博的出现,使人们进入了网络全民媒体的生活方式[1]。面对大规模规模的数据,如何将任务均衡的分布在每台爬虫机上,是一个具有挑战性的问题。本文提出基于聚类的动态负载均衡的方法,将负载率过高的处理机进行任务转移,达到动态负载均衡的目的。 二、动态负载均衡模型 采集系统的逻辑架构结构如图1所示,任务管理节点将任务分配到任务数据节点上,然后由管理节点将任务结果的相关信息通知客户端,客户端再从相应的任务节点中提取结果。 图1 系统结构图 (一)处理机聚类 将处理机的权重定义为一组向量,公式如下: 其中:l(c)_m为cpu利用率的阀值,l(m) _m为内存利用率的阀值,l(d) _m为磁盘i/o量的阀值,l(p) _m为运行态进程数量的阀值。 根据权值向量,将具有同类性能的处理机划分为同一个类别。结合本系统的特点,采用启发式聚类算法比较适合。 (二)动态反馈调整 处理机的负载率r(i)定义如下: 其中l(ci)、l(mi)、l(di)、l(pi)分别为处理机i当前cpu的利用率,内存的利用率,磁盘i/o量,运行态进程数量。 在该系统中采用一种局部优先的原则,即优先对类的内部处理机进行动态负载调整。 三、算法描述 (一)聚类算法 处理机聚类采用经典的k-means[5]算法,分成k个类别,并将类别信息保存在任务管理节点上。为了方便算法描述,进行如下定义: 定义 1(处理机之间的距离)设处理机中集合中的pi和pj的权重分别为w(pi)和w(pj),则pi和pj的距离为 定义 2(处理机到类的距离)设处理机类为c,聚类的中心点为pi,pi∈c则设备pj到类c的距离等于pj到pi的距离。 得到类别集合后,将任务按照w(cj)的比例分配到各个类别中,类内部采用一致hash布局机制。 (二)负载调整 对于每个类dm的处理机而言,每隔时间t动态获取负载信息,设h为负载率最高的处理机,l为负载率最低的处理机。设处理节点的虚拟机节点为vp1 ,… ,vpm,ravg 为类中处理机所有虚节点的平均负载率。具体的伪代码如下: (1) while(rh - rl ≥r_in) (2) sort(vh,vl);//将虚节点按照负载率的大小进行降序排序 (3) δnum=min{(ravg –rz), (rh –ravg)};//需要转移的数量 (4) δnum=0; (5) while((δnum rl) (6) int_tran

文档评论(0)

fv45ffsjjI + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档