网格计算

2025年3月17日 | 阅读 15 分钟

网格计算(grid computing)是指为了实现共同的目标而采用广泛分散的系统策略。计算网格可以被认为是一个由相互关联的文件和非交互式活动组成的去中心化网络。网格计算与传统的强大计算平台(如集群计算)不同,传统平台中的每个单元都致力于特定的功能或活动。网格计算机也比集群机器更多样化、空间分布更广,并且没有物理连接。然而,一个特定的网格可能会被分配到一个统一的平台,并且网格经常用于各种目的。通用网格网络应用程序包经常用于创建网格。网格的规模可能非常庞大。

Grid Computing

网格是去中心化的网络计算,其中一个“超级虚拟计算机”由多个松散耦合的设备组成,这些设备协同工作以完成大规模操作。分布式或网格计算是一种并行处理,它通过传统的网络连接(如 以太网)将完整的设备(带有板载 CPU、存储、电源、网络连接等)连接到网络(专用或公共),用于特定应用程序。这与传统的量子计算机概念不同,后者由通过本地高级通用串行总线连接的多个核心组成。这种技术已被企业用于药物开发、市场分析、地震活动以及电子商务和在线服务的后端数据管理等应用。它已被用于通过志愿者计算机技术来解决计算密集型研究、数值和教育难题。

网格计算将来自众多组织部门的机器汇集在一起,以实现类似的目标,例如完成一项工作,然后迅速消失。网格可以缩小到公司内的一组计算机终端,例如涉及多个组织和系统的可访问联盟。“有限网格也可以称为节点内协作,而更大、更广泛的网格可以称为节点间协作”。

管理网格应用程序可能很困难,尤其是在处理远程计算资源之间的数据流时。网格排序系统是一种工作流自动化软件的组合,它专门用于在网格环境中构建和执行一系列数学或数据修改过程或序列。

网格计算历史

在 20 世纪 90 年代初,术语“网格计算”被用作一种比喻,将计算能力像电力网络一样易于获取。

  • Ian FosterCarl Kesselman 发表了他们的里程碑式文章《网格:新计算基础设施蓝图》时,可扩展计算的电力网格类比立即成为经典(1999 年)。网格计算的概念(1961 年)在此之前就已经存在了几个世纪:计算作为一种公用事业服务,类似于电信网络。
  • 芝加哥大学的 Ian FosterSteve Tuecke 以及南加州大学计算机科学研究所的 Carl Kesselman 汇集了网格的概念(包括并行开发、面向对象开发和在线服务)。这三位被广泛认为是“网格之父”,因为他们发起了建立 Globus Toolkit 的倡议。该工具包包括内存维护、安全提供、信息传输、监控以及用于构建依赖于同一平台的额外服务的工具集,例如合同结算、通知系统、触发函数和分析表达式。
  • 尽管 Globus Toolbox 保持着构建网格系统的事实标准,但已经开发了一些潜在技术来解决构建全球或商业网格所需的部分功能。
  • “云计算”这个术语在 2007 年变得流行起来。它被设想为对网格计算(其中计算资源像电力一样被消耗)和早期效用计算的标准性描述。网格计算经常(但并非总是)与云计算环境的供应相关联,正如 3tera 的 AppLogic 所证明的那样。

总之,“分布式”或“网格”计算依赖于完整的计算机系统(带有导航 CPU 核心、存储、电源单元、网络连接等),通过传统的网络连接连接到网络(个人、社区或万维网),从而利用现有硬件,而不是设计和开发少量定制超级计算机的低容量。根本的性能缺点是多个 CPU 和本地存储设施之间缺乏高速连接。

网格计算的关键组成部分

  • 资源:网格计算基于各种计算资源集,包括字符 PC 系统、集群、统计存储结构和专用硬件。这些资源可能分布在多个位置,并由特定公司维护。
  • 中间件:中间件是连接和管理网格内资产的软件层。它提供重要的通信、安全和调度服务,以实现不同资源和程序之间的无缝协作。中间件对于协调网格内的任务和数据交换至关重要。
  • 用户界面:网格计算系统通常提供一个客户友好的界面,允许用户提交计算任务,管理数据,并监控作业进度。该界面抽象了网格基础设施的底层复杂性。
  • 安全:网格计算需要强大的安全措施来保护数据和资源。访问控制、文件加密和身份验证机制对于确保网格中数据的完整性和机密性至关重要。

