Google Cloud Well-Architected Framework 中的可持续性核心提供了一些建议,可帮助您在 Google Cloud中设计、构建和管理节能且具有碳排放意识的工作负载。
本文档的目标受众群体包括在 Google Cloud中设计、构建、部署和维护工作负载的决策者、架构师、管理员、开发者和运维人员。
架构和运营决策会对云中工作负载带来的能耗、用水影响和碳足迹产生重大影响。无论是小型网站还是大规模机器学习模型,每项工作负载都会消耗能源,并导致碳排放和水资源强度增加。将可持续性融入云架构和设计流程后,您便可以构建高效、经济实惠且环境可持续的系统。可持续架构具有弹性且经过优化,可形成正向反馈循环,从而提高效率、降低成本并减少对环境的影响。
可持续发展的设计:全面的业务成果
可持续发展并非与其他核心业务目标相冲突, 可持续发展实践有助于加快实现其他业务目标。 优先考虑低碳资源和运营的架构选择有助于您构建更快、更便宜且更安全的系统。此类系统被认为是可持续设计,其中针对可持续性进行优化可带来性能、成本、安全性、韧性和用户体验方面的总体积极成果。
性能优化
针对性能进行优化的系统本身使用的资源较少。能够更快完成任务的高效应用需要计算资源的时间更短。因此,底层硬件消耗的千瓦时 (kWh) 能量更少。优化后的性能还可缩短延迟时间并改善用户体验。资源不会因等待低效的进程而浪费时间和精力。当您使用专用硬件(例如 GPU 和 TPU)、采用高效算法并最大限度地提高并行处理能力时,可以提升性能并减少云工作负载的碳足迹。
费用优化
云运营支出取决于资源使用量。由于这种直接相关性,当您持续优化费用时,还可以减少能源消耗和碳排放量。合理调整虚拟机大小、实施积极的自动扩缩、归档旧数据并消除闲置资源,可减少资源用量和云费用。此外,由于数据中心运行工作负载时消耗的能源更少,因此您还可以减少系统的碳足迹。
安全性和弹性
安全性和可靠性是打造可持续云环境的前提条件。被入侵的系统(例如,受到拒绝服务 [DoS] 攻击或未经授权的数据泄露影响的系统)可能会大幅增加资源消耗。这些事件可能会导致流量大幅飙升,产生失控的计算周期以进行缓解,并且需要长时间、高能耗的操作来进行取证分析、清理和数据恢复。强大的安全措施有助于防止资源使用量出现不必要的峰值,从而确保运营保持稳定、可预测且节能。
用户体验
优先考虑效率、性能、无障碍功能和最少数据使用量的系统有助于最终用户减少能源用量。如果应用加载的模型较小或处理的数据较少,从而能够更快地提供结果,则有助于减少网络设备和最终用户设备消耗的能量。这种能耗降低尤其有利于带宽有限或使用旧版设备的用户。此外,可持续架构有助于最大限度地减少对地球的危害,并表明您致力于打造具有社会责任感的技术。
迁移到云端的可持续发展价值
将本地工作负载迁移到云端有助于减少组织的碳足迹。与典型的本地部署相比,改用云基础架构可将能耗和相关排放量减少 1.4 到 2 倍。云数据中心是现代化的定制设计设施,旨在实现高能效 (PUE)。较旧的本地数据中心通常缺乏必要的规模,无法证明投资于先进的冷却和电力分配系统是合理的。
共担责任和命运
Google Cloud上的责任共担和共同命运体介绍了 Google 和客户(即您)如何共同承担云工作负载的安全责任。这种责任共担模式也适用于可持续发展。
Google 负责 Google Cloud的可持续性,这意味着我们数据中心、基础设施和核心服务的能效和水资源管理。我们不断投资于可再生能源、气候友好型冷却技术和硬件优化。如需详细了解 Google 的可持续发展战略和进展,请参阅 Google 可持续发展 2025 年环保报告。
客户您需要负责云端的可持续性,这意味着要优化工作负载以提高能效。例如,您可以合理调整资源大小、使用可缩放至零的无服务器服务,并有效管理数据生命周期。
我们还提倡“命运共同体”模式:可持续发展不仅是任务的划分,更是您与 Google 之间的协作伙伴关系,旨在减少整个生态系统的环境足迹。
利用 AI 提升业务成效
Well-Architected Framework 的可持续性核心(本文档)包含相关指南,可帮助您设计可持续的 AI 系统。不过,全面的可持续发展战略不仅要考虑 AI 工作负载对环境的影响,该战略应包括如何使用 AI 来优化运营并创造新的业务价值。
AI 可将海量数据集转化为可据以采取行动的真知灼见,从而成为可持续发展的催化剂。它能帮助组织从被动合规转变为主动优化,例如在以下方面:
- 运营效率:通过改进库存管理、优化供应链和智能能源管理来简化运营。
- 透明度和风险:使用数据实现精细的供应链透明度、法规遵从性和气候风险建模。
- 价值和增长:在可持续金融和再商业领域开发新的收入来源。
Google 提供了以下产品和功能,可帮助您从数据中获取数据洞见,并为可持续的未来构建相应的功能:
- Google Earth AI:使用全球级地理空间数据来分析环境变化并监控供应链影响。
- WeatherNext:提供高级天气预报和气候风险分析,帮助您增强应对气候波动性的能力。
- 利用 Google 地球获取地理空间数据洞见:使用地理空间数据为位置信息添加丰富的背景数据,从而实现更智能的选址、资源规划和运营。
- Google 地图路线优化:优化物流和配送路线,以提高效率并减少燃料消耗和运输排放。
与合作伙伴和客户协作
Google Cloud 和 TELUS 携手合作,通过将工作负载迁移到 Google 的碳中和基础设施并利用数据分析来优化运营,从而推进云可持续发展。通过智能城市技术等计划,这项合作可带来社会和环境效益。智能城市技术利用实时数据来减少加拿大各市区的交通拥堵和碳排放。如需详细了解此次合作,请参阅Google Cloud 与 TELUS 携手实现可持续发展。
核心原则
Well-Architected Framework 的可持续性核心中的建议与以下核心原则相对应:
- 使用消耗低碳能源的区域
- 优化 AI 和机器学习工作负载,以提高能效
- 优化资源使用,实现可持续发展
- 开发节能型软件
- 优化数据和存储空间,实现可持续发展
- 持续衡量和改进可持续性
- 倡导可持续发展文化
- 使可持续发展实践与行业准则保持一致
贡献者
作者:Brett Tackaberry | 首席架构师
其他贡献者:
- Alex Stepney | 首席架构师
- Daniel Lees | 云安全架构师
- Denise Pearl | 全球可持续发展营销主管
- Kumar Dhanagopal | 跨产品解决方案开发者
- Laura Hyatt | 客户工程师,FSI
- Nicolas Pintaux | 客户工程师,应用现代化改造专家
- Radhika Kanakam | Google Cloud Well-Architected Framework 项目主管
使用消耗低碳能源的区域
Google Cloud Well-Architected Framework 可持续发展核心中的这一原则提供了相关建议,可帮助您为 Google Cloud中的工作负载选择低碳区域。
原则概览
当您计划在 Google Cloud中部署工作负载时,一个重要的架构决策是为工作负载选择 Google Cloud 区域。此决策会影响工作负载的碳足迹。为了最大限度地减少碳排放,您的区域选择策略必须包含以下要素:
- 数据驱动型选择:如需确定区域并对其进行优先排序,请考虑
低二氧化碳指标和无碳能源 (CFE) 指标。
- 基于政策的治理:在组织政策服务中使用资源位置限制条件,将资源创建限制在环境最佳位置。
- 运营灵活性:使用时间偏移和碳感知调度等技术,在电网的碳排放强度最低的时段运行批处理工作负载。
用于为云端应用和工作负载供电的电力是影响您选择 Google Cloud 区域的重要因素。此外,还应考虑以下因素:
- 数据驻留和数据主权:您需要将数据存储在哪个位置是决定您选择 Google Cloud区域的基本因素。此选择会影响您是否符合当地的数据驻留要求。
- 最终用户的延迟时间:最终用户与应用部署区域之间的地理距离会影响用户体验和应用性能。
- 费用: Google Cloud 资源的价格可能因区域而异。
Google Cloud 区域选择器工具可帮助您根据对碳足迹、费用和延迟时间的要求选择最佳 Google Cloud 区域。您还可以使用 Cloud Location Finder 根据您对邻近性、无碳能源 (CFE) 使用情况和其他参数的要求,查找 Google Cloud 和其他提供商的云位置。
建议
如需在低碳区域中部署云工作负载,请考虑以下各部分中的建议。这些建议基于 Google Cloud 区域的无碳能源中的指南。
了解云区域的碳强度
区域中的Google Cloud 数据中心使用区域所在地的电网的能源。Google 会使用每小时计算一次的 CFE 指标来衡量某个区域的碳影响。CFE 表示每小时消耗的总能源中无碳能源所占的百分比。CFE 指标取决于两个因素:
- 在给定时间段内为电网供电的发电厂类型。
- 归因于 Google 的清洁能源,这些能源在相应时间段内输送到电网。
如需了解每个Google Cloud 区域的平均每小时 CFE% 汇总数据,请参阅 Google Cloud 区域的无碳能源。 您还可以从 GitHub 中的 Carbon free energy for Google Cloud regions 代码库和 BigQuery 公共数据集中获取机器可读格式的此数据。
在选址策略中纳入 CFE
请考虑以下建议:
- 为您的应用选择最干净的区域。如果您计划长时间运行应用,请在 CFE% 最高的区域运行该应用。对于批处理工作负载,您可以更灵活地选择区域,因为您可以预测工作负载必须运行的时间。
- 选择低碳区域。 Google Cloud 网站中的某些页面和 Google Cloud 控制台中的位置选择器会针对碳影响最低的区域显示
二氧化碳排放量低指示图标。
- 使用资源位置组织政策限制条件,将资源创建限制在特定的低碳 Google Cloud区域。例如,如需仅允许在美国境内的低碳区域创建资源,请创建一个指定
in:us-low-carbon-locations值组的限制条件。
为 Google Cloud 资源选择位置时,还应考虑选择区域的最佳实践,包括数据留存要求、最终用户延迟时间、应用冗余、服务可用性和价格等因素。
使用一天中的时间安排
电网的碳排放强度在一整天中可能会有很大差异。具体变化取决于为电网供电的能源组合。您可以安排工作负载(尤其是灵活或非紧急的工作负载)在电网由更高比例的 CFE 供电时运行。
例如,许多电网在非高峰时段或太阳能和风能等可再生能源向电网提供更多电力时,CFE 百分比会更高。通过在 CFE 较高的小时内安排计算密集型任务(例如模型训练和大规模批处理推理),您可以在不影响性能或费用的情况下显著减少相关碳排放量。这种方法称为时间偏移,即利用电网碳强度的动态特性来优化工作负载,从而实现可持续性。
优化 AI 和机器学习工作负载,以提高能效
Google Cloud Well-Architected Framework 的可持续性核心中的这一原则提供了一些建议,可帮助您优化 AI 和机器学习工作负载,以减少其能耗和碳足迹。
原则概览
如需优化 AI 和机器学习工作负载以实现可持续性,您需要采用一种整体方法来设计、部署和运行工作负载。选择合适的模型和专用硬件(例如张量处理单元 [TPU]),在低碳区域运行工作负载,优化以减少资源使用量,并应用运营最佳实践。
优化 AI 和机器学习工作负载的成本和性能的架构和运营实践本身就会减少能耗并降低碳足迹。Well-Architected Framework 中的 AI 和机器学习视角介绍了相关原则和建议,可帮助您设计、构建和管理 AI 和机器学习工作负载,以实现您的运营、安全、可靠性、成本和性能目标。此外,Cloud Architecture Center 还提供了 Google Cloud中 AI 和机器学习工作负载的详细参考架构和设计指南。
建议
如需优化 AI 和机器学习工作负载以提高能效,请考虑以下各部分中的建议。
使用 TPU 实现能效方面的架构设计
AI 和机器学习工作负载可能需要大量计算资源。AI 和机器学习工作负载的能耗是可持续发展方面的一项关键考虑因素。TPU 可显著提高 AI 和机器学习工作负载的能效和可持续性。
TPU 是定制设计的加速器,专门为 AI 和机器学习工作负载打造。TPU 的专用架构使其能够高效地进行大规模矩阵乘法运算,而这正是深度学习的基础。与 CPU 或 GPU 等通用处理器相比,TPU 可以更高效地大规模执行复杂任务。
TPU 可直接带来以下可持续发展方面的优势:
- 能耗更低:TPU 经过精心设计,可实现最佳能效。它们可实现更高的每瓦能耗计算量。其专用架构可显著降低大规模训练和推理任务的功耗,从而降低运营成本并减少能源消耗。
- 更快的训练和推理速度:TPU 的卓越性能让您可以在数小时内(而不是数天内)训练复杂的 AI 模型。总计算时间的大幅缩短直接有助于减少环境足迹。
- 降低了冷却需求:TPU 采用先进的液冷技术,可提供高效的散热管理,并大幅减少数据中心冷却能耗。
- 优化 AI 生命周期:通过集成硬件和软件,TPU 可在整个 AI 生命周期(从数据处理到模型服务)中提供优化的解决方案。
遵循 4M 资源选择最佳实践
Google 建议了一组最佳实践,可显著降低 AI 和机器学习工作负载的能耗和碳排放量。我们将这些最佳实践称为 4M:
- 模型:选择高效的机器学习模型架构。例如,与密集模型相比,稀疏模型可将机器学习质量提高 3-10 倍,同时将计算量减少 3-10 倍。
- 机器:选择针对机器学习训练进行优化的处理器和系统。与通用处理器相比,这些处理器的性能和能效可提高 2-5 倍。
- 机械化:在云端部署计算密集型工作负载。与本地部署相比,您的工作负载使用的能源更少,排放量也降低了 1.4 到 2 倍。云数据中心采用经过定制设计的新型仓库,专为优化能源效率而打造,具有较高的能效 (PUE) 比率。本地数据中心通常较陈旧且规模较小,因此投资于节能型冷却和电力分配系统可能并不经济实惠。
- 地图:选择 Google Cloud 使用最清洁能源的地点。 这种方法有助于将工作负载的总碳足迹减少 5-10 倍。如需了解详情,请参阅 Google Cloud 个区域的无碳能源数据。
如需详细了解 4M 最佳实践和效率指标,请参阅以下研究论文:
- 机器学习训练的碳足迹将趋于平缓,然后逐渐缩小
- The data center as a computer: An introduction to the design of warehouse-scale machines, second edition
优化 AI 模型和算法以进行训练和推理
AI 模型的架构以及用于训练和推理的算法对能耗有显著影响。请考虑以下建议。
选择高效的 AI 模型
选择更小、更高效且符合性能要求的 AI 模型。请勿选择最大的可用模型作为默认选择。例如,较小的精简模型版本(如 DistilBERT)与 BERT 等较大模型相比,可以提供类似的性能,但计算开销明显更低,推理速度也更快。
使用特定于网域的超高效解决方案
选择专门的机器学习解决方案,这些解决方案可提供更好的性能,并且所需的计算能力远低于大型基础模型。这些专业化解决方案通常经过预训练和超优化。它们可以显著降低训练和推理工作负载的能耗和研究工作量。以下是特定于领域的专业化解决方案的示例:
- Earth AI 是一种能效出色的解决方案,可合成大量全球地理空间数据,从而提供及时、准确且富有实用价值的分析洞见。
- 与传统的基于物理的方法相比,WeatherNext 可生成更快、更高效且高度准确的全球天气预报。
应用适当的模型压缩技术
以下是一些可用于模型压缩的技术示例:
- 剪枝:从神经网络中移除不必要的参数。这些参数对模型性能的贡献不大。此技术可减小模型的大小,并减少推理所需的计算资源。
- 量化:降低模型形参的精度。例如,将精度从 32 位浮点数降低到 8 位整数。此技术有助于显著减少内存占用和功耗,而不会明显降低准确率。
- 知识蒸馏:训练较小的学生模型,以模仿较大、更复杂的教师模型的行为。学生模型可以使用更少的形参和更少的能量来实现高水平的性能。
使用专用硬件
如遵循 4M 最佳实践来选择资源中所述,请选择针对机器学习训练进行优化的处理器和系统。与通用处理器相比,这些处理器的性能和能效可提高 2-5 倍。
使用参数高效微调
与其调整模型的所有数十亿个参数(全面微调),不如使用参数高效微调 (PEFT) 方法,例如低秩自适应 (LoRA)。使用此技术,您可以冻结原始模型的权重,并仅训练少量新的轻量级层。此方法有助于降低成本和能耗。
遵循 AI 和 ML 运营的最佳实践
运营实践会显著影响 AI 和机器学习工作负载的可持续性。请考虑以下建议。
优化模型训练流程
您可以使用以下技巧来优化模型训练流程:
- 早停法:监控训练过程,当您发现模型在验证集上的性能不再提升时,停止训练。此技术有助于您避免不必要的计算和能耗。
- 高效的数据加载:使用高效的数据流水线,确保 GPU 和 TPU 始终得到利用,而不会等待数据。此技术有助于最大限度地提高资源利用率并减少能源浪费。
- 优化超参数调优:为了更高效地找到最佳超参数,请使用贝叶斯优化或强化学习等技术。避免进行详尽的网格搜索,因为这可能会消耗大量资源。
提高推理效率
如需提高 AI 推理任务的效率,请使用以下技术:
- 批处理:将多个推理请求分批分组,并利用 GPU 和 TPU 进行并行处理。此技术有助于降低每次预测的能耗。
- 高级缓存:实施多层缓存策略,包括用于自回归生成的键值 (KV) 缓存和用于应用响应的语义提示缓存。此技术有助于绕过冗余的模型计算,并可显著减少能耗和碳排放。
衡量和监控
监控和衡量以下参数:
- 使用情况和费用:使用适当的工具跟踪 AI 工作负载的令牌使用情况、能耗和碳足迹。这些数据有助于您发现优化机会,并报告在实现可持续发展目标方面的进展。
- 性能:持续监控模型在生产环境中的性能。
识别数据漂移等问题,这些问题可能表明模型需要再次进行微调。如果您需要重新训练模型,可以使用原始微调模型作为起点,从而节省大量更新时间、资金和精力。
- 如需跟踪性能指标,请使用 Cloud Monitoring。
- 如需将模型更改与性能指标的改进相关联,请使用事件注释。
如需详细了解如何将持续改进付诸实践,请参阅持续衡量和改进可持续性。
实现碳感知型调度
设计机器学习流水线作业,使其在能源结构最清洁的区域运行。 使用碳足迹报告确定碳排放强度最低的区域。在本地电网的无碳能源 (CFE) 百分比较高的时段,将资源密集型任务安排为批处理作业。
优化数据流水线
机器学习操作和微调需要干净的高质量数据集。在开始机器学习作业之前,请使用托管式数据处理服务高效地准备数据。例如,使用 Dataflow 进行流处理和批处理,并使用 Dataproc 管理 Spark 和 Hadoop 流水线。优化的数据流水线有助于确保微调工作负载不会等待数据,从而最大限度地提高资源利用率并有助于减少能源浪费。
采用 MLOps
如需自动执行和管理整个机器学习生命周期,请实施 MLOps 实践。这些实践有助于确保模型得到持续监控、验证和高效重新部署,从而有助于防止不必要的训练或资源分配。
使用托管式服务
使用 Vertex AI 等托管式云服务,而不是自行管理基础设施。 云平台会处理底层资源管理,让您可以专注于微调流程。使用包含用于超参数调优、模型监控和资源管理的内置工具的服务。
后续步骤
- Google 的 AI 使用多少能源?我们已经计算过了
- Ironwood:面向推理时代的首款 Google TPU
- Google 可持续发展 2025 年环保报告
- 利用 GLaM 实现更高效的上下文学习
- 上下文缓存概览
优化资源使用情况,实现可持续发展
Google Cloud Well-Architected Framework 可持续性核心中的这一原则提供了相关建议,可帮助您优化 Google Cloud中工作负载的资源用量。
原则概览
优化资源用量对于提高云环境的可持续性至关重要。从计算周期到数据存储,每项已配置的资源都会直接影响能耗、用水强度和碳排放量。为了减少工作负载对环境的影响,您需要在预配、管理和使用云资源时做出明智的选择。
建议
如需优化资源使用情况,请考虑以下各部分中的建议。
实现自动化动态伸缩
自动动态伸缩可确保资源得到最佳利用,从而有助于防止因空闲或过度预配的基础设施而造成的能源浪费。减少能源浪费意味着降低成本和碳排放量。
您可以使用以下技术来实现自动化和动态可伸缩性。
使用横向伸缩
对于大多数云优先应用,横向伸缩是首选的伸缩技术。您不是增加每个实例的大小(称为纵向伸缩),而是添加实例来分摊负载。例如,您可以使用代管式实例组 (MIG) 自动扩缩一组 Compute Engine 虚拟机。横向扩缩的基础设施更具弹性,因为实例的故障不会影响应用的可用性。对于负载水平不稳定的应用,横向伸缩也是一种资源高效型技术。
配置适当的伸缩政策
根据工作负载的要求配置自动扩缩设置。 定义特定于应用行为的自定义指标和阈值。 除了仅依赖 CPU 利用率之外,还可以考虑异步任务的队列深度、请求延迟时间和自定义应用指标等指标。为防止频繁、不必要的伸缩或抖动,请定义明确的伸缩政策。例如,对于在 Google Kubernetes Engine (GKE) 中部署的工作负载,请配置适当的集群自动扩缩政策。
结合使用被动伸缩和主动伸缩
借助被动伸缩,系统会根据实时负载变化进行伸缩。此技术适用于负载出现不可预测的峰值的应用。
主动伸缩功能适用于具有可预测模式的工作负载,例如固定的每日营业时间和每周报告生成。对于此类工作负载,请使用基于时间表的自动扩缩功能预先配置资源,以便它们能够应对预期的负载水平。此技术可防止争抢资源,并确保用户体验更流畅、效率更高。此技术还有助于您主动规划已知的高负载时段,例如大型促销活动和有针对性的营销活动。
Google Cloud GKE Autopilot、Cloud Run 和 MIG 等托管式服务和功能会通过学习工作负载模式来自动管理主动伸缩。默认情况下,当 Cloud Run 服务未收到任何流量时,它会缩容到零个实例。
设计无状态应用
为了使应用能够进行水平扩缩,其组件应为无状态组件。这意味着特定用户的会话或数据不会与单个计算实例相关联。当您将会话状态存储在计算实例之外(例如 Memorystore for Redis)时,任何计算实例都可以处理来自任何用户的请求。这种设计方法可实现无缝高效的横向伸缩。
使用调度和批处理
批处理非常适合大规模的非紧急工作负载。批量作业有助于优化工作负载,以提高能效和降低成本。
使用以下技术来实现调度和批处理作业。
低碳排放强度时间表
安排批处理作业在低碳区域运行,并选择当地电网清洁能源占比高的时段运行。如需确定某个区域一天中碳排放强度最低的时间段,请使用碳足迹报告。
将 Spot 虚拟机用于非关键工作负载
竞价型虚拟机可让您以极低的折扣价利用未使用的 Compute Engine 容量。Spot 虚拟机可能会被抢占,但它们提供了一种经济高效的方式来处理大型数据集,而无需专用且始终在线的资源。 Spot 虚拟机非常适合非关键的容错型批处理作业。
整合和并行化作业
为了减少启动和关闭单个作业的开销,请将类似作业分组到一个大型批次中。在 Batch 等服务上运行这些高容量工作负载。该服务会自动预配和管理必要的基础设施,有助于确保最佳资源利用率。
使用托管式服务
Batch 和 Dataflow 等托管式服务会自动处理资源配置、调度和监控。云平台会处理资源优化。您可以专注于应用逻辑。例如,Dataflow 会根据流水线中的数据量自动扩缩工作器数量,因此您无需为闲置资源付费。
根据工作负载要求选择合适的虚拟机机器系列
可用于 Compute Engine 虚拟机的机器类型分为机器系列,这些系列针对不同的工作负载进行了优化。根据工作负载的要求选择合适的机器系列。
| 机器家族 | 建议的工作负载类型 | 可持续发展指南 |
|---|---|---|
| 通用型实例(E2、N2、N4、Tau T2A/T2D):这些实例的 CPU 与内存比率较为均衡。 | Web 服务器、微服务、中小型数据库和开发环境。 | E2 系列可动态分配资源,因此具有极高的成本效益和能效。Tau T2A 系列使用基于 Arm 的处理器,对于大规模工作负载,这些处理器通常具有更高的能效比。 |
| 计算优化型实例(C2、C3):这些实例提供较高的 vCPU 与内存比率,以及较高的每核心性能。 | 高性能计算 (HPC)、批处理、游戏服务器和基于 CPU 的数据分析。 | C 系列实例可让您更快地完成 CPU 密集型任务,从而缩短作业的总计算时间和能耗。 |
| 内存优化型实例(M3、M2):这些实例专为需要大量内存的工作负载而设计。 | 大型内存中数据库和数据仓库,例如 SAP HANA 或内存中分析。 | 内存优化型实例可将内存密集型工作负载整合到较少的物理节点上。与使用多个较小的实例相比,这种整合可减少所需的总能耗。高性能内存可缩短数据访问延迟时间,从而减少 CPU 处于活动状态的总时间。 |
| 存储优化型实例 (Z3): 这些实例提供高吞吐量、低延迟的本地 SSD 存储空间。 | 数据仓储、日志分析以及 SQL、NoSQL 和向量数据库。 | 存储优化型实例可在本地处理海量数据集,从而有助于消除用于跨位置网络数据出站流量的能耗。当您使用本地存储空间来处理高 IOPS 任务时,可以避免过度预配多个标准实例。 |
| 加速器优化型实例(A3、A2、G2):这些实例专为 GPU 和 TPU 加速的工作负载(例如 AI、机器学习和 HPC)而构建。 | 机器学习模型训练和推理,以及科学模拟。 | TPU 经过精心设计,可实现最佳能效。它们可实现更高的每瓦计算次数。 与仅使用 CPU 的替代方案相比,配备 NVIDIA H100 GPU 的 A3 系列等 GPU 加速实例在训练大型模型时能效更高。虽然 GPU 加速实例的额定功耗更高,但完成任务的速度要快得多。 |
升级到最新机器类型
使用最新的机器类型可能有助于提高可持续性。机器类型更新后,通常会更节能,并提供更高的每瓦性能。使用最新机器类型的虚拟机可能以更低的功耗完成相同的工作量。
CPU、GPU 和 TPU 通常受益于芯片架构方面的技术进步,例如:
- 专用核心:处理器方面的进步通常包括用于常见工作负载的专用核心或指令。例如,CPU 可能具有用于矢量运算的专用核心或集成的 AI 加速器。当这些任务从主 CPU 分流时,任务完成效率更高,能耗更低。
- 改进的电源管理:芯片架构的进步通常包括更精密的电源管理功能,例如根据工作负载动态调整电压和频率。这些电源管理功能可让芯片以最高效率运行,并在空闲时进入低功耗状态,从而最大限度地减少能耗。
芯片架构方面的技术改进可直接带来以下可持续性和成本方面的优势:
- 更高的单位能耗性能:这是可持续性的关键指标。例如,在能耗相同的情况下,C4 虚拟机的性价比比 C3 虚拟机高 40%。与同类 x86 处理器相比,C4A 处理器的能效高出 60%。借助这些性能功能,您可以更快地完成任务,或者以更少的实例处理相同的负载。
- 降低总能耗:借助改进的处理器,计算资源可用于在更短的时间内完成给定的任务,从而降低总体能耗和碳足迹。对于生命周期较短的计算密集型工作负载(例如批处理作业和机器学习模型训练),碳排放影响尤其高。
- 最佳资源利用率:最新的机器类型通常更适合现代软件,并且与云平台的先进功能更兼容。这些机器类型通常可以提高资源利用率,从而减少过度预配的需求,并有助于确保每瓦电力都能得到高效利用。
部署容器化应用
您可以将 GKE 和 Cloud Run 等基于容器的全代管式服务纳入可持续的云计算策略中。这些服务有助于优化资源利用率并自动执行资源管理。
利用 Cloud Run 的“缩放至零”功能
Cloud Run 提供了一个托管式无服务器环境,当服务没有入站流量或作业完成时,该环境会自动将实例缩减至零。自动扩缩有助于消除空闲基础设施的能耗。仅当资源主动处理请求时,才会消耗资源。此策略对于间歇性或事件驱动型工作负载非常有效。对于 AI 工作负载,您可以使用 Cloud Run 中的 GPU,这样您只需在实际使用 GPU 时付费。
使用 GKE 自动优化资源
GKE 是一种容器编排平台,可确保应用仅使用所需的资源。为了帮助您自动优化资源,GKE 提供了以下技术:
- 装箱:GKE Autopilot 会在可用节点上智能地打包多个容器。箱子打包可最大限度地提高每个节点的利用率,并减少空闲或未充分利用的节点数量,从而有助于降低能耗。
- Pod 横向自动扩缩 (HPA):借助 HPA,系统会根据预定义的指标(例如 CPU 用量或自定义应用专用指标)自动调整容器副本 (Pod) 的数量。例如,如果您的应用流量激增,GKE 会添加 Pod 来满足需求。当流量减少时,GKE 会减少 Pod 的数量。这种动态伸缩功能可防止资源过度预配,因此您无需为不必要的计算容量付费或供电。
- 纵向 Pod 自动扩缩 (VPA):您可以将 GKE 配置为自动调整各个容器的 CPU 和内存分配及限制。此配置可确保不会为容器分配超出其需求的资源,从而有助于防止资源过度预配。
- GKE 多维 Pod 自动扩缩:对于复杂的工作负载,您可以同时配置 HPA 和 VPA,以优化 Pod 数量和每个 Pod 的大小。此技术有助于确保在达到所需性能的同时,尽可能减少能耗。
- 拓扑感知调度 (TAS):TAS 通过根据数据中心基础设施的物理结构放置 Pod,提高 GKE 中 AI 和 ML 工作负载的网络效率。TAS 会以战略性方式将工作负载放置在同一位置,以最大限度地减少网络跃点。这种并置有助于减少通信延迟和能耗。通过优化节点和专用硬件的物理对齐,TAS 可加快任务完成速度,并最大限度地提高大规模 AI 和机器学习工作负载的能效。
配置碳感知型调度
Google 会不断将工作负载转移到可提供最清洁电力的地点和时间。我们还会将旧设备重新用于其他用途,即回收旧设备。您可以使用这种碳感知调度策略来确保容器化工作负载使用清洁能源。
如需实现碳感知调度,您需要实时了解某个区域内为数据中心供电的能源组合。您可以从 GitHub 中的 Google Cloud 区域的无碳能源数据代码库或 BigQuery 公开数据集中获取机器可读格式的此信息。用于计算 Google 年度碳排放数据集的每小时电网混合碳排放强度数据来自 Electricity Maps。
如需实现碳感知调度,我们建议采用以下技术:
- 地理位置转移:安排工作负载在可再生能源使用比例较高的区域运行。此方法可让您使用更清洁的电网。
- 时间转移:对于非关键的灵活工作负载(例如批处理),请将工作负载配置为在非高峰时段或可再生能源最充足时运行。这种方法称为时间转移,可利用清洁能源(在有清洁能源可用时)来减少总体碳足迹。
设计高能效的灾难恢复方案
为灾难恢复 (DR) 做准备通常需要在次要区域中预先配置冗余资源。不过,闲置或利用率不足的资源可能会造成严重的能源浪费。选择可最大限度提高资源利用率并最大限度减少碳影响的灾难恢复策略,同时不会影响恢复时间目标 (RTO)。
优化冷启动效率
使用以下方法可最大限度地减少或消除次要 (DR) 区域中的有效资源:
- 优先考虑冷灾难恢复:使灾难恢复区域中的资源保持关闭状态或缩减为零状态。这种方法有助于消除空闲计算资源的碳足迹。
- 利用无服务器故障切换:使用 Cloud Run 等托管式无服务器服务作为灾难恢复端点。Cloud Run 在不使用时会缩减到零,因此您可以维护一种灾难恢复拓扑,该拓扑在流量改道到灾难恢复区域之前不会消耗任何能源。
- 使用基础设施即代码 (IaC) 实现自动化恢复:无需让灾难恢复站点中的资源保持运行状态(暖),只需在需要时使用 Terraform 等 IaC 工具快速预配环境。
平衡冗余和利用率
资源冗余是造成能源浪费的主要原因。如需减少冗余,请使用以下方法:
- 主动-主动优于主动-被动:在主动-被动设置中,被动站点的资源处于闲置状态,这会导致能源浪费。经过优化调整大小的主动-主动架构可确保两个区域中的所有预配资源都能主动处理流量。这种方法有助于最大限度地提高基础设施的能效。
- 合理调整冗余:仅在需要复制数据和服务以满足高可用性或灾难恢复要求时,才跨区域复制数据和服务。每增加一个副本,持久性存储和网络出站流量的能耗就会增加。
开发高能效软件
Google Cloud Well-Architected Framework可持续性核心中的这一原则提供了相关建议,可帮助您编写能够最大限度减少能耗和服务器负载的软件。
原则概览
遵循最佳实践来构建云应用时,您可以优化云基础设施资源(AI、计算、存储和网络)所利用的能源。您还可以帮助减少数据中心对用水的需求,以及最终用户设备在访问您的应用时消耗的能源。
如需构建节能型软件,您需要在整个软件生命周期(从设计和开发到部署、维护和归档)中融入可持续性考量。如需详细了解如何使用 AI 构建可最大限度减少云工作负载环境影响的软件,请参阅 Google Cloud 电子书《可持续地构建软件》。
建议
本部分中的建议分为以下重点领域:
- 尽量减少计算工作:倾向于使用精简、专注的代码,以消除冗余逻辑并避免不必要的计算或功能膨胀。
- 使用高效的算法和数据结构:选择时间效率高且内存效率高的算法,以减少 CPU 负载并最大限度地减少内存使用量。
- 优化计算和数据操作:开发时应以高效使用所有可用资源(包括 CPU、内存、磁盘 I/O 和网络)为目标。例如,当您使用事件驱动型逻辑替换繁忙循环时,可以避免不必要的轮询。
- 实现前端优化:为了减少最终用户设备的功耗,请使用最小化、压缩和延迟加载图片和资源等策略。
最大限度地减少计算工作
若要编写节能型软件,您需要尽可能减少应用执行的计算工作总量。每条不必要的指令、冗余的循环和额外的功能都会消耗能量、时间和资源。请按照以下建议构建执行最少计算的软件。
编写精简且重点突出的代码
如需编写实现所需结果所必需的最少代码,请使用以下方法:
- 消除冗余逻辑和功能膨胀:编写仅执行基本功能的代码。避免使用会增加计算开销和复杂性但无法为用户带来可衡量价值的功能。
- 重构:为了随着时间的推移提高能效,请定期审核您的应用,以确定未使用的功能。采取行动来移除或重构此类功能(视情况而定)。
- 避免不必要的操作:在需要结果之前,不要计算值或运行操作。使用延迟评估等技术,在应用中的相关组件需要输出之前延迟计算。
- 优先考虑代码的可读性和可重用性:编写可读且可重用的代码。这种方法可最大限度地减少重复,并遵循“不要重复自己 (DRY)”原则,有助于减少软件开发和维护过程中的碳排放。
使用后端缓存
后端缓存可确保应用不会重复执行相同的工作。较高的缓存命中率可使每个请求的能耗几乎呈线性下降。如需实现后端缓存,请使用以下技术:
- 缓存频繁访问的数据:将频繁访问的数据存储在临时的高性能存储位置。例如,使用内存中缓存服务(如 Memorystore)。当应用从缓存中检索数据时,数据库查询和磁盘 I/O 操作的量会减少。因此,后端数据库和服务器的负载会降低。
- 缓存 API 响应:为避免冗余且代价高昂的网络调用,请缓存频繁 API 请求的结果。
- 优先使用内存中缓存:为了避免缓慢的磁盘 I/O 操作和复杂的数据库查询,请将数据存储在高速内存 (RAM) 中。
- 选择合适的缓存写入策略:
- 透写策略可确保数据同步写入缓存和持久性存储。此策略可提高缓存命中的可能性,因此持久存储会收到较少的耗能型读取请求。
- 回写(后写)策略可提升写入密集型应用的性能。数据先写入缓存,然后异步更新数据库。此策略可减少较慢数据库上的即时写入负载。
- 使用智能逐出政策:保持缓存精简高效。为了移除过时或低效的数据,并最大限度地增加可用于存储频繁请求的数据的空间,请使用存留时间 (TTL)、最近最少使用 (LRU) 和最不常用 (LFU) 等政策。
使用高效的算法和数据结构
您选择的算法和数据结构决定了软件的原始计算复杂度。选择合适的算法和数据结构可最大限度地减少完成任务所需的 CPU 周期数和内存操作次数。更少的 CPU 周期和内存操作意味着更低的能耗。
选择具有最佳时间复杂度的算法
优先考虑在最短时间内实现所需结果的算法。这种方法有助于缩短资源使用时长。如需选择可优化资源使用情况的算法,请使用以下方法:
- 侧重于降低复杂性:如需评估复杂性,请不要只关注运行时指标,还要考虑算法的理论复杂性。例如,与冒泡排序相比,归并排序可显著降低大型数据集的计算负荷和能耗。
- 避免冗余工作:使用所选编程语言或框架中的内置优化函数。这些函数通常使用 C 或 C++ 等更低级、更节能的语言实现,因此与自定义编码的函数相比,它们可以更好地针对底层硬件进行优化。
选择高效的数据结构
您选择的数据结构决定了检索、插入或处理数据的速度。此速度会影响 CPU 和内存用量。如需选择高效的数据结构,请使用以下方法:
- 针对搜索和检索进行优化:对于检查某项是否存在或检索特定值等常见操作,最好使用针对速度进行优化的数据结构。例如,哈希映射或哈希集可实现近乎恒定的时间查找,这比线性搜索数组更节能。
- 尽量减少内存占用空间:高效的数据结构有助于减少应用的总体内存占用空间。减少内存访问和管理可降低能耗。此外,更精简的内存配置可让进程更高效地运行,从而推迟资源升级。
- 使用专用结构:使用专门针对特定问题构建的数据结构。例如,使用 trie 数据结构可快速搜索字符串前缀,而当您需要高效地访问最高值或最低值时,可以使用优先级队列。
优化计算和数据操作
开发软件时,请注重在整个技术堆栈中高效且按比例地使用资源。将 CPU、内存、磁盘和网络视为有限的共享资源。认识到高效使用资源可切实降低成本和能源消耗。
优化 CPU 利用率和空闲时间
为了最大限度地减少 CPU 在消耗能量的活跃状态下花费的时间,同时不执行有意义的工作,请使用以下方法:
- 优先选择事件驱动型逻辑,而非轮询:使用事件驱动型逻辑替换资源密集型繁忙循环或持续检查(轮询)。事件驱动型架构可确保应用的组件仅在被相关事件触发时才运行。这种方法支持按需处理,无需进行资源密集型轮询。
- 防止持续高频运行:编写不会强制 CPU 始终以最高频率运行的代码。为了最大限度地减少能耗,空闲的系统应能够进入低功耗状态或休眠模式。
- 使用异步处理:为防止线程在空闲等待期间被锁定,请使用异步处理。这种方法可以释放资源,从而提高总体资源利用率。
高效管理内存和磁盘 I/O
内存和磁盘使用效率低下会导致不必要的处理和更高的能耗。如需高效管理内存和 I/O,请使用以下方法:
- 严格的内存管理:采取措施主动释放未使用的内存资源。避免在内存中长时间保存大型对象。这种方法可防止出现性能瓶颈,并减少内存访问所消耗的电量。
- 优化磁盘 I/O:减少应用与永久性存储资源之间的读取和写入互动频率。例如,使用中间内存缓冲区来存储数据。以固定时间间隔或在缓冲区达到一定大小时将数据写入持久性存储空间。
- 批量操作:将频繁的小规模磁盘操作整合为数量更少但规模更大的批量操作。批量操作比许多单独的小规模交易消耗的能量更少。
- 使用压缩:应用合适的数据压缩技术,减少写入磁盘或从磁盘读取的数据量。例如,如需压缩存储在 Cloud Storage 中的数据,您可以使用解压缩转码。
最大限度地减少网络流量
在数据传输操作期间,网络资源会消耗大量能源。 如需优化网络通信,请使用以下技巧:
- 尽量减小载荷大小:设计 API 和应用时,应仅传输请求所需的数据。避免在只需要少量字段的情况下提取或返回大型 JSON 或 XML 结构。确保返回的数据结构简洁明了。
- 减少往返次数:为了减少完成用户操作所需的网络往返次数,请使用更智能的协议。例如,优先选择 HTTP/3 而不是 HTTP/1.1,选择 GraphQL 而不是 REST,使用二进制协议,并整合 API 调用。减少网络调用的数量可降低服务器和最终用户设备的能耗。
实施前端优化
前端优化可最大限度地减少最终用户必须下载和处理的数据,从而有助于减轻最终用户设备资源的负载。
最大限度地减少代码和资源
当最终用户需要下载和处理更小且结构更高效的资源时,其设备消耗的电量会更少。为了尽量减少最终用户设备上的下载量和处理负载,请使用以下技巧:
- 精简和压缩:对于 JavaScript、CSS 和 HTML 文件,请使用适当的精简工具移除不必要的字符(例如空格和注释)。确保图片等文件经过压缩和优化。您可以使用 CI/CD 流水线自动执行 Web 资源最小化和压缩。
- 延迟加载:仅在实际需要时加载图片、视频和非关键素材资源,例如当这些元素滚动到网页的视口中时。这种方法可减少初始数据传输量和最终用户设备的处理负载。
- 更小的 JavaScript 软件包:使用现代模块打包器和摇树优化等技术,从 JavaScript 软件包中移除未使用的代码。 这种方法可以生成更小的文件,从而加快加载速度并减少服务器资源使用量。
- 浏览器缓存:使用 HTTP 缓存标头指示用户的浏览器在本地存储静态资源。浏览器缓存有助于防止在后续访问时重复下载和产生不必要的网络流量。
优先考虑轻量级用户体验 (UX)
界面设计可能会对渲染前端内容的计算复杂度产生重大影响。如需构建可提供轻量级用户体验的前端界面,请使用以下技术:
- 高效渲染:避免进行资源密集型、频繁的文档对象模型 (DOM) 操作。编写可最大限度降低渲染复杂性并消除不必要重新渲染的代码。
- 轻量级设计模式:在适当的情况下,首选静态网站或渐进式 Web 应用 (PWA)。 此类网站和应用的加载速度更快,所需的服务器资源更少。
- 无障碍功能和性能:响应迅速、加载速度快的网站通常更可持续且更易于访问。优化后的简洁设计可减少呈现内容时消耗的资源。经过优化以提升性能和速度的网站有助于提高收入。根据 Deloitte 和 Google 开展的一项研究《Milliseconds Make Millions》(毫秒创造百万美元),网站速度提升 0.1 秒(100 毫秒)可使零售网站的转化率提高 8.4%,平均订单价值提高 9.2%。
优化数据和存储以实现可持续发展
Google Cloud Well-Architected Framework 可持续性核心中的这一原则提供了相关建议,可帮助您优化 Google Cloud中存储资源的能效和碳足迹。
原则概览
存储的数据不是被动资源。在数据的整个生命周期内,都会消耗能源并产生碳排放。每存储 1 GB 的数据都需要持续供电、冷却和管理的物理基础设施。为了实现可持续的云架构,请将数据视为有价值但环境成本高昂的资产,并优先考虑主动数据治理。
您在数据保留、质量和位置方面的决策有助于大幅降低云费用和能耗。尽量减少存储的数据量,优化数据存储位置和方式,并实施自动删除和归档策略。减少数据杂乱可提高系统性能,并从根本上减少数据的长期环境足迹。
建议
如需优化数据生命周期和存储资源以实现可持续性,请考虑以下各部分中的建议。
优先考虑高价值数据
未使用的重复数据或过时数据会继续消耗能源来为底层基础设施供电。如需减少存储相关的碳足迹,请使用以下方法。
识别并消除重复内容
制定政策,以防止在多个 Google Cloud 项目或服务中不必要地复制数据集。使用 BigQuery 数据集或 Cloud Storage 存储分区等中央数据代码库作为单一可信来源,并授予对这些代码库的适当访问权限。
移除影子数据和暗数据
暗数据是指用途或所有者未知的数据。影子数据是指未经授权的数据副本。使用 Dataplex Universal Catalog 等数据发现和编目解决方案扫描存储系统,查找暗数据和影子数据。 定期审核这些发现,并根据需要实施暗数据和影子数据的归档或删除流程。
尽可能减少 AI 工作负载的数据量
仅存储模型训练和提供服务所需的特征和处理后的数据。在可能的情况下,使用数据抽样、汇总和合成数据生成等技术来提高模型性能,而无需依赖庞大的原始数据集。
集成数据质量检查
在数据注入时,使用 Dataproc、Dataflow 或 Dataplex Universal Catalog 等服务实现自动数据验证和数据清理流水线。低质数据会导致存储空间浪费。此外,如果后续将这些数据用于分析或 AI 训练,还会导致不必要的能耗。
查看数据的价值密度
定期检查日志和 IoT 数据流等大容量数据集。确定是否可以对任何数据进行总结、汇总或降采样,以保持所需的信息密度并减少物理存储空间。
严格评估备份需求
评估是否需要备份只需少量精力即可重新生成的数据。 此类数据的示例包括中间 ETL 结果、临时缓存,以及源自稳定永久来源的训练数据。仅保留难以重新创建或重新创建成本高昂的唯一数据的备份。
优化存储生命周期管理
自动管理存储生命周期,以便在数据效用下降时,将数据移至能效高的存储类别或将其废弃(视情况而定)。请使用以下方法。
选择合适的 Cloud Storage 类别
使用对象生命周期管理功能,根据访问频率自动将 Cloud Storage 中的数据转换为低碳存储类别。
- 仅将 Standard 存储空间用于当前正在使用的活跃数据集,例如当前生产模型。
- 将旧版 AI 训练数据集或不常访问的备份等数据迁移到 Nearline 或 Coldline 存储空间。
- 如需长期保留数据,请使用 Archive Storage,该存储空间已针对大规模节能进行优化。
实施严格的数据生命周期政策
为非必要数据(例如日志文件、临时模型制品和过时的中间结果)定义清晰的自动化存留时间 (TTL) 政策。使用生命周期规则在指定期限后自动删除此类数据。
强制执行资源标记
强制要求为所有 Cloud Storage 存储分区、BigQuery 数据集和永久性磁盘使用一致的资源标记和标签。创建用于指明数据所有者、数据用途和保留期限的标记。使用组织政策服务限制条件,确保将必需的标记(例如保留期限)应用于资源。借助标记,您可以自动执行生命周期管理、创建精细的 FinOps 报告,以及生成碳排放报告。
合理调整计算存储空间并取消预配
定期审核挂接到 Compute Engine 实例的永久性磁盘,并确保磁盘未过度预配。仅在需要使用快照进行备份时才使用快照。删除旧的、未使用的快照。对于数据库,请使用数据保留政策来减小底层永久性磁盘的大小。
优化存储格式
对于用于处理分析工作负载的存储,建议选择压缩的列式格式(如 Parquet 或优化的 Avro),而不是基于行的格式(如 JSON 或 CSV)。列式存储可显著减少物理磁盘空间需求并提高读取效率。这种优化有助于减少相关计算和 I/O 操作的能耗。
优化区域化和数据迁移
数据的实际位置和移动会影响网络资源的消耗以及存储所需的能源。使用以下技术优化数据区域性。
选择低碳存储区域
根据您的合规性要求,将数据存储在无碳能源 (CFE) 使用百分比较高或电网碳强度较低的 Google Cloud 区域。使用资源位置组织政策限制条件来限制在高碳排放区域创建存储分区。如需了解 Google Cloud 区域的 CFE 和碳强度数据,请参阅 Google Cloud 区域的无碳能源数据。
尽量减少复制
仅在需要满足强制性灾难恢复 (DR) 或高可用性 (HA) 要求时,才跨区域复制数据。跨区域和多区域复制操作会显著增加数据的能耗和碳足迹。
优化数据处理位置
为了减少网络数据传输的能耗,请在与数据源相同的区域中部署计算密集型工作负载,例如 AI 训练和 BigQuery 处理。
优化合作伙伴和客户的数据迁移
如需在云服务、位置和提供商之间迁移大量数据,请鼓励合作伙伴和客户使用 Storage Transfer Service 或数据共享 API。避免大规模数据转储。对于公共数据集,请使用请求者付费存储分区,将数据传输和处理费用以及环境影响转移给最终用户。
持续衡量和改进可持续性
Google Cloud Well-Architected Framework 可持续性核心中的这一原则提供了相关建议,可帮助您衡量并不断改进 Google Cloud中工作负载的可持续性。
原则概览
为了确保云工作负载保持可持续性,您需要准确且透明的指标。借助可验证的指标,您可以将可持续发展目标转化为实际行动。您在云端创建的每项资源都有相关的碳足迹。为了构建和维护可持续的云架构,您必须将碳数据测量纳入运营反馈环路。
本部分中的建议提供了一个框架,用于使用碳足迹来量化碳排放量、识别碳热点、实施有针对性的工作负载优化,并验证优化工作的成果。借助此框架,您可以高效地将费用优化目标与可验证的碳减排目标保持一致。
碳足迹报告方法
碳足迹报告可提供透明、可审核且与全球标准一致的云相关排放量报告。本报告遵循国际标准,主要是用于碳排放报告和核算的温室气体 (GHG) 核算体系。“碳足迹”报告使用基于位置和基于市场的核算方法。基于位置的核算以当地电网的排放因子为依据。按市场统计的碳排放量将 Google 购买的无碳能源 (CFE) 纳入考量。这种双重方法有助于您了解工作负载在 Google Cloud中的物理网格影响和碳排放效益。
如需详细了解碳足迹报告的编制方式,包括所用的数据源、范围 3 纳入项和客户分配模型,请参阅碳足迹报告方法。
建议
如需使用碳排放衡量功能来持续改进,请考虑以下各部分中的建议。这些建议分为多个成熟度阶段,用于实现可持续的设计云运营:
第 1 阶段:建立基准
在此阶段,您需要设置必要的工具,并确保数据可访问且已正确集成。
- 授予权限:向 FinOps、SecOps 和平台工程等团队授予权限,以便他们可以在 Google Cloud 控制台中访问“碳足迹”信息中心。在 Identity and Access Management (IAM) 中为相应的结算账号授予碳足迹查看者角色 (
roles/billing.carbonViewer)。 - 自动导出数据:配置为自动将碳足迹数据导出到 BigQuery。借助导出的数据,您可以进行深入分析,将碳数据与费用和用量数据相关联,并生成自定义报告。
- 确定与碳排放相关的关键绩效指标 (KPI):建立将碳排放与业务价值相关联的指标。例如,碳排放强度是指每位客户、每笔交易或每个收入单位的二氧化碳当量(以千克为单位)。
第 2 阶段:确定碳排放热点
通过分析碳足迹报告中的精细数据,找出对环境影响最大的领域。在此分析中,请使用以下技巧:
- 按范围确定优先顺序:如需快速找出最大的碳排放源,请按项目、区域和服务分析信息中心内的数据。
- 采用双重核算:在评估某个区域的碳影响时,请同时考虑按位置统计的排放量(当地电网对环境的影响)和按市场统计的排放量(Google 的 CFE 投资带来的益处)。
- 与费用相关联:将 BigQuery 中的碳排放数据与结算数据联接,并评估优化措施对可持续性和费用的影响。高成本通常与高碳排放相关。
- 为数据添加注释以衡量投入回报率 (ROE):在 BigQuery 中为碳数据添加特定事件的注释,例如调整资源大小或停用大型服务。借助注释,您可以将碳排放量和费用的减少归因于特定的优化计划,从而衡量并展示每个计划的成效。
第 3 阶段:实施有针对性的优化
这是实施可持续设计云运营的执行阶段。您可以采用以下策略来优化您确定为费用和碳排放量主要驱动因素的特定资源:
- 停用无人使用的项目:定期检查与碳足迹数据集成的无人使用的项目 Recommender。如需立即实现经过验证的碳排放量和费用减少,请自动执行对未使用项目的审核和最终移除。
- 合理调整资源量:使用 Active Assist 的合理调整推荐器(例如 Compute Engine 虚拟机的机器类型建议)将预配的资源容量与实际利用率相匹配。 对于计算密集型任务和 AI 工作负载,请使用最高效的机器类型和 AI 模型。
- 采用碳感知调度:对于非时间关键型批处理工作负载,将区域 CFE 数据集成到调度逻辑中。在可行的情况下,使用组织政策服务中的资源位置限制条件,将新资源的创建限制在低碳区域。
- 减少数据蔓延:实施数据治理政策,确保不经常访问的数据迁移到合适的冷存储类别(Nearline、Coldline 或 Archive)或被永久删除。此策略有助于降低存储资源的能耗费用。
- 优化应用代码:修复导致资源使用过量或不必要计算的代码级低效问题。
详情请参阅以下内容:
第 4 阶段:将可持续发展实践和报告制度化
在此阶段,您需要将碳排放量衡量纳入治理框架。这种方法有助于确保您的组织具备持续改进可持续性和可验证报告所需的能力和控制措施。
- 实施 GreenOps 治理:建立正式的 GreenOps 职能或工作组,将碳足迹数据与 Cloud Billing 数据集成。此职能必须明确各项目碳减排目标的责任,将成本优化与可持续发展目标保持一致,并实施报告来跟踪碳效率与支出之间的关系。
- 使用碳足迹数据进行报告和合规性检查:使用 BigQuery 中经过验证且可审核的碳足迹数据来创建正式的环境、社会和治理 (ESG) 披露信息。这种方法可让您满足利益相关者对透明度的要求,并有助于确保遵守强制性法规和自愿性法规。
- 投资于培训和意识提升:为相关技术和非技术团队实施强制性可持续发展培训。您的团队需要了解如何访问和解读碳足迹数据,以及如何在日常工作流程和设计选择中应用优化建议。如需了解详情,请参阅提供基于角色的可持续发展培训。
- 定义碳排放要求:在应用的新部署验收标准中纳入碳排放指标,作为非功能性要求 (NFR)。这种做法有助于确保架构师和开发者在应用开发生命周期的开始阶段就优先考虑低碳设计方案。
- 自动执行 GreenOps:使用脚本、模板和基础设施即代码 (IaC) 流水线自动实现 Active Assist 建议。这种做法可确保团队在整个组织中一致且快速地应用建议。
推广可持续发展文化
Google Cloud Well-Architected Framework 可持续性核心中的这一原则提供了相关建议,可帮助您打造一种文化,让组织中的各个团队都了解并熟练掌握可持续性实践。
原则概览
要应用可持续发展实践,您需要的不仅仅是工具和技术。您需要通过教育和责任感来推动文化转变。您的团队需要了解可持续发展方面的问题,并且必须具备可持续发展实践方面的实际技能。
- 可持续性意识是指了解每项架构和运营决策都会对可持续性产生切实的影响。团队必须认识到,云不是虚拟资源的抽象集合,而是由消耗能源并产生碳排放的物理资源驱动的。
- 熟练掌握可持续发展实践包括:能够解读碳排放数据,具备实施云可持续发展治理的经验,以及具备重构代码以提高能效的技术技能。
为了使可持续发展实践与组织目标保持一致,您的团队需要了解云基础架构和软件的能耗如何影响组织的碳足迹。精心规划的培训有助于确保所有利益相关方(从开发者和架构师到财务专业人士和运营工程师)了解其日常工作的可持续性背景。这种共同理解有助于团队从被动合规转向主动优化,从而使您的云工作负载在设计上具有可持续性。可持续性成为核心非功能性要求 (NFR),与其他安全性、成本、性能和可靠性要求一样。
建议
如需提高对可持续发展问题的认识,并熟练掌握可持续发展实践,请考虑以下各部分中的建议。
提供业务背景信息,并说明与组织目标的一致性
可持续发展不仅仅是一项技术实践,还需要进行文化转变,使个人行动与组织的环境使命保持一致。当团队了解可持续发展计划背后的原因时,他们更有可能将这些计划视为核心原则,而不是可选任务。
纵观全局
帮助团队了解选择低碳区域或优化数据流水线等各项架构选择如何有助于组织实现总体可持续发展承诺。明确说明这些选择对当地社区和行业的影响。将抽象的碳指标转化为切实的指标,以衡量企业社会责任 (CSR) 目标的实现进度。
例如,以下消息会告知团队将工作负载迁移到低碳区域并使用节能型机器类型的决策带来的积极成果和高管认可。该消息会提及二氧化碳当量,这有助于您的团队了解碳减排措施的影响。
“通过将数据分析引擎迁移到 us-central1
低 CO2 区域,并将集群升级到基于 C4A Axion 的实例,我们从根本上改变了碳排放情况。这一转变使我们的数据分析引擎的碳强度降低了 75%,相当于本季度减少了 12 公吨二氧化碳当量。此次迁移对我们的业务目标产生了重大影响,并已纳入我们向董事会发送的第四季度简报中。”
传达财务和可持续发展目标
透明度对于将可持续发展实践与目标保持一致至关重要。在可行范围内,在整个组织内广泛分享可持续发展目标和进展情况。在年度财务报表中突出显示可持续发展方面的进展。这种沟通可确保技术团队将自己的工作视为组织面向公众的承诺和财务健康状况的重要组成部分。
树立命运共同体思维
向团队讲解云可持续性的协作性质。Google 负责云的可持续性,包括基础设施和数据中心的效率。您(客户)负责云端资源和工作负载的持续性。将这种合作关系定位为命运共同体,有助于强化这样一种认知:您的组织和 Google 携手合作,才能实现理想的环境成效。
提供基于角色的可持续发展培训
为确保可持续发展是一项实用技能而非理论概念,请根据具体职位量身定制可持续发展培训。数据科学家可使用的可持续发展工具和技术与 FinOps 分析师可使用的工具和技术大相径庭,如下表所示:
| 角色 | 训练重点 |
|---|---|
| 数据科学家和机器学习工程师 | 计算的碳强度:演示在旧版系统与专用 AI 加速器上运行 AI 训练作业之间的差异。重点介绍参数较少的模型如何以显著更低的能耗实现所需的准确度。 |
| 开发者 | 代码效率和资源消耗:说明高延迟代码或低效循环如何直接转化为更长的 CPU 运行时和更高的能耗。强调轻量级容器的重要性,以及优化应用性能以减少软件环境影响的必要性。 |
| 架构师 | 从设计上实现可持续性:重点关注区域选择和工作负载放置。展示了在编写任何代码之前,选择可再生能源百分比较高的 northamerica-northeast1)如何从根本上改变整个应用堆栈的碳排放概况。 |
| 平台工程师和运维工程师 | 最大限度地提高利用率:强调空闲资源和过度预配的环境成本。介绍自动伸缩和合理调整容量的场景,以确保高效使用云资源。说明如何创建和跟踪与可持续性相关的指标(例如利用率),以及如何将计算时间等指标转换为等效的碳排放指标。 |
| FinOps | 碳的单位经济效益:重点关注财务支出与环境影响之间的关系。展示 GreenOps 实践如何让组织跟踪每笔交易的碳排放量,从而使可持续性成为关键绩效指标 (KPI),其重要性与成本和利用率等传统 KPI 相当。 |
| 产品经理 | 将可持续性作为一项功能:演示如何将减碳目标纳入产品路线图。展示简化的用户体验如何帮助减少云资源和最终用户设备的能耗。 |
| 商业领袖 | 战略调整和报告:重点关注云可持续性如何影响环境、社会和治理 (ESG) 得分以及公众声誉。说明可持续发展选择如何帮助降低监管风险,以及履行对社区和行业的承诺。 |
倡导可持续发展并认可成功
为了实现长期进步,您需要超越内部技术修复,开始影响合作伙伴和整个行业。
让经理能够倡导可持续发展
为经理提供所需的数据和权限,以便他们像其他业务指标(例如产品上市速度和成本)一样优先考虑环境影响。当经理掌握这些数据后,他们会开始将可持续性视为一种质量和效率标准,而不是会减慢生产速度的锦上添花的功能。他们积极倡导采用新的云提供商功能,例如在特定区域提供更精细的碳排放数据和更新、更环保的处理器。
符合行业标准和框架
为确保可持续发展措施可信且可衡量,请使内部实践与公认的全球和区域标准保持一致。如需了解详情,请参阅根据行业指南调整可持续发展实践。
激励可持续发展工作
为了确保可持续性成为工程文化中持久的一部分,团队必须认识到优先考虑可持续性的价值。从高层目标过渡到具体的、可衡量的 KPI,以奖励改进和效率。
确定碳 KPI 和 NFR
将可持续性视为核心技术要求。当您定义碳排放 KPI 时,例如每百万次请求的二氧化碳当量克数或每次 AI 训练运行的碳排放强度,您就可以直观地了解可持续发展方面的影响,并采取相应行动。例如,将可持续发展纳入每个新项目的 NFR 中。换句话说,正如系统必须达到特定的延迟时间或可用性目标一样,系统还必须保持在已定义的碳排放预算范围内。
衡量付出回报率
帮助团队确定可带来高影响、只需付出少量努力的可持续发展措施,例如将批量作业转移到其他区域,而不是可能只带来极少收益的复杂代码重构练习。提供有关付出回报率 (ROE) 的可见性。如果团队选择更高效的处理器系列,他们必须确切了解与迁移到新处理器所需的时间和精力相比,他们避免了多少碳排放。
认可并庆祝碳减排
可持续性影响通常隐藏在基础设施的后台。为了推动可持续发展取得进展,请向整个组织展示取得的成功。例如,在监控信息中心内使用注释来标记团队部署特定可持续性优化措施的时间。通过这种可见性,团队可以在信息中心内指向数据,并因取得的成功而获得认可。
使可持续发展实践与行业准则保持一致
Google Cloud Well-Architected Framework 的可持续发展核心中的这一原则概述了行业准则和框架,您应根据这些准则和框架调整可持续发展工作。
原则概览
为确保您的可持续发展计划基于全球公认的衡量、报告和验证方法,我们建议您根据以下行业指南调整您的计划:
当您将可持续发展计划与这些共享的外部指南保持一致时,您的计划将获得投资者、监管机构和其他外部利益相关者所要求的可信度和可审核性。您还负责在各个工程团队中培养责任感,将可持续发展理念融入员工培训中,并成功将云运营纳入企业范围内的环境、社会和治理 (ESG) 报告承诺中。
W3C Web 可持续发展指南
W3C Web 可持续发展指南 (WSG) 是由 W3C 工作组开发的一套新兴的最佳实践框架,旨在解决数字产品和服务的环境影响问题。这些指南涵盖了数字解决方案的整个生命周期,包括业务和产品策略、用户体验 (UX) 设计、Web 开发、托管、基础设施和系统。WSG 的核心目标是帮助开发者和架构师构建能效更高、可减少网络流量、客户端处理和服务器端资源消耗的网站和 Web 应用。这些准则可作为关键参考点,帮助您将应用级可持续性与云级架构决策保持一致。
Green Software Foundation
Green Software Foundation (GSF) 专注于围绕可持续软件构建行业生态系统。其使命是推动创建经过精心设计、构建和运营的软件,以最大限度地减少碳足迹。GSF 开发了软件碳强度 (SCI) 规范,该规范为衡量任何软件的碳排放率提供了一个通用标准。与 GSF 保持一致有助于开发者将应用的效率直接与云环境的碳影响联系起来。
温室气体议定书
温室气体 (GHG) 核算体系是一套广泛使用的标准,用于测量、管理和公开报告温室气体排放量。该协议由世界资源研究所 (WRI) 和世界可持续发展工商理事会 (WBCSD) 合作制定。GHG 协议为企业气候核算提供了基本框架。碳足迹报告提供与云使用相关的排放范围的数据。如需了解详情,请参阅碳足迹报告方法。
遵守《温室气体议定书》有助于确保您的可持续发展计划具有可信度,并让外部方能够审核您的碳排放数据。您还可以帮助防止出现漂绿现象,并满足投资者、监管机构和外部利益相关者的尽职调查要求。经过验证和审核的数据有助于您的组织证明其责任,并建立公众对可持续发展承诺的信任。