你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
可以使用 Azure 托管磁盘 创建 Azure Database for PostgreSQL 灵活服务器实例,这些磁盘由 Azure 管理并用于 Azure 虚拟机。 托管磁盘类似于本地服务器中的物理磁盘,但它们是虚拟化的。 使用托管磁盘时,只需指定磁盘大小、磁盘类型并预配磁盘即可。 预配磁盘后,Azure处理其余部分。 Azure Database for PostgreSQL灵活服务器实例支持高级固态硬盘(高级 SSD)和高级固态硬盘版本 2(高级 SSD v2),定价是根据预配的计算、内存和存储层计算的。
高级 SSD
Azure高级 SSD 为具有输入/输出(IO)密集型工作负荷的虚拟机(VM)提供高性能和低延迟磁盘支持。 高级 SSD 单元适用于任务关键型生产应用程序。
高级 SSD v2
高级 SSD v2 提供比高级 SSD 更高的性能,同时作为一般规则,成本也更低。 可以随时调整高级 SSD v2 的性能(容量、吞吐量和每秒输入/输出操作,即称为 IOPS)。 能够进行这些调整,使工作负荷经济高效,同时满足不断变化的性能需求。 例如,事务密集型数据库可能需要在几天内处理大量 IOPS。 或者游戏应用程序可能仅在高峰时段要求更高的吞吐量。 因此,对于大多数常规用途工作负载,高级 SSD v2 可以提供最佳性能。 现在可以在所有受支持的区域中部署具有高级 SSD v2 磁盘的Azure Database for PostgreSQL灵活服务器实例。
高级 SSD 和高级 SSD v2 之间的区别
与高级 SSD 不同,高级 SSD v2 没有专用大小。 可以根据工作负载要求将高级 SSD v2 磁盘设置为任何大小,并进行精细调整。 这些细粒度的增量可以以 1 GiB 为单位进行。 高级 SSD v2 不支持主机缓存,但提供的延迟仍然低于高级 SSD。 高级 SSD v2 容量范围为 1 GiB 到 64 TIB。
下表对Azure Database for PostgreSQL灵活服务器实例支持的磁盘类型的不同方面进行了比较,以帮助确定哪种磁盘更适合你的需求。
| 高级 SSD v2 | 高级 SSD | |
|---|---|---|
| 磁盘类型 | SSD | SSD |
| 情景 | 始终需要低延迟、高 IOPS 和吞吐量的生产与性能敏感型工作负载。 | 适用于生产环境和对性能敏感的工作负载。 |
| 最大磁盘大小 | 65,536 GiB | 32,767 GiB |
| 最大吞吐量 | 1,200 MB/秒 | 900 MB/秒 |
| 最大 IOPS | 80,000 | 20,000 |
默认情况下,高级 SSD v2 在每个区域的每个订阅中提供高达 32 TiB 的容量,但通过请求可支持更高的容量。 若要请求增加容量,请请求增加配额或联系 Azure 支持。
Azure Database for PostgreSQL服务为高达 399 GiB 的磁盘提供 125 MB/秒的基线吞吐量,对于超过 400 GiB 的磁盘提供 500 MB/秒的基线吞吐量,无需额外付费。 超出免费层的吞吐量需额外付费。
预配的存储是Azure Database for PostgreSQL灵活服务器实例可用的存储容量量。 此存储用于数据库文件、临时文件、事务日志和 PostgreSQL 服务器日志。 预配的总存储量也定义了可供服务器使用的 I/O 容量。
| 磁盘大小 | 高级 SSD IOPS | 高级 SSD v2 IOPS |
|---|---|---|
| 32 GiB | 预配 120;高达 3,500 | 前 3000 次 IOPS 免费,可扩展至 17179 |
| 64 GiB | 预配 240;高达 3,500 | 前 3000 次 IOPS 免费,可扩展至 34359 |
| 128 GiB | 预配 500;高达 3,500 | 前 3000 个免费 IOPS 可纵向扩展到 68719 个 |
| 256 GiB | 预配 1,100;高达 3,500 | 前 3000 次 IOPS 免费,可扩展至 80000 |
| 512 GiB | 预配 2,300;高达 3,500 | 前 12000 次 IOPS 免费,可扩展至 80000 |
| 1 Tebibyte (1 TiB) | 5,000 | 前 12000 次 IOPS 免费,可扩展至 80000 |
| 2 Tebibyte (2 TiB) | 7,500 | 前 12000 次 IOPS 免费,可扩展至 80000 |
| 4 TiB | 7,500 | 前 12000 次 IOPS 免费,可扩展至 80000 |
| 8 TiB | 16,000 | 前 12000 次 IOPS 免费,可扩展至 80000 |
| 16 TiB | 18,000 | 前 12000 次 IOPS 免费,可扩展至 80000 |
| 32 Tebibytes (TiB) | 20,000 | 前 12000 次 IOPS 免费,可扩展至 80000 |
| 64 TiB | N/A | 前 12000 次 IOPS 免费,可扩展至 80000 |
下表概述了高级 SSD v2 磁盘容量和性能上限,方便你确定使用哪种磁盘。
| SSD v2 级磁盘大小 | 最大可用 IOPS | 最大可用吞吐量 (MB/s) |
|---|---|---|
| 1 GiB 到 64 TiB | 3,000 到 80,000(每 GiB 递增 500 IOPS) | 125-1,200(根据设置的 IOPS 按 0.25 MB/秒递增) |
虚拟机类型还具有 IOPS 限制。 尽管可以选择独立于服务器类型的任何存储大小,也可能无法使用存储提供的所有 IOPS,尤其是在选择的服务器的 vCore 数量较少时。
若要了解详细信息,请参阅 Azure Database for PostgreSQL 中的
注释
无论分配给实例的存储类型如何,存储只能纵向扩展,而不是纵向扩展。
可以在 Azure 门户或使用 Azure CLI 命令监视 I/O 消耗量。 要监视的相关指标是存储上限、存储百分比、已用存储和 I/O 百分比。
磁盘已满条件
当磁盘已满时,服务器将开始返回错误,并阻止任何进一步修改。 达到限制还可能导致其他操作活动出现问题,例如备份和预写日志 (WAL) 存档。 可以通过不同的方法避免磁盘空间已满的情况:
- 为避免这种情况,当存储使用率达到 95% 或可用容量小于 5 GiB 时,服务器会自动切换到只读模式。 如果使用高级 SSD 存储类型,可以使用存储自动增长功能或纵向扩展服务器的存储,来避免出现此问题。
- 如果服务器由于磁盘完整条件被标记为只读,则可以删除不再需要的数据。 为此,可以执行以下命令,将模式更改为读写,完成后,可以执行 delete 命令。
SET SESSION CHARACTERISTICS AS TRANSACTION READ WRITE;
建议使用storage_percentage或storage_used指标主动监视正在使用的磁盘空间,并在存储中耗尽可用空间之前增加磁盘大小。 可以设置警报,从而在服务器存储接近磁盘不足状态时收到通知。 有关详细信息,请参阅 使用 Azure 门户针对 Azure Database for PostgreSQL 的指标设置警报。
价格
有关最新定价信息,请参阅Azure Database for PostgreSQL灵活服务器定价。
Azure门户还会根据所选选项显示服务器配置的每月成本估算。
可以在新 Azure Database for PostgreSQL 灵活服务器页面上看到贯穿于整个服务器创建过程中的估算。
如果在现有实例的资源菜单中的“设置”部分下选择“计算 + 存储”,则还可以查看现有服务器的估算:
如果没有Azure订阅,可以使用Azure定价计算器获取估计价格。 在 Azure 定价计算器网站中,选择 Databases 类别,然后选择Azure Database for PostgreSQL将服务添加到估计,然后自定义选项。
相关内容
- 使用 Azure 门户Manage Azure Database for PostgreSQL。
- Azure Database for PostgreSQL 的限制。