网格计算的优势

  1. 高性能:网格计算利用多个资源的集体力量,能够比单台设备更快地执行计算密集型任务。
  2. 资源共享:它允许组织和机构共享计算和存储资源,减少了对冗余基础设施的需求,并优化了资源利用。
  3. 可扩展性:网格可以轻松扩展以处理不断增长的工作负载和数据量,通过将更多资产添加到网络来实现。
  4. 成本效益:网格计算可能是一种成本效益高的解决方案,因为它消除了企业购买和维护自己的超级计算机或数据中心的需要。
  5. 协作:网格促进了地理上分散的组织之间的协作,使得更容易进行联合研究项目或共享数据和计算资源。

网格计算的应用

  1. 科学研究:网格计算广泛应用于物理学、天文学和生物学等领域,用于研究复杂数据、模拟实验和解决复杂的数学问题。
  2. 数据分析:企业和研究机构使用网格计算处理数据密集型任务,如数据挖掘、金融建模和天气预报。
  3. 分子建模:网格计算通过模拟分子相互作用和分析化学物质来帮助药物发现。
  4. 工程和模拟:网格被用于工程领域,以运行设计优化、应力测试和流体动力学分析的模拟。
  5. 灾害预测和管理:网格计算可以帮助分析来自传感器和卫星等各种资源的数据,以预测自然灾害并管理应急响应工作。

网格计算的挑战

  • 资源异构性:管理具有不同硬件、软件应用程序和配置的大量资源可能很复杂。
  • 数据传输和存储:由于网络障碍和统计一致性问题,跨网格移动大量数据可能成为瓶颈。
  • 安全问题:在分布式环境中确保数据和资源的安全性是一项重大挑战。
  • 可扩展性:随着网格的增长,维护有效的协调和资源分配变得更加困难。
  • 标准化:为网格计算制定和遵守标准对于互操作性和无缝资源共享至关重要。

网格与超级计算机的比较

总之,“分布式”或“网格”计算机处理依赖于完整的台式机(带有内置处理器、备份、电源单元、网络设备等),通过传统的接入点连接到网络(专用、公共或互联网),从而产生嵌入式系统,而不是设计和构建少量修改后的强大计算机的低能耗。相关的性能缺点是多个 CPU 和区域存储设施之间缺乏高速链接。

这种配置非常适合可以独立执行各种并发计算而无需在处理器之间通信错误值的情况。由于与开放网络的功耗相比,单元之间的连接需求较低,因此地理上分散的网格的高端可扩展性通常是有益的。有各种编码和 MC 变体。

编写能在 超级计算机 上运行的程序可能很昂贵且具有挑战性,超级计算机可能具有专用版本的 Windows 或需要应用程序来解决并行性问题。如果一个任务可以被适当分配,一个“瘦”的“网格”架构外壳可以使传统的、独立的代码在多台机器上运行,每台机器解决同一问题的不同部分。这减少了同时运行相同代码的多个版本在相似的共享处理和磁盘区域中运行而引起的问题,从而可以在一台传统系统上进行编写和调试。

差异和架构限制

集成网格可以整合来自一个或多个个人或组织(称为多个管理域)的计算资源。这可以促进交易,例如计算服务或慈善计算机科学。

此功能的一个缺点是执行方程的机器可能不完全可靠。因此,设计工程师必须包含预防措施,以防止错误或恶意响应者生成虚假、歪曲或不正确的结果,以及使用该框架作为入侵的变量。这通常需要不定期地将任务分配给多个节点(假设有多个所有者),并确保至少有两个端点报告提供同一工作组的解决方案。不一致会暴露功能失调或恶意的网络。

由于设备缺乏中央控制,因此无法确保端点不会在任意时间退出连接。在不可预测的长时间内,某些节点(如工作站或拨号在线订阅者)可能可用于处理,但不可用于基础设施技术。通过分配大型工作组(从而降低了对持续互联网连接的需求)并在某个站点拒绝在指定时间内披露其输出时重新分配工作组,可以补偿这些差异。

在网格计算的早期,一系列社会接受度问题还包括网格研究人员希望将技术扩展到高能物理学等其他领域,远远超出最初的高级计算领域。

信任度和可访问性对持续质量改进复杂性的影响,可以决定是选择某个专门的复杂系统、创建组织内的空闲工作站,还是选择一个不受限制的业余爱好者或分包商的外部网络。在许多情况下,网络设备必须相信中央系统不会利用通过篡改其他应用程序的功能、损坏存储数据、发送个人信息或引入新的安全漏洞而获得的访问权限。其他系统使用虚拟机等技术来限制“客户端”节点必须对中央计算机的信任程度。

