• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 13
    • 下载费用:30 金币  

    重庆时时彩cqssckjhmzstt: 对数据划分分布式环境实现动态划分和负载均衡的方法.pdf

    关 键 词:
    数据 划分 分布式 环境 实现 动态 负载 均衡 方法
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    摘要
    申请专利号:

    CN201110155674.5

    申请日:

    2011.06.10

    公开号:

    CN102207891A

    公开日:

    2011.10.05

    当前法律状态:

    授权

    有效性:

    有权

    法律详情: 授权|||实质审查的生效IPC(主分类):G06F 9/50申请日:20110610|||公开
    IPC分类号: G06F9/50 主分类号: G06F9/50
    申请人: 浙江大学
    发明人: 王新宇; 杨小虎; 李善平; 王婷; 邱炜伟
    地址: 310027 浙江省杭州市西湖区浙大路38号
    优先权:
    专利代理机构: 杭州求是专利事务所有限公司 33200 代理人: 周烽
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201110155674.5

    授权公告号:

    102207891B||||||

    法律状态公告日:

    2013.03.06|||2011.11.23|||2011.10.05

    法律状态类型:

    授权|||实质审查的生效|||公开

    摘要

    本发明公开了一种对数据划分分布式环境实现动态划分和负载均衡的方法,本发明通过动态组合基本数据单元即进行动态划分进行局部负载均衡,使得划分粒度能够适应系统运行时的要求,解决了固定划分方法由于粒度过大导致负载均衡时效的问题;本发明采用划分请求队列及稀缺资源队列模型分析节点负载具有较广泛的适用性;系统达到负载均衡后,本发明中的局部监视器可以动态调整划分个数,即使划分在节点内部进行自适应调整,以增大节点内部的资源利用率,进而提高整个系统的工作效率。

    权利要求书

    权利要求书
    1.  一种对数据划分分布式环境实现动态划分和负载均衡的方法,其特征在于,该方法包括如下步骤:
    (1)对数据划分系统存储于数据库表中的业务数据进行划分,形成基本数据单元,再根据系统需要部署的数据划分数量将基本数据单元平均分配到各个数据划分;
    (2)将数据划分部署到各个物理节点上,每个节点上的数据划分都作为独立的进程并行运行,并加载数据库中相关的数据到本地节点;
    (3)为每个数据划分创建唯一的划分请求队列,系统将到达的对各个数据划分的请求按照其所属数据划分入队到对应划分请求队列,数据划分从这个唯一的队列中获取请求以进行解析与后续处理,再为每个物理节点上对数据库的连接建立资源请求队列,资源请求队列为一个被单个节点上所有数据划分共享的后端队列,数据划分处理的请求需要连接数据库进行读写操作时,将连接请求发送到该后端队列中等待;
    (4)数据划分系统运行时在系统范围内通过监控所有划分请求队列和资源请求队列来计算负载,所选择的负载指数称为预计延迟,其计算方式为某一队列的队列长度与出队列速度之商,是某一请求从进入该队列到出队的预计延迟时间;
    (5)局部负载均衡在单个物理节点内进行,位于每个节点上的局部监视器周期性不断监视、计算与刷新划分请求队列的预计延迟作为每个数据划分的负载,当一个节点上最低负载和最高负载数据划分的预计延迟比值和高负载数据划分请求队列长度都超过预定义的阈值,并且高负载数据划分请求队列的入队速度大于出队速度,负载将继续升高,则启动局部负载均衡算法,将高负载数据划分上的部分基本数据单元移动到负载最低的数据划分;
    (6)全局负载均衡在所有物理节点间进行,全局监视器负责监视不同节点上的资源请求队列,计算并且周期性刷新预计延迟的值作为每个节点的负载,当检测到最低负载和最高负载节点的预计延迟比值和高负载节点资源请求队列长度都超过预定义的阈值,则从高负载节点移动一定数量的数据划分到低负载节点;
    (7)数据划分系统运行时,位于每个节点上的局部监视器同时监视并计算划分请求队列和资源请求队列的预计延迟,并计算当前平均每个请求从进入系统到处理完毕的预计等待时间,若考虑是否需要增加数据划分,再次计算增加一个数据划分时平均每个请求的预计等待时间,若预计等待时间减少,则增加一个数据划分,若预计等待时间增加,则不增加数据划分,考虑是否需要减少数据划分时亦然。

    2.  根据权利要求1所述的一种对数据划分分布式环境实现动态划分和负载均衡的方法,其特征在于,所述步骤(1)具体为:对数据划分系统存储于数据库表中的业务数据,根据表的字段寻找划分关键字,再利用划分关键字对数据库表进行横向划分,使得划分后的基本数据单元具有唯一性,这种横向划分主要是一种概念上的划分,从物理划分的角度看一般并不能够完全划分数据库,只能够对部分表进行划分,划分得到基本数据单元后对其的分配需要先确定数据划分的数量,再均匀地划归到各个数据划分。

    3.  根据权利要求1所述的一种对数据划分分布式环境实现动态划分和负载均衡的方法,其特征在于,所述步骤(2)具体为:每个数据划分作为一个独立的进程部署到各个物理节点,然后加载相关数据到本地节点内存中以提高性能,每个数据划分加载的数据是其所对应的基本数据单元的相关数据,如果是物理上能够被划分的表数据,则可以加载相关的一部分,反之则加载整张数据库表或者选择不加载。

    说明书

    说明书对数据划分分布式环境实现动态划分和负载均衡的方法
    技术领域
    本发明涉及基于数据划分的分布式环境,尤其涉及一种对数据划分环境实现动态数据划分和负载均衡的方法。
    背景技术
    随着企业的全球化及海量数据处理的需求不断发展,支持企业/公司业务运营的分布式系统越来越流行。然而两种基于应用划分的经典分布式模型,非对称式模型和对称式模型都有其无法克服的缺陷:非对称式模型无法均衡节点间负载,容易产生由于负载不均衡导致的性能问题;对称式模型具有良好的负载均衡能力,但对于大量有依赖关系的请求,需要数据库来进行数据同步和收集,同样会带来不容忽视的性能问题。
    为克服基于应用划分的经典分布式模型的缺陷,基于数据划分的分布式模型被引入工业界,并且有了不少应用实例。
    基于数据划分分布式模型将处理核心业务的组件按照访问的数据划分成多个数据划分,如图1所示:一个数据划分是一个独立的服务单元,只加载部分数据,并且只处理与这部分数据相关的请求;不同划分的数据和服务互不重叠,其总和构成了整个系统服务。与对称式模型相比,数据划分模型避免了数据库同步操作,从而提供了更好的性能。数据划分模型在初始部署时能够达到很好的负载均衡,对于系统运行时突发的负载倾斜,出现了基于数据库访问量(DA值)的负载均衡策略。
    该策略以数据库访问量(DA值)衡量一个数据划分的负载。其均衡方法是:首先将各节点的划分按DA值降序排列;然后根据DA值综合将各节点按降序排列                                                。当节点的DA值超过最大限制,并且节点与的DA值之比大于阈值SRT时,启动负载均衡,若将节点上的划分移动到节点不会导致其DA值超限,则将移动到。重复这个过程直到系统负载达到平衡。
    由于划分的固定性,该策略有诸多限制,无法解决某些负载均衡问题。首先,对于初次划分来说,划分数量的多少,即划分粒度会影响到该策略的效果。如图2所示,如果划分的粒度较大,针对某些基本数据单元的请求可能会非常集中,使得划分A成为一个负载很高的划分。移动除A以外所有划分,仍然不能平衡节点间的负载,并导致监视负载情况的中央控制器将划分A也移动到节点2。其后果是节点2成为负载过高的瓶颈节点,中央控制器将会再次启动基于DA值的负载均衡方法。重量级节点间划分移动操作的重复执行,降低了整个系统的性能;系统划分多次移动导致服务停止时间增加,使得服务可用性降低。反之,过细的划分粒度同样存在问题,中央控制器需要多次进行重量级的划分移动操作才能达到效果,会造成较大的系统开销。其次,初次划分之后,划分数量无法随系统运行环境的变化动态调整,当系统硬件升级使运行环境提高时,可能由于划分数量少而无法达到最优性能,反之,当系统由于新安装应用程序等原因导致运行环境下降时,可能由于划分数量多而加剧资源竞争导致性能下降。
    发明内容
    针对固定划分存在的问题,本发明提供了一种数据划分分布式环境下的动态划分及负载均衡的方法。
    本发明的目的是通过以下技术方案来实现的:(该部分我最后添加)
    本发明具有以下技术效果:
    1、本发明通过动态组合基本数据单元即进行动态划分进行局部负载均衡,使得划分粒度能够适应系统运行时的要求,解决了固定划分方法由于粒度过大导致负载均衡时效的问题。
    2、本发明采用划分请求队列及稀缺资源队列模型分析节点负载具有较广泛的适用性。
    3、系统达到负载均衡后,本发明中的局部监视器可以动态调整划分个数,即使划分在节点内部进行自适应调整,以增大节点内部的资源利用率,进而提高整个系统的工作效率。
    附图说明
    图1是基于数据划分的分布式模型图;
    图2是数据划分粒度过大的示例图;
    图3是基本数据单元逻辑划分的示例图;
    图4是基于数据划分的分布式架构示意图;
    图5是划分请求队列-稀缺资源队列示意图;
    图6是局部负载均衡流程图;
    图7是全局负载均衡流程图;
    图8是提高局部资源利用率流程图。
    具体实施方式
    动态划分使得组成数据划分的基本数据单元能够在运行时移动到其他划分,不再是固定不变的。负载均衡主要分为局部负载均衡、全局负载均衡和局部资源利用三部分。局部负载均衡通过在单个节点内的数据划分之间移动基本数据单元来平衡划分之间的负载?;臼莸ピ囊贫饕⑸谀诖嬷?,是轻量级的,可以快速执行。局部负载均衡后的数据划分有利于提高全局负载均衡的效率,防止负载均衡失效的发生。对于局部资源利用,如果监控发现对于节点资源使用不充分,则考虑增加数据划分的个数;反之减少数据划分的个数。这样的调整能够提高资源的利用率,例如多进程率过低时,不能满足CPU和I/O设备速度差的需要,使得大量CPU周期被浪费掉;而MPL过高时,则引起过多的上下文交换,而且对于虚存分页系统,会造成系统震荡。因此本发明提出的方法使得数据划分粒度能够适应系统运行时的要求,即数据划分可以在节点内部进行自适应调整,以增大节点内部的资源利用率,同时避免节点间负载均衡算法的失效。
    本发明对数据划分分布式环境实现动态划分和负载均衡的方法,其步骤如下:
    1、对数据划分系统存储于数据库表中的业务数据进行划分,形成基本数据单元,再根据系统需要部署的数据划分数量将基本数据单元平均分配到各个数据划分;
    2、将数据划分部署到各个物理节点上,每个节点上的数据划分都作为独立的进程并行运行,并加载数据库中相关的数据到本地节点;
    3、为每个数据划分创建唯一的划分请求队列,系统将到达的对各个数据划分的请求按照其所属数据划分入队到对应划分请求队列,数据划分从这个唯一的队列中获取请求以进行解析与后续处理,再为每个物理节点上对数据库的连接建立资源请求队列,资源请求队列为一个被单个节点上所有数据划分共享的后端队列,数据划分处理的请求需要连接数据库进行读写操作时,将连接请求发送到该后端队列中等待;
    4、数据划分系统运行时在系统范围内通过监控所有划分请求队列和资源请求队列来计算负载,所选择的负载指数称为预计延迟,其计算方式为某一队列的队列长度与出队列速度之商,是某一请求从进入该队列到出队的预计延迟时间;
    5、局部负载均衡在单个物理节点内进行,位于每个节点上的局部监视器周期性不断监视、计算与刷新划分请求队列的预计延迟作为每个数据划分的负载,当一个节点上最低负载和最高负载数据划分的预计延迟比值和高负载数据划分请求队列长度都超过预定义的阈值,并且高负载数据划分请求队列的入队速度大于出队速度,负载将继续升高,则启动局部负载均衡算法,将高负载数据划分上的部分基本数据单元移动到负载最低的数据划分;
    6、全局负载均衡在所有物理节点间进行,全局监视器负责监视不同节点上的资源请求队列,计算并且周期性刷新预计延迟的值作为每个节点的负载,当检测到最低负载和最高负载节点的预计延迟比值和高负载节点资源请求队列长度都超过预定义的阈值,则从高负载节点移动一定数量的数据划分到低负载节点;
    7、数据划分系统运行时,位于每个节点上的局部监视器同时监视并计算划分请求队列和资源请求队列的预计延迟,并计算当前平均每个请求从进入系统到处理完毕的预计等待时间,若考虑是否需要增加数据划分,再次计算增加一个数据划分时平均每个请求的预计等待时间,若预计等待时间减少,则增加数据划分的个数,若预计等待时间增加,则不增加数据划分,考虑是否需要减少数据划分时亦然。
    由上可知,对数据划分系统存储于数据库表中的业务数据,根据表的字段寻找划分关键字,再利用划分关键字对数据库表进行横向划分,使得划分后的基本数据单元具有唯一性,这种横向划分主要是一种概念上的划分,从物理划分的角度看一般并不能够完全划分数据库,只能够对部分表进行划分,划分得到基本数据单元后对其的分配需要先确定数据划分的数量,再均匀地划归到各个数据划分。
    每个数据划分作为一个独立的进程部署到各个物理节点,然后加载相关数据到本地节点内存中以提高性能,每个数据划分加载的数据是其所对应的基本数据单元的相关数据,如果是物理上能够被划分的表数据,则可以加载相关的一部分,反之则加载整张数据库表或者选择不加载。
    下面结合附图和实例对本发明作进一步介绍:
    图3指出基本数据单元的逻辑划分与持久层数据库之间的关系,具体例子如下:
    1.在数据库表中寻找划分关键字,将属性1确定为划分关键字;
    2.逻辑上属于同一个划分关键字的数据被划分到对应基本数据单元;
    3.根据实际系统及物理节点数量确定数据划分的数量,将基本数据单元均匀地分配到各数据划分,每个数据划分只处理所对应的部分数据库数据;
    图4指出基于数据划分的分布式架构,具体如下:
    1.外部应用(网页服务器或者客户端软件)与系统的接口是一个具有调度功能的请求分发器,通过网络与两个或多个物理节点连接,节点上部署着一定数量的数据划分;
    2.物理节点后端通过网络和存储系统相连,一般为数据库;
    3.每个物理节点上的数据划分都作为独立的进程并行运行;
    4.每个划分拥有唯一的请求队列,请求分发器将到达的请求按照其所属划分分发到对应的划分请求队列,数据划分从这个队列中获取任务;
    5.对于物理节点上的所有资源,如线程池(可视为CPU资源)、磁盘或连接后端数据库系统的连接池资源,都存在请求队列,称之为资源请求队列。
    图5指出划分请求队列和资源请求队列之间的关系,具体如下:
    1.针对系统实际情况选取恰当的稀缺资源,如数据库连接,建立资源请求队列,该队列为先进先出(FIFO);
    2.为每一个数据划分建立划分请求队列(FIFO);
    3.划分请求队列和资源请求队列主要维护于内存中,可定时备份防止丢失;
    4.数据划分处理队列中的请求时,将会频繁访问稀缺资源,即资源请求队列不断有请求入队;
    5.从队列中可测量得到的量有:队列长度、入队速度、出队速度(即队列处理其中请求的速度);可以计算的量有预计延迟(队列长度/出队速度)。
    图6指出进行局部负载均衡的流程,具体如下:
    1.      将所有的划分按照预计延迟(负载)按降序排序,负载最高的划分记作,其负载记作,负载最低的划分记作,其负载记作;
    2.      当满足条件:
    (1)划分与划分负载的比值小于阈值(一个可配置的参数);
    (2)划分请求队列的入队列速度大于出队列速度,则:
    3.      从划分中移动足够多的基本数据单元到划分,其具体步骤如下:
    (1)    计算划分每个基本数据单元的访问频率Request_Feq;
    (2)    计算划分所有数据单元访问频率之和Total_Request_Feq;
    (3)    在划分的所有基本数据单元中选取一个最大子集BDUset,使其满足:
    ;
    (4)    将集合BDUset中的基本数据单元及属于它们的请求移动到划分。
    图7指出进行全局负载均衡的流程,具体如下:
    1.      将所有的节点按照预计延迟(负载)按降序排序,负载最高的节点记作,其负载记作QUOTE  ,负载最低的节点记作 QUOTE  ,其负载记作; QUOTE 
    2.      当满足条件:
    (1)    节点 QUOTE  资源请求对列的长度大于某一阈值(可配置参数);
    (2)    节点与节点负载的比值小于阈值(一个可配置的参数);
    (3)    节点请求队列的入队列速度大于出队列速度,则:
    3.      从节点移动足够多的划分到节点,其具体步骤如下:
    (1)    计算节点每个划分的访问频率Request_Feq;
    (2)    计算节点 QUOTE  所有划分访问频率之和Total_Request_Feq;
    (3)    在节点的所有划分中选取一个最大子集PARTITIONset,使其满足:
    ;
    (4)    将集合PARTITIONset中的划分及属于它们的请求移动到节点。
    图8指出提高局部资源利用率的流程,具体如下:
    1.      当系统负载均衡时,位于节点的局部监视器得到划分请求队列和资源请求队列的平均队列长度、,平均出队列速度、;
    2.      假设增加一个划分达到负载均衡之后,每个划分对于资源作为生产者在短时间内不变,资源请求队列的长度将增长到。计算此时新到达系统的请求在队列中的等待时间增加量为:
    ;
    3.      假设减少一个划分达到负载均衡之后,每个划分对于资源作为生产者在短时间内不变,资源请求队列的长度将增加到。计算此时新到达系统的请求在队列中的等待时间增加量为:
    ;
    4.      当时,则增加一个划分;时,则减少一个划分以减少整体的队列等待时间;
    增加或减少划分之后,启动局部负载均衡算法以达到局部负载均衡。

    关于本文
    本文标题:对数据划分分布式环境实现动态划分和负载均衡的方法.pdf
    链接地址://www.4mum.com.cn/p-5865964.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
  • 博彩娱乐维护 山西11选5走势图推荐号 10bet娱乐平台 沙拉店 赚钱 福建22选5头奖多少钱 山东十一选五杀号 宁夏捉鸟鸟麻将打法 黄金城棋牌 ag真人游戏 万赢彩票游戏 陕西快乐10分选号交流 3d杀组选复式投注技巧 合买彩票的广告 网上彩票投注app 浙江十一选五开奖号 元游通比牛牛