当前位置: 首页 > 专利查询>微软公司专利>正文

个人数据中心内的调度和管理制造技术

技术编号:7587356 阅读:230 留言:0更新日期:2012-07-20 18:06
本发明专利技术涉及个人数据中心内的调度和管理。这里描述了个人数据中心系统,该个人数据中心系统提供了用于在动态变化的环境中利用多个异构计算机的框架、以及用于执行各个任务的数据并行处理的自组织群集。家庭环境和典型的数据中心相比更为异构和动态,典型的数据中心调度策略对于这种类型的小型群集并不能很好地工作。家庭内的机器可能被开启或关闭、被移动并带到其他地方、并且通过具有有线和无线技术的混合的自组织网络拓扑结构来连接。个人数据中心系统提供了组件来克服这些差异。系统标识一个动态可用的机器集合、表征它们的性能、发现网络拓扑结构、并且监视机器间的可用通信带宽。该信息然后用来为数据并行和/或高性能计算(HPC)型的应用计算有效的执行计划。

【技术实现步骤摘要】

本专利技术涉及作业的调度和管理,尤其是个人数据中心内的调度和管理
技术介绍
日益常见的是,家庭拥有一个以上计算机,并且这些机器处于家庭网络上。这些计算机的每一个都有大量的计算能力、内存和存储容量。当前常用的操作系统使人们能很容易地使用本地机器的资源,但难以利用网络上其他机器的资源。因此,在运行计算密集的应用时,远程机器的CPU—般是空闲的,它们的内存也不可访问。类似地,在运行I/O密集的应用时,本地盘可以得到100 %的利用,但其他存储设备是空闲的。家庭计算需求日益增长。例如,视频编辑和代码转换日益常用,并且要花费若干小时来完成。即使对于高端家庭计算系统,要完成任务也花费长时间。另一方面,大多数家庭具有以台式计算机、膝上型计算机、家庭影院PC(HTPC)形式的多个计算机、以及包含诸如游戏控制台、移动电话和嵌入式设备之类的常见计算硬件的非传统计算设备(例如机顶盒、路由器和其他设备)。在数据中心设置中,分布式系统软件使其能跨多个存储设备传播数据,并且跨多个机器以并行方式运行计算。数据中心通常很同构,意味着每个机器具有类似的处理器、内存量、网络带宽和其他资源。数据中心中使用的调度算法一般是贪婪的并且不考虑机器差异,而是考虑调度时机器的数量和可用性。各个公司提供了用于向数据中心内的多个计算机传播作业执行的数据并行框架,诸如MICROSOFT TM Dryad,Google MapReduce和Yahoo ! Hadoop。这些中的一些还提供了工具集和编程语言来使并行计算更容易,诸如MICROSOFT TM DryadLINQ。类似的功能在家庭/个人设置中越来越有用,但是由于非均匀性、连接性、功率管理和软件版本/更新管理等问题而复杂得多。数据中心中有效的假设在家庭环境中完全无效。例如,家庭计算机在用户带着膝上型计算机或其他移动设备进入或离开居所时进入和离开。家庭计算机可以使用各种连接类型来进行联网,诸如在用户在居所范围内漫游时使用Wi-Fi连接、以及在用户和膝上型计算机对接时使用有线以太网连接。家庭计算机也可以休眠或者没电。最终,家庭计算机包括混杂的处理器、图形处理能力、内存量、磁盘空间、 磁盘速度等。这些差异导致分布式计算实际上不存在于家庭或其他小型群集设置中。
技术实现思路
这里描述了个人数据中心系统,该个人数据中心系统提供了用于在动态变化的环境中利用多个异构计算机的框架、以及用于执行各个任务的数据并行处理的自组织群集。 在一些实施例中,修改操作系统以提供分布式的文件系统抽象,以及允许对数据并行计算进行动态分割和远程执行的服务。每个系统的操作系统协作地度量和分析当前可用处理、 通信和存储资源的性能,并且利用该信息以最有效的方式跨多个机器分割计算。家庭环境和典型的数据中心相比更为异构和动态,典型的数据中心调度策略对于这种类型的小型群集并不能很好地工作。家庭内的机器可能被开启或关闭、被移动并带到其他地方、并且通过具有有线和无线技术的混合的自组织网络拓扑结构来连接。个人数据中心系统提供了组件来克服这些差异。系统标识一个动态可用的机器集合、表征它们的性能、发现网络拓扑结构、并且监视机器间的可用通信带宽。该信息然后用来为数据并行和/或高性能计算(HPC) 型的应用计算有效的执行计划。提供本
技术实现思路
以便以简化的形式介绍将在以下具体实施方式中进一步描述的一些概念。本
技术实现思路
并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。附图说明图I是示出在一个实施例中的个人数据中心系统的各组件的框图。图2是示出在一个实施例中,个人数据中心系统在小型、异构计算环境内提供并行处理的处理的流程图。图3是示出一个实施例中,个人数据中心系统收集关于可用计算资源的处理的流程图。图4是示出一个实施例中,个人数据中心系统在可用计算资源上调度作业的处理的流程图。具体实施例方式这里描述了个人数据中心系统,该个人数据中心系统提供了用于在动态变化的环境中利用多个异构计算机的框架、以及用于执行各个任务的数据并行处理的自组织群集。 在一些实施例中,修改操作系统以提供分布式的文件系统抽象,以及允许对数据并行计算进行动态分割和远程执行的服务。每个系统的操作系统协作地度量和分析当前可用处理、 通信和存储资源的性能,并且利用该信息以最有效的方式跨多个机器传播计算。分布式文件系统和群集计算服务一般部署在具有上千的相同机器、管理良好的基础设施、以及足够的通信带宽的数据中心中。机器确实偶尔会失败,但通常会连续地运行。由于全部机器被同一个人信任和拥有,因此安全不是大问题。相反,家庭环境就更为异构和动态得多。家庭内的机器可能被开启或关闭、被移动并带到其他地方、并且通过具有有线和无线技术的混合的自组织网络拓扑结构来连接。个人数据中心系统提供了组件来克服这些差异。系统标识一个动态可用的机器集合(处理器、存储器和存储)、(通过测量结果或通过查找数据库中的该信息)表征它们的性能、发现网络拓扑结构、并且监视机器间的可用通信带宽。该信息然后用来为数据并行和/或高性能计算(HPC)型的应用计算有效的执行计划。多个用户可拥有机器,并且因此安全性可能比在(全部机器在单一授权级别下运行)数据中心中更加相关,因为是资源的受控共享以提供差别服务质量(例如,坐在机器边的用户拥有比远程地访问机器资源的用户更高的优先权)。在某些实施例中,个人数据中心系统利用来自集群计算的现成软件和数据中心设置,诸如Dryad、DryadLINQjP TidyFS。 家中的每个机器运行提供远程进程执行和共享文件系统命名空间的服务进程。数据在多个机器上被复制,使得可以从最接近的副本对其访问,并且使得即时某些机器被断电它仍然是可用的。上面的软件可以用安全性来扩展以保护用户的数据免予其他人的访问、本地资源划分以及调度机制来实施QoS。另外,每个机器的OS运行对本地资源进行标识并制定基准、 并向中央数据库注册这些资源的服务。操作系统协作地发现相关的网络拓扑结构并测量可用的带宽。在某些实施例中,操作系统根据全局QoS考虑协作式地调度网络通信量。中央全局作业调度器接受来自任何参与的机器的作业,并且在给定当前可用资源集、当前作业集、 及其相关联的QoS参数的情况下标识划分计算的高效的方式。图I是示出在一个实施例中的个人数据中心系统的各组件的框图。系统100包括命名空间组件110、进程执行组件120、集群资源管理器130、资源标识组件140、基准组件 150、作业调度组件160、以及作业管理组件170。这些组件中的每一个都在此处进一步详细讨论。命名空间组件110管理多个计算机之间的共享文件系统命名空间。由于系统100 所处理的数据可被存储在个人数据中心中的多个计算机上,因此计算机使用共同的命名空间来引用可标识数据中心内任何位置的文件。命名空间可以像将计算机名追加到每个机器的文件系统命名空间那样简单(例如,\\laptop l\c\file. txt,用于访问名为“laptop I” 的机器上标记为“C”的驱动器的根的名为“file, txt”的文件),或者更复杂以处理问题,诸如相似的机器名、机器名重用、非传统的文件系统等。例如,命名空间组件110可向每个机器以及机器上的位置分配全局唯一标识符用于存本文档来自技高网
...

【技术保护点】

【技术特征摘要】
...

【专利技术属性】
技术研发人员:P·巴勒姆J·N·菲格罗亚
申请(专利权)人:微软公司
类型:发明
国别省市:

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

1
相关领域技术