版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

存储是差距最大的组件

EC2 / S3 / EBS 是所有云服务的定价之锚。如果说 EC2/S3 定价还勉强能算合理,那么 EBS 的定价乃是故意杀猪。公有云厂商最好的块存储服务与自建可用的 PCI-E NVMe SSD 在性能规格上基本相同。然而相比直接采购硬件,AWS EBS 的成本高达 60 倍,而阿里云的 ESSD 则可高达 100 倍

评估因素本地 PCI-E NVME SSDAliyun ESSD PL3AWS io2 Block Express
容量32TB32 TB64 TB
IOPS

4K随机读:600K~1.1M4K

随机写 200K~350K

4K随机读:最大 1M

16K随机IOPS:256K
延迟

4K随机读:75us

4K随机写:15us

4K 随机读:200us

随机10:500us

上下文推断为16K

可靠性UBER<1e-18,折合18个9
MTBF:200万小时
5DWPD,持续三年

数据可靠性 9个9

存储与数据可靠性

持久性:99.999%,5个9(0.001% 年故障率)

io2 说明

成本31.5 ¥/TB·月
(5年均摊/3.2T MLC)

3200¥/TB·月

(原价 6400¥,包月4000¥)

3年预付整体打5折才有此价格

1900 ¥/TB·月

使用最大规格 65536GB

256KIOPS 最优惠状态

SLA5年质保换新Aliyun RDS SLA 可用性
99.99%:月费15%
99%:月费 30%
95%:月费100%
Amazon RDS SLA 可用性
99.95%:月费 15%
99%:月费 25%
95%:月费100%

常见的 3.2 TB 规格企业级 NVMe SSD 有着极为强悍的性能、可靠性与性价比,价格 ¥6000 元上下。

以 3.2TB 规格的企业级 PCI-E SSD 卡为参照基准,AWS 上售租比为 1个月,阿里云上为 9 天,租用此时长即可买下整块磁盘。若在阿里云以采购三年最大优惠五折计算,租用三年的时间可购买 19 块同款硬盘。

不同云存储服务的对比

云厂商会争论说块存储的对标物是 SAN,而本地 DAS 在云上的对标物应当是实例存储(Host Storage)。

公有云的实例存储基本都是临时性的( Ephemeral Storage),实例一旦休眠/停止就会回收抹除数据【7,11】,难以用于严肃的生产数据库,云厂商自己也建议你不要把重要数据放在上面。因此唯一能用于数据库的存储就是 EBS 块存储 (类似于DBFS之类的产品指标与成本与 EBS 基本类似,在此合并同类项)。

用户在意的不是设备块底下到底是 SAN,SSD,还是HDD;真正重要的永远是实打实的硬指标:延迟、IOPS,可靠性,成本。

有的“专家”又会说,云上的块存储稳定可靠,多副本冗余纠错。

在以前,Share Everything 的数据库要用 SAN 存储跑,然而现在很多数据库都是 Share Nothing 架构 了,在数据库实例层面进行冗余,不再需要存储层搞个几副本,更何况企业级磁盘本身就有极强的自我纠错能力与安全冗余( UBER < 1e-18 )。

在上层数据库本身已经有冗余的情况下,多副本块存储对数据库来说属于毫无意义的浪费。退一万步讲,如果云厂商真的用了多余的两副本来做无谓的冗余,那也不过是溢价率从 100x 降到 33x ,杀猪逻辑依然没有质变。

“专家”还会说,买“云服务”其实类似于买保险:“年化 0.02% 的故障看起来大部分人一次都遇不到,但是遇到一次就毁灭性的打击,而云厂商来为你兜底”。

听上去好像很有吸引力,但翻开各家云厂商 EBS 的 SLA,你会发现压根没有为可靠性兜底的条款。ESSD 云盘介绍上是写了 9个9 的数据可靠性,但他也不敢把这句话写到 SLA 里。云厂商敢兜的只有可用性,而且还是相当逊的可用性,以 AWS EBS SLA 【9】为例:

信息
如果一个月里挂一天半(95%),本月此项服务费补偿100%代金券,挂了7个小时(99%)补偿 30% 代金券,挂了几十分钟 (99.9%单盘,99.99%区域)补偿10%代金券。

