什么是云数据出站成本以及如何降低该成本

Kevin Bogusch | 高级竞争情报分析师 | 2024 年 1 月 24 日

与数据出站的相关成本是很多企业在云迁移旅程早期阶段不得不面对的一笔意外支出。这是因为,虚拟机和存储等云技术服务的定价通常是固定的,而从云端移出数据的成本是变化的,而且常常还不可预测。

了解这一点后,很多企业常常考虑重构应用来减少网段之间的数据传输规模,无论是使用数据压缩和去重等技术,还是添加缓存层来减少通过线路传输的信息量。实施云迁移的企业的理想方案就是基于这些因素来设计应用,尽可能降低数据传输费用并增强应用性能。

什么是云数据出站?

云数据出站是指信息从云技术提供商网络传输到另一个位置。该位置可能是本地数据中心、位于另一区域的另一云数据中心、同一云技术服务的一个“可用性区域”(数据中心),甚至是同一数据中心中的另一虚拟网络。

选择使用的云技术提供商不同,数据出站的收费方式和额度可能也不同,甚至会存在巨大差异。因此,企业必须清晰了解哪些因素将影响数据出站费用。例如,一些云技术供应商提供多个云区域,每个云区域在一个严格界定的地理边界内设置多个数据中心。云技术服务一般提供丰富的云区域间网络连接性来保障具有高可用需求的跨区域应用运行。云技术供应商会计量从一个云区域向另一个云区域传输的数据,按照传输的数据量 (GB) 来收费。

可用性区域是另一个重要的云技术服务可用性概念。各云技术提供商对这个概念的称呼不太一样,有的称作“可用性区域”,有的只是称作“区域”。无论如何称呼,它都是通过在同一地理区域内设置多个分别采用不同网络和电力提供商服务的数据中心来避免同时失效。云技术提供商鼓励企业跨多个可用性区域来运行服务,实现高可用性,但却会计量可用性区域之间的数据传输并按数据量 (GB) 收费。

云数据出站成本很高吗?

企业将 IT 系统迁移到云计算模式可获得多重优势,例如释放现代云经济学价值、更快速优化 IT、提高可用性以及更早采用机器学习和人工智能等新兴技术。

然而,云经济学存在隐藏成本,即数据出站成本 — 它可能表现为多种形式。具体而言,云技术服务提供商会跟踪和计量企业从云端一个位置到另一个位置的网络流量,例如从云区域到云区域,从可用性区域到可用性区域,从一个虚拟网络到同一区域的另一个虚拟网络。

几乎所有时候企业都不需要为入站流量(即数据进入云端,也就是数据入站)付费,无论选择哪家云技术提供商,也无论流量规模有多大。相反,对于出站流量(即数据出站),无论是将数据传输到互联网、本地数据中心、办公室,甚至是另一个云区域,企业都需要按照相应的云技术提供商定价、服务以及网络路径评估数据出站费用。一般情况下,数据出站采用固定、分级的每 GB 定价模式,当流量超过一定级别后,企业可享受一定的价格折扣。

云数据出站流量包括从一个云虚拟机到另一个云虚拟机的标准网络流量,例如将数据从数据库移动到业务用户的电子表格,还包括(Web 网站或移动应用场景下的)云端托管式存储资产的相关流量。相比较而言,后者对于成本问题更为关键。云对象存储的一个常见应用是单独托管 Web 资产,以此实现 Web 资产与 Web 应用分离,增强性能和提高开发人员效率。在这一架构中,Web 站点直接从云对象存储(例如 Amazon Web Services (AWS) S3、Azure Blob Storage、Google Cloud Storage 或 Oracle Cloud Infrastructure (OCI) Object Storage)加载图像。换言之,图像文件以 HTTP 端点的形式存在,而不是存储在 Web 服务器中。当直接从云存储加载图像时,Web 应用就会产生云存储读取操作费用和将数据从云端传输到互联网的网络费用。

繁忙的 Web 应用可能采用位于多个云区域的多个实例,当将图像存储在一个位于偏远区域的云帐户中时,Web 应用就可能产生高昂的数据出站费用。相比可能使用内容分发网络 (CDN) 来降低成本和增强性能的主 Web 站点和主应用,新站点和快速增长的站点可能不会采用 CDN 技术,这也会导致高昂的数据出站费用。

以上只是一小部分云技术应用数据出站使用场景。虚拟机与数据库实例间流量、虚拟网络对等互连流量、面向 PaaS 服务的私有链接流量以及架构间流量都可能引发高昂的数据出站费用。

关键要点

  • 云数据出站成本取决于应用架构。企业可在设计系统时重点关注数据出站,充分利用特定技术来降低成本。
  • 在将系统迁移到云端时,了解数据移动将如何影响出站成本至关重要。
  • 云数据出站成本受云技术服务提供商和网络路径影响。
  • 对于面临高昂数据出站成本的企业,购买专用网络连接可能更有成本优势。
  • 云技术提供商对所有出站流量计费,包括存储和数据库等基于平台的服务的流量。

云技术提供商为何对数据出站收费?

云技术提供商之所以对数据出站收费,是为了覆盖可能高达数百万美元的(通往数据中心的)大型网络以及站点间带宽成本。2017 年,Microsoft 建设了一条长达 4104 英里的海底通信电缆来连接美国东海岸和西班牙,这种海底网络工程就是云技术提供商投资大型网络基础设施来连接数据中心的一个典型示例。

云技术提供商还会持续投资,以保障网络可靠性和网络性能,而数据出站费用也会用于支援这种投资。选择云技术提供商,企业无需制定复杂的计划,也无需与多个供应商合作就能获得一个全球网络。因此,云数据出站费用虽然令人懊恼,但却是企业在使用全球性公有云基础设施过程中不得不支付的一项成本。

云数据出站成本为何如此高昂?

公有云技术与本地部署明显不同的地方是,在公有云中,在一张发票上能看到所有费用。而在本地部署模式下,存储、服务器、网络组件和服务可能是企业在不同时期向不同供应商采购的,各有各的账单。此外,企业还要单独为数据中心的电力和冷却资源付费,为主机托管设施支付租金,购买各种软件和支持服务。因此,在一张发票上看到可解决以上所有问题的等量云技术服务费用,可能会给尚未做好准备的 IT 管理人员带来冲击。

此外,本地部署环境下的绝大多数费用是固定的,而公有云技术提供商会提供以可变成本为特色的多种计算解决方案。可变成本可以利好企业,因为它将随着企业计算需求的变化而变化,能够避免企业为不必要的资源付费。不过,尽管可变成本模式适用于云技术服务和变动需求,配置不当或设计缺陷仍然可能导致超出实际需要的云账单。

数据出站费用是如何计算的?

服务类型和云技术提供商不同,数据出站费用的计算方式也不相同。不过,基本计算流程是一样的。

  1. 每家云技术提供商都为服务部署了传感器来计量数据流量。
  2. 每个客户的数据出站流量通过传感器记录并按服务汇总所有云区域的流量。
  3. 某些情况下,客户可享受一定额度的“免费”数据出站,例如 100 GB。超出额度后,就会收取费用。
  4. 云技术提供商在月度计费周期结束时向客户开具数据出站费用发票。

为了直观了解,我们以 Web 站点为例说明。HTTP Archive 的 Web Almanac 报告显示,2022 年 6 月所有 Web 页面的中位数大小是 2315 KB。现在,假设一个云端托管的 Web 站点由中位数大小的页面组成,每月接受 10000 名访客访问,每位访客浏览 2 个页面。那么该 Web 站点每月的云数据出站流量为大约 44.2 GB,计算方式如下:

10000 x 2 = 20000

20000 x 2315 KB = 46300000 KB

46300000 KB / 1 GB (1048576 KB) = 44.155 GB

接下来,我们来看一些真实的云数据出站成本示例。第一个示例非常简单,它按照 Azure 2023 年 6 月 Web 服务器到互联网的数据出站定价来计算费用。

  1. 每月前 100 GB 出站流量免费。
  2. 100 GB 之后每 GB 定价为 8.7 美分。
  3. 10 TB (10240 GB) 出站流量的总成本为 882.18 美元。
  4. 超出 10 TB 但低于 50 TB 的部分每 GB 定价为 8.3 美分。超出 50 TB 后每 GB 定价为 7 美分。

第二个示例较为复杂,是一个 AWS 客户场景。开发人员将 1 TB 数据上传到 S3 存储桶,然后将 4 TB 数据传输到美国以外的 AWS 云区域,将 2 TB 数据传输到互联网。按照 AWS 2023 年 6 月的定价,成本计算如下:

  1. 数据存储成本为 23.55 美元。
  2. 入站数据传输免费,成本为 0。
  3. AWS 范围以内数据出站的成本为 81.92 美元(每 GB 定价 2 美分)。
  4. 面向互联网的数据出站成本为 184.32 美元(每 GB 定价 9 美分)。

在这个场景中,存储成本还不到每月总数据出站成本的 10%。这里的关键是理解一个应用/服务会产生多少流量以及所产生流量会消耗所使用服务多少成本。在上面的示例中,企业可对高容量 Web 站点使用内容分发网络 (CDN) 来降低直接传输到互联网的数据流量。相比每次都从云端传输同样的文件所产生的数据出站费用,CDN 能够在更靠近潜在用户的位置或 CDN 服务提供商网络中缓存数据文件,大大降低服务的净成本。

对于数据出站,Oracle Cloud Infrastructure 每月免费提供最高 10 TB 的数据出站流量。这意味着,面对与以上 AWS 客户相同的需求,OCI 客户每月只需支付 25.24 美元的数据存储费用。同样,面对以上 Azure 案例中高达 882.18 美元的 10 TB 网络出站费用,OCI 客户除了 VM 费用外无需再额外为数据出站付费。

监视和管理数据出站成本的 5 种方法

如以上示例所示,当需求增长时,数据出站费用可能会快速上涨。在这种不受制约的成本模型下,一旦发生配置错误(例如错误连接到一个跨地域复制存储帐户端点),云账单就可能失控。IT 团队该如何解决这个问题呢?

关键的一点是尽早确定云数据出站费用,尽可能降低成本。IT 团队可采取以下 5 种方法:

  1. 将成本意识融入系统设计过程。在系统设计过程中,IT 团队可通过多种方法来降低成本。最常见的方法是监视系统的出站网络流量。当发现一些系统的出站流量高企时,IT 团队可以评估并采用适当的方法来降低流量,例如尽可能减少数据传输、压缩网络流以及使用 CDN 等缓存技术。IT 团队还可以通过设置警报来第一时间发现出站网络流量异常 — 越早发现费用失控,企业就越能避免高昂的月末账单。
  2. 监视数据出站成本。所有云技术提供商都提供云技术服务费用管理 (CSEM) 功能来帮助企业监视当前支出。企业可以利用这一功能来跟踪数据出站成本。
  3. 使用成本中心标记云资源。所有云技术提供商还支持企业使用键值对(例如“成本中心:财务”)来标记云资源。这些标记一般应用于云自动化和会计,能够“级联”到云账单上,帮助 IT 部门跟踪各个应用和成本中心消耗了多少成本。
  4. 创建预算并设置预算警报。主流云技术提供商都支持企业连通预算和警报系统,由此在超出预定义成本时向管理员发送通知。这种方法尤其适用于那些早期成本不可预测的新项目。
  5. 在接近用户的位置存储数据。这一架构级方法显而易见有助于降低出站流量,然而当用户从云端数据库服务器向本地服务器运行报告时,依旧会发生大量的数据出站。在某些情况下,大容量的数据出站是不可避免的,尤其是在云迁移过程中。尽管如此,IT 团队仍需要高度关注数据存储位置和用户邻近性,提高性能和降低成本。此外,用户邻近性对于对象(例如 Web 图像)存储也十分重要。最后,IT 团队还可以使用缓存技术来降低出站数据量。

监视和管理数据出站成本的 5 种方法示意图
侧重于设计应用来改善应用设计,减少数据出站,然后监视系统行为,避免高昂的意外账单。

可最大限度降低云数据出站费用的 5 种方法

如何监视和管理出站费用是一个问题,如何降低出站费用则是另一个问题。想要降低出站成本,企业 IT 团队需要将目光转向技术体系,从更深层次着手。

1. 使用内容分发网络

CDN 可以一次性读取 Web 资产,然后将 Web 资产缓存到一个更靠近用户的边缘位置。当用户请求一张图像或一份文件时,CDN(而不是云端托管的 Web 服务器)将向用户提供图像或文件。CDN 的优势在于它不仅成本远低于数据出站,而且还能缩短加载时间。当然,使用 CDN 时 IT 团队可能要对应用进行小幅修改,但在几乎所有情况下这点代价在 CDN 带来的性能和成本优势面前都微乎其微。

2. 尽可能压缩网络流量

不是所有网络流量都能压缩,但基础设施流量(例如虚拟网络中的 VM 至 VM 流量)一般都能压缩,当然代价是 CPU 周期会略微增加。不过,这种 CPU 成本增加远远低于网络出站费用 — 相差高达多个数量级。

3. 谨慎选择云技术服务

很多云技术服务(甚至来自同一家云技术提供商)提供了近乎一样的功能。例如,在 AWS 上运行容器的方法就有近 20 种之多。由于不同方法在成本上可能相差极大,企业在规划阶段就应仔细评估每种方法的成本。

4. 使用专用网络连接

专用网络连接可能价格昂贵,但它支持企业无限制地通过私有链接来连接云技术提供商。对于拥有庞大且不可避免的云数据出站需求的企业,这一投资能够切实降低总拥有成本。

5. 将所有应用迁移到云

在混合模式下,混合使用本地部署系统和云端托管式系统,迁移到“全云”模式后能够有效降低数据出站流量 — 因为所有一切都位于一个位置。

企业在采取以上措施时可能会遭遇重重困难,尤其是对于生产型应用。某些情况下,应用工程师甚至需要实施重大变更。不过,这些措施往往能带来重大成本节省,让一切都“物有所值”。例如,企业在实施专用网络连接(例如 ExpressRoute 和 Direct Connect)时可能既要与云技术提供商协作,又要与网络提供商协同,但实施成功后,企业就能享受 Microsoft 和 Amazon 基于直连的数据出站价格折扣 — 相对于常规数据出站定价。

使用 OCI 尽可能降低云数据出站成本

云技术提供商不同,定价体系自然也不同。例如,Azure 会对虚拟网络间流量收费,即使两个虚拟网络位于同一个云区域。因此,企业务必要仔细评估数据出站成本,尤其是首次迁移和使用公有云技术时。

Oracle 充分了解企业面临的数据出站成本负担,致力于降低旗下云技术服务客户的数据成本。Oracle Cloud Infrastructure (OCI) 采用较低的网络定价方案,不仅支持企业低成本地移动海量数据,还能经济高效地满足需要频繁使用高带宽的服务的需求,例如实时视频流传输、视频会议和游戏。除了与其它云技术一样支持免费入站数据传输外,OCI 每月还提供高达 10 TB 的免费数据出站流量 — 大幅高于 AWS 的每月 100 GB 免费流量 — 能够帮助企业显著节约数据出站成本。此外,OCI 的出站带宽成本也低于 AWS(最高相差 25%),这对于具有高带宽需求的服务无疑是一个重大优势。

云客户不得不考虑的一个重要云经济学注意事项就是云技术服务和网络的数据出站带宽。数据出站带宽相关成本波动极大,会经常给企业带来云账单“惊吓”。云架构要考虑的一个更重要的方面是利用数据压缩、内容分发网络和缓存层等技术来尽可能降低数据出站成本。这些技术不仅有助于降低成本,还能显著提升站点/应用的性能。

当下 CFO 助推企业增长和提升盈利能力的 5 大举措

从使用 AI 技术推动企业变革到优化并购策略和构建协作式领导力,了解如何通过颠覆性策略来应对当下及未来的艰巨挑战,助推企业蓬勃发展。

云数据出站成本常见问题解答

云存储费用包含数据出站费用吗?

不包含。云存储成本受多重因素影响。第一个(也是最明显的)因素是存储帐户或存储桶中储存的数据量。第二个因素是计费周期内发生的数据读写操作次数。这两个因素都受数据层(热、温、冷或归档)影响:数据越热,读写事务相关成本越低,单位数量数据的存储成本越高。这些事务性费用和基于网络的数据出站的费用是独立的。

什么是云数据入站和数据出站费用?

入站和出站费用指的是数据传输产生的相关成本,包括跨云区域和跨可用性区域传输数据以及向/从互联网和本地网络传输数据。数据入站(向云技术供应商传输数据)一般免费,但所有提供商都会向数据出站(从云技术提供商传输数据)收费。数据出站费用基于出站数据量和数据位置(例如互联网、可用性区域以及其它云区域)计算且常常不受控制。换言之,数据出站费用是波动的,可能给云客户带来账单“惊吓”。

AWS 为何对数据出站收费?

与其他云技术提供商一样,AWS 对其大多数服务收取数据出站费用的目的是覆盖网络建设和维护成本。AWS 的服务定价中并不包含数据出站成本。这使得 Amazon 的虚拟机和存储桶等服务费用较低。对于具有高数据出站需求的应用,客户要单独为网络传输基础设施付费;对于传输数据量较低的应用,客户只需支付一小部分费用。

注:为免疑义,本网页所用以下术语专指以下含义:

  1. 除Oracle隐私政策外,本网站中提及的“Oracle”专指Oracle境外公司而非甲骨文中国。
  2. 相关Cloud或云术语均指代Oracle境外公司提供的云技术或其解决方案。