跨组织部门的公共系统(例如同一公司内不同部门使用的系统)通常需要使用具有不同操作系统和硬件配置的嵌入式设备。应用程序开发和可维护的系统数量(以及由此产生的网络大小)之间存在许多程序上的权衡。跨平台语言可以缓解这种妥协的要求,但存在在任何特定节点上牺牲良好性能的风险(由于运行时解释或缺乏针对特定平台的优化)。几个网络项目已经开发了通用架构来观察频率研究和商业企业,以利用专门关联的网格或建立新的网格。BOINC 是一个流行的平台,供寻求公众参与的研究项目使用;文章后面提供了一些其他选项。

总而言之,一个系统可以被视为设备和软件之间的表面。许多创新领域都需要中间件,而且这些可能不是实体框架独立的。SLA 管理、可信度、虚拟组织管理、许可证管理、接口和信息管理只是其中的一些例子。这些基本主题可以在商业解决方案中得到解决,但每个主题的工作主要是在独立的研究项目中遇到的,这些项目正在调查该领域。

网格计算市场细分

在细分网格计算市场时,需要考虑两个视角:供应商领域和消费者端

1. 供应商的观点

整个网格市场由各种子市场组成。网格中间件行业、频率调节市场、云计算技术市场以及 SaaS(软件即服务)市场是这些市场的例子。

网格中间件是一种软件包,允许共享不同的资源和虚拟组织。它被部署并集成到相关行业或公司的现有基础设施中,在异构基础设施和指定应用程序之间提供一个专业的层。Globus Toolkit、gLiteUNICORE 是三个主要的网格中间件。

效用计算提供网格计算和应用程序,作为开放的网格效用或为单一公司或虚拟组织提供托管解决方案。IBM、Sun Microsystems 和 HP 是网格计算领域的主要参与者。

支持网格的应用程序是能够利用能源基础设施的软件程序。如前所述,通过使用网格技术可以实现这一点。

“由一个或多个供应商维护、供应和远程控制的软件”就是软件即服务(SaaS)。(来源:Gartner,2007 年)此外,SaaS 项目是使用少量程序和数据需求开发的。它们以一对多的模式访问,SaaS 使用按使用付费(PAYG)或基于使用量的订阅系统。SaaS 供应商通常不是控制运行其服务所需的计算能力的人。因此,SaaS 供应商有可能利用效用计算市场。对于 SaaS 公司来说,效用计算领域提供计算能力。

2. 消费者方面

不同的类别对企业在网格计算市场的消费或消费者方面的 IT 部署策略具有重要影响。潜在的网格消费者应考虑 IT 部署方法以及所投资的 IT 资金类型,因为这两者都是网格接受的关键因素。

网格计算的背景

在 20 世纪 90 年代初,“网格计算”一词被用作一种概念,用于将计算复杂性变得像电力网络一样易于获取。当 Ian FosterCarl Kesselman 发表了他们的里程碑式研究《网格:新计算基础设施蓝图》时,可广泛计算的电力网络类比立即成为经典(1999 年)。计算服务(1961 年)的类比在此之前就已存在几十年:计算作为一种公共实体,类似于电话系统。

Distributed.net 和 SETI@home 分别在 1997 年和 1999 年普及了 CPU 搜集和志愿计算,以利用全球互联 PC 的力量来讨论 CPU 密集型研究课题。

芝加哥大学的 Ian FosterSteve Tuecke 以及南加州大学先进研究中心的 Carl Kesselman 汇集了网格的概念(包括云应用、面向对象计算和在线服务)。这三位被广泛认为是“网格之父”,因为他们领导了建立 Globus Framework 的倡议。虽然 Globus Toolbox 仍然是构建网格系统的标准,但已经开发了许多替代技术来解决建立全球或商业网格所需的一些功能。内存控制、安全提供、数据传输、监控以及用于构建依赖于类似基础设施的额外服务的工具集,例如合同结算、警报系统、触发事件和分析表达式,都包含在该工具包中。

“云计算”一词在 2007 年变得流行起来。它在概念上与经典的 Foster 对网格计算的描述(其中计算资源被部署,就像从电网消耗能量一样)以及早期的效用计算相关。网格计算经常(但并非总是)与云计算环境的供应相关联,正如 3tera 的 AppLogic 技术所证明的那样。

CPU 作为搜集器

在一个成员系统中,CPU 搜集、周期搜集或共享计算会从(全球或组织内部的)过剩容量中产生一个“网格”。通常,这种策略利用了周期性不活动产生的“空闲”指令单元,例如在夜间、午餐休息时间,或在台式工作站 CPU 在白天遇到的(非常短暂但频繁的)不活动等待期间。实际上,除了直接的计算资源外,贡献的机器还提供一些磁盘存储容量、RAM 和通信带宽。

BOINC 等许多志愿者计算项目都使用 CPU 搜集模型。此模型必须开发用于处理这种情况,因为节点可能会不时“离线”,因为其所有者将资源用于其主要目的。