对象存储和块存储对比

存储是有事实标准的:POSIX 文件系统 + 标准块存储。无论是数据库文件,图片音视频都使用同样的文件系统接口存储在磁盘上。但是 AWS 的“神之一手” 将其切分为两种不同的服务:S3 (简单对象存储)与 EBS (弹性块存储)。

S3 的全称 是 Simple Storage Service ,简单存储服务。它是文件系统/存储的一种简化替代:牺牲了强一致性、目录管理,访问时延等功能属性,以换取廉价的成本与海量伸缩的能力。它提供了一个简单的、高延迟、高吞吐扁平 KV 存储服务,从标准的存储服务中剥离出来。这个部分物美价廉,是公有云用来吸引用户上云的一大杀手锏:因此成为了可能是唯一一个在各家公有云通行的云计算事实标准。

而数据库需要的是低延迟,强一致、高质量、高性能、可随机读写的块存储,这一部分被包装为 EBS 服务:Elastic Block Store ,弹性块存储服务,这个部分成为了公有云厂商的 禁脔 :不愿为用户染指。因为EBS是 RDS 的定价之锚 —— 也就是云数据库的壁垒与护城河。 

RDS for PostgreSQL 为例, AWS 上 64C / 256GB 的 db.m5.16xlarge RDS用一个月价格 $25,817 / 月,折合每月 18 万元人民币,一个月的租金够你把两台性能比这还要好的多得多的服务器直接买下来自建了。租售比甚至都不到一个月,租十来天就够你买下来整台服务器。

阿里云存储费用参考

宽带线路类型及客户群体

线路类型计费方法适用客群
优质线路按固定带宽或流量计费使用的带宽小于 20Mbps 或带宽资源总量小于 10TB,且资源使用频率较低、用量偏低的客户
优质线路和稀缺线路按固定带宽计费开展金融业务、高端办公业务或临时需要提供重点保障服务的客户
大容量低价线路按“带保底的 95 峰值”带宽计费或按流量计费直播、视频客户,或者特别重视成本的大带宽用户
低价线路和灰色 IP 池按固定带宽或流量计费资源用量异常的“灰色客户”
普通线路使用任一计费方法常规客户

自建参考对比

常见服务器硬件成本

硬件名称参考配置硬件每月折旧硬件总价机房月租硬件每月运行成本硬件每月总成本虚拟化后的变化

机框+主板+电源

+散热器

双路主板+双电源

+三年保修

25012000100/月350/框不摊销第四年选购第三方维保服务
CPUIntel 6248*2125060000300/月40/核1550(40核)1:2 或 1:4 超卖
内存DDR4*768G87542000100/月1.25/GB975(768G)保留 20% 空置空间
固态硬盘480G*23115005/月0.04/GB36(960GB)

磁盘冗余和空置浪费空间

延迟分配节省空间

机械硬盘16T*258280030/月0.003/GB88(32TB)

磁盘冗余和空置浪费空间

延迟分配节省空间

25G网卡(带模块)

双口 CX5*2

含4个模块

115550010/月1.25/Gbps125(100Gbps)

*表中数据基于 2022 年云厂商流行服务器配置方式

  • 机房月租费用的核心部分是电费,计算电费时采用服务器日常运行时的功率,而不是说明书上的额定功率。电费按“每瓦功耗按每月收取一元计算”。
  • “机框+主板+电源+散热器” 指所有未在此表中被单独列出来的硬件。硬件每月折旧成本时用服务器总价减去几个主要硬件价格之和得到的,其机房月租费用时用服务器总功耗减去其它硬件功耗之和后再乘以电价得到的。
  • CPU 厂商会推广 OpenVINO、oneAPI 类的软件工具包,它们能替客户完成一些普通的底层编程工作,提高这类程序的运行效率。
信息
云主机的动态迁移过程中,为了完成新、旧云主机之间的内存数据同步,云主机系统必须有 50~200ms 的挂起和暂停,这会导致一些难以监控的业务逻辑错误。例如,在线视频会议平台通常会用一台云主机处理视频流,用另一台云主机处理音频流。如果云厂商在后台迁移了其中一台云主机,可能会导致这两台云主机出现时间不同步的问题,最终导致音画不同步。

目录