基于维度的负载平衡制造技术

技术编号:14677832 阅读:93 留言:0更新日期:2017-02-22 10:09
一种方法包括:接收分区,基于通过不同指派试探法确定的维度的维度值来生成用于将分区指派到服务器的指派计划,基于根据所述指派计划来分析所述维度值来选择所述指派计划中的一个指派计划以供执行,以及在可伸缩存储上执行被选择的指派计划。另一种方法包括:对于在一维度上被过度利用的服务器的被触发的优化模块,针对被指派给所述服务器的分区选择候选操作,对于比被触发的优化模块更高优先级的优化模块,从所述候选操作中移除将削弱可伸缩存储的被建模的状态的候选操作,确定所述候选操作中将改善所述可伸缩存储的关于所述服务器上的所述维度的度量的被建模的状态的操作,以及在所述可伸缩存储上执行所述操作。

【技术实现步骤摘要】
【国外来华专利技术】专利技术背景包括服务器农场、web服务等的分布式系统对于提供诸如计算和存储资源等资源已变得日益常见。资源可由作为可伸缩系统的一部分的服务器网络提供,以便对遍及该网络的数据进行更高效的存储、检索和查询。可能期望将工作负载跨各服务器分布,以便优化资源使用、最大化吞吐、最小化响应时间、避免这些服务器之一的过载、和/或实现其它负载平衡目标。然而,由于现代分布式系统的复杂性,有效且高效地管理和实现负载平衡目标可能是充满挑战的。专利技术概述本公开部分涉及对可伸缩存储进行负载平衡,基本上如在至少一个附图中所示和/或结合至少一个附图所描述的,并且如在权利要求书中更完整地阐述的。本公开的实现可提供利用维度的负载平衡,其中每个维度可对应于可伸缩存储的一个或多个资源。用于负载平衡的一个或多个途径可被实现。在一些实现中,负载平衡逻辑可在不同途径之间进行选择。在其它实现中,所述途径中仅一个途径可被采用。在一个示例性途径中,用于负载平衡的框架包括多个优化模块。该多个优化模块包括用于针对负载平衡优化可伸缩存储的优化例程。优化例程可被用来选择一个或多个负载平衡操作,其可进一步用于负载平衡的优化模块的优化目标。所述优化模块中的一个或多个可包括与关于维度进行负载平衡相对应的优化目标。作为另一示例,不同优化模块可包括彼此不同的优化目标,其中每个优化目标对应于关于一个或多个维度的负载平衡。优化模块可包括触发条件,该触发条件可被用于触发相应的优化例程。而且,优化模块可相对于彼此具有优先级。被触发的优化模块的优化例程可将这些优先级纳入考虑。例如,优化例程可遵从更高优先级的优化模块。此外,优化例程可考虑更低优先级的优化模块。从而,可利用优先级来针对被优化例程实现的优化目标建立层次结构。优化例程可利用评估得分,该评估得分针对相应的优化模块的优化目标来量化可伸缩存储的被建模的状态。因此评估得分可被用来针对优化目标表征负载平衡操作,而无需执行所述负载平衡操作。例如,负载平衡操作可被表征为正在缩减、正在改善、或基本维持可伸缩存储的被建模的状态。从而,评估得分可在优化例程中被用来通过考虑被触发的优化模块以及其它优化模块来过滤负载平衡操作。在另一示例性途径中,接收用于指派到所述可伸缩存储的服务器的分区。所述分区可具有维度的分区值,其中所述维度中的每个维度对应于所述可伸缩存储的一个或多个资源。可生成用于将所述分区指派给服务器的指派计划。所述指派计划是通过不同的指派试探法确定的,这导致不同的指派计划。基于分析所述指派计划的维度值来选择被生成的指派计划之一以供在可伸缩存储上执行,维度值可包括分区值和/或服务器值。提供本概述以便以简化的形式介绍将在以下的详细描述中进一步描述的一些概念。本概述并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于孤立地帮助确定所要求保护的主题的范围。附图说明在下面参考发土详细地描述了本公开的实现,在附图中:图1是适于在本公开的各实现中使用的示例性计算环境的图示;图2示出其中可采用本公开的实现的示例性系统;图3描绘其中可采用本公开的实现的示例性负载平衡框架;图4描绘了根据本公开的实现的用于对可伸缩存储进行负载平衡的示例性方法的流程图;图5描绘了根据本公开的实现的用于对可伸缩存储进行负载平衡的示例性方法的流程图;图6描绘了根据本公开的实现的用于对可伸缩存储进行负载平衡的示例性方法的流程图。图7描绘其中可采用本公开的实现的示例性负载平衡系统;图8描绘了根据本公开的实现的用于对可伸缩存储进行负载平衡的示例性方法的流程图;图9描绘了根据本公开的实现的用于对可伸缩存储进行负载平衡的示例性方法的流程图;图10描绘了根据本公开的实现的用于对可伸缩存储进行负载平衡的示例性方法的流程图;以及图11描绘了根据本公开的实现的用于对可伸缩存储进行负载平衡的示例性方法的流程图。专利技术详细描述此处用细节来描述本专利技术的各实施例的主题以满足法定要求。然而,该描述本身并非旨在限制本专利的范围。相反,专利技术人已设想所要求保护的主题可结合其它当前或未来技术以其它方式来实施,以包括不同的步骤或类似于本文中所描述的步骤的步骤组合。此外,尽管术语“步骤”和/或“框”可在此处用于指示所采用的方法的不同元素,但除非而且仅当明确描述了各个步骤的顺序时,该术语不应被解释为意味着此处公开的各个步骤之中或之间的任何特定顺序。本公开部分涉及负载平衡可伸缩存储。在一个方面,本公开的实现提供了一种用于负载平衡的框架,该框架包括多个优化模块,该多个优化模块可被用来选择要在可伸缩存储上执行的一个或多个负载平衡操作。每个优化模块可具有关于负载平衡的优化目标,其可由优化例程来执行。优化例程可采用各种类型的优化函数。这些优化函数中的一些优化函数可以是因特定优化模块而异的,而其它优化函数可以是共享的。而且,优化例程可利用与其相应的优化模块不同的优化模块的优化功能,例如,以考虑该不同的优化模块的优化目标。该框架有利地允许高度可扩展的负载平衡逻辑,其中优化目标可被容易且高效地添加、移除或修改。参考图1,图1是适于在本公开的各实现中使用的示例性计算环境的图示。具体而言,示例性计算机环境被概括地示为并描绘为计算设备100。计算设备100只是合适的计算环境的一个示例,并且不旨在对本专利技术的使用范围或功能提出任何限制。也不应该将计算设备100解释为对所示出的任一组件或其组合有任何依赖性或要求。本公开的各实现可以在由计算机或诸如个人数据助理或其它手持式设备之类的其它机器执行的计算机代码或机器可使用指令的一般上下文中描述,该机器可使用指令包括诸如程序组件之类的计算机可执行指令。一般而言,包括例程、程序、对象、组件、数据结构等的程序组件指的是执行特定任务或实现特定抽象数据类型的代码。本公开的各实现可以在各种系统配置中实施,这些系统配置包括手持式设备、消费电子产品、通用计算机、专用计算设备等等。本公开的各实现也可以在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实现。继续参考图1,计算设备100包括直接或间接耦合以下设备的总线102:存储器104、一个或多个处理器106、一个或多个呈现组件108、输入/输出(I/O)端口110、I/O组件112、和电源114。总线102表示可以是一条或多条总线(诸如地址总线、数据总线、或其组合)。虽然为了清楚起见利用线条示出了图1的各设备,但是实际上,各组件的轮廓并不是那样清楚,并且比喻性地来说,线条更精确地将是灰色的和模糊的。例如,可以将诸如显示设备的呈现组件认为是I/O组件112之一。同样,诸如一个或多个处理器106等处理器具有存储器。本公开在此认识到这是本领域的特性,并重申,图1仅仅说明了可以结合本公开的一个或多个实现来使用的示例性计算环境。诸如“工作站”、“服务器”、“膝上型计算机”、“手持式设备”等分类之间没有区别,它们全部都被认为是在图1的范围之内并且被称为“计算机”或“计算设备”。计算设备100通常包括各种计算机可读介质。计算机可读介质可以是可由计算设备100访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。作为示例而非限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令本文档来自技高网...
<a href="http://www.xjishu.com/zhuanli/55/201580022004.html" title="基于维度的负载平衡原文来自X技术">基于维度的负载平衡</a>

【技术保护点】
一种用于对可伸缩存储进行负载平衡的计算机实现的方法,所述方法包括:接收用于指派到所述可伸缩存储的服务器的多个分区中的分区,所述分区具有维度的分区值,所述维度中的每个维度对应于所述可伸缩存储的一个或多个资源;生成用于将所述分区指派到所述服务器的指派计划,所述指派计划通过不同的指派试探法确定,其中对于所述指派计划中的给定指派计划,所述生成包括:使用一搜索次序迭代地搜索候选服务器以用于将所述分区中的至少一个给定分区指派给所述候选服务器,所述搜索次序是所述分区和所述服务器中的至少一者的次序,其中所述搜索次序是通过所述不同的指派试探法中与所述给定指派计划相对应的指派试探法确定的;在搜索所述候选服务器的迭代中选择所述候选服务器;以及将所述候选服务器添加到用于将所述分区指派到所述服务器的所述给定指派计划;基于根据所述指派计划中的所述指派来分析所述分区值来选择被生成的指派计划之一以供在所述可伸缩存储上执行;在所述可伸缩存储上执行所述指派计划中的被选择的指派计划。

【技术特征摘要】
【国外来华专利技术】2014.05.01 US 14/267,659;2014.06.16 US 14/305,9871.一种用于对可伸缩存储进行负载平衡的计算机实现的方法,所述方法包括:接收用于指派到所述可伸缩存储的服务器的多个分区中的分区,所述分区具有维度的分区值,所述维度中的每个维度对应于所述可伸缩存储的一个或多个资源;生成用于将所述分区指派到所述服务器的指派计划,所述指派计划通过不同的指派试探法确定,其中对于所述指派计划中的给定指派计划,所述生成包括:使用一搜索次序迭代地搜索候选服务器以用于将所述分区中的至少一个给定分区指派给所述候选服务器,所述搜索次序是所述分区和所述服务器中的至少一者的次序,其中所述搜索次序是通过所述不同的指派试探法中与所述给定指派计划相对应的指派试探法确定的;在搜索所述候选服务器的迭代中选择所述候选服务器;以及将所述候选服务器添加到用于将所述分区指派到所述服务器的所述给定指派计划;基于根据所述指派计划中的所述指派来分析所述分区值来选择被生成的指派计划之一以供在所述可伸缩存储上执行;在所述可伸缩存储上执行所述指派计划中的被选择的指派计划。2.如权利要求1所述的计算机实现的方法,其特征在于,所述搜索次序基于按照给定维度的分区值对所述分区排序。3.如权利要求1所述的计算机实现的方法,其特征在于,所述搜索次序基于按照给定维度的服务器值对所述服务器排序。4.如权利要求1所述的计算机实现的方法,其特征在于,包括将所述分区值标准化为概念上共用的尺度。5.如权利要求1所述的计算机实现的方法,其特征在于,在所述搜索的一次迭代中所述候选服务器对应于一个服务器,而在所述搜索的另一次迭代中,基于另一服务器具有用于所述被选择的分区的所述分区值中的所述至少一个分区值的更大的可用能力,所述候选服务器被更新至所述另一服务器。6.如权利要求1所述的计算机实现的方法,其特征在于,所述搜索包括所述服务器的二元搜索。7.如权利要求1所述的计算机实现的方法,其特征在于,选择被生成的指派计划之一包括将不同指派计划之间的服务器的维度值进行比较,所述维度值是从所述维度的分区值和服务器值中选择的。8.如权利要求1所述的计算机实现的方法,包括:分析所述多个分区的第一群组以...

【专利技术属性】
技术研发人员:A·E·绍尔斯沃德X·季J·王B·G·卡尔德R·B·哈利斯三世H·宋
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1