建立机会生态系统,也称为工业计算机网格,是另一种计算方法,其中定制的任务管理解决方案收集未占用的台式机和笔记本电脑,用于计算密集型工作负载。例如,HTCondor 是一个可访问、功能强大的计算功能,用于对计算密集型任务进行低等级的分布式合理化,它可以仅使用鼠标和键盘处于非活动状态的计算机设备,从而能够成功地利用否则处于非活动状态的桌面工作区的浪费的 CPU 功率。

与所有打包批处理过程一样,HTCondor 包括任务队列系统、调度策略、优先级方案、容量跟踪和战略规划。它可以处理专用机器集群上的需求,或将专用资源(机架式集群)和非专用台式机(周期搜集)平滑地融合到一个单一的桌面环境中。

最快的虚拟超级计算机

  • BOINC - 截至 2020 年 4 月 7 日为 29.8 PFLOPS。
  • Folding@home - 截至 2020 年 3 月为 1.1 exaFLOPS。
  • Einstein@Home - 截至 2018 年 2 月为 3.489 PFLOPS。
  • SETI@Home - 截至 2020 年 4 月 7 日为 1.11 PFLOPS。
  • MilkyWay@Home - 截至 2020 年 4 月 7 日为 1.465 PFLOPS。
  • GIMPS - 截至 2019 年 3 月为 0.558 PFLOPS。

此外,比特币社区截至 2019 年 3 月的计算能力约为 80,000 exaFLOPS(每秒浮点运算次数)。

由于比特币网络(比特币挖矿 ASIC)的元素只执行比特币协议所需的特定加密哈希计算,因此此测量反映了比特币网络哈希输出所需的 FLOPS 数量,而不是其通用浮点运算操作的能力。

当今的应用和项目

网格是充分利用一个组织的信息技术系统的一种方式。网格计算赋能 CERN 的大型强子对撞机,并解决蛋白质功能、财务规划、地震预测和环境建模等挑战。它们还允许将信息技术作为一种商品提供给企业和非政府客户,后者仅为他们所消费的付费,类似于能源或水的供应方式。

截至 2016 年 10 月,国家社区网格拥有超过 400 万个工作站,使用了可用的伯克利公共网络计算倡议(BOINC)技术。SETI@home 是使用 BOINC 的程序之一,截至 2016 年 10 月,它雇佣了超过 400,000 台机器,达到了 0.828 TFLOPS。Folding@home,与 BOINC 无关,截至 2016 年 10 月,已在超过 110,000 台计算机上达到了超过 101 x86 等效 petabytes。

这些活动由欧元区通过欧盟委员会的基础倡议赞助。欧盟委员会在第六框架(FP6)资助计划下资助了 BEinGRID(网格中的商业实验)作为一个综合项目。该项目于 2006 年 6 月 1 日启动,于 2009 年 11 月结束,持续了 42 个月。Atos Origin 负责项目的协调。根据项目事实页面,“建立有效的途径来支持整个欧盟的网格计算,并将创新推向利用网格技术的创新营销策略。”两位专家审查了多个原型,一个技术原型和一个商业原型,以确定试验解决方案的最佳实践和共性。该项目不仅因其长期而重要,也因其支出而重要,其支出是 FP6 综合方法中最高的,达 2480 万欧元。

欧盟委员会出资 1570 万欧元,其余资金来自 98 个参与的联盟合作伙伴。自项目终止以来,BEinGRID 的成就已被 IT-Tude.com 采纳并继续推进。自项目终止以来,BEinGRID 的成就一直被 IT-Tude.com 采纳并继续推进。

“科学网格赋能”计划是欧洲数据网格(EDG)的延伸,并发展成为欧洲电力网格。它位于欧盟,包括亚洲和美国。这包括 LCG(大型强子对撞机计算网格),旨在支持 CERN 大型强子对撞机的研究。在这里,您可以找到当前 LCG 位置的列表,并实时监控 EGEE 基础设施。普通公众也可以获得基本的工具和信息。CERN 为满足 LCG 的统计需求而建立的专用光纤线路等专用光纤线路,有一天可能可供家庭用户使用,使他们能够以比普通光纤连接快 10,000 倍 30% 的速度访问互联网。

1997 年,distributed.net 项目启动。NASA 先进超级计算设施(NAS)使用 Condor 周期搜集器在约 350 台 Sun Microsystems 和 SGI 计算机上执行进化算法。

2001 年,United Technologies 运行了通用技术癌症研究项目,该项目利用其 Grid MP 技术在连接到互联网的参与者 PC 之间进行轮换。在 2007 年关闭之前,该项目已运行 310 万台计算机。


下一个主题Aneka 在云计算中