本文将介绍如何选择分析型数据库 PostgreSQL版实例规格。

实例规格定义

分析型数据库PostgreSQL版实例的规格由下列参数决定

  • 存储类型

    该参数用于决定存储介质是SSD还是HDD,两种存储类型区别如下:

    • 高性能 SSD 存储:可以提供更好的 I/O能力,带来更高的分析性能。
    • 大容量 HDD 存储:可以提供更大、更实惠的空间,满足更高的存储需求。
  • 节点规格
    AnalyticDB for PostgreSQL 为 MPP 并行集群架构,实例有多个节点组成,每个节点的可选规格定义如下:(注:节点即为MPP架构下一个数据分区)
    节点(分区)存储类型 节点核数 内存 有效存储空间 双副本总空间 说明
    高性能 SSD 1 8GB 80GB 160GB 只适合低并发场景(<5并发),且节点数少于32个的场景;支持节点范围4-64个
    高性能 SSD 4 32GB 320GB 640GB 高性能SSD存储的主要推荐规格;支持节点范围 8-4096 个
    大容量 HDD 2 16GB 1TB 2TB 只适合低并发场景(<5并发),且节点数少于8个的场景;支持节点范围 4-32 个
    大容量 HDD 4 32GB 2TB 4TB 大存储 HDD 主要推荐规格;支持节点范围 8 - 1024个
  • 实例节点数

    一个实例由多个节点组成,每个节点即MPP架构下一个数据分区,单实例最多支持4096个节点。每个节点存储并处理一部分数据。MPP 架构下,存储空间随节点数线性增加,而查询响应时间 RT 不变。

说明 关于产品价格,请参见产品定价

实例配置选型原则

分析型数据库PostgreSQL版在创建或升级实例规格时,需要选择实例的存储类型单节点核数实例节点数。分析型数据库PostgreSQL版也支持OSS外部表的扩展,可通过gzip实现外部存储上的数据压缩,将不需要参与实时计算的数据存储到数据库外部以进一步节省存储成本。

  • 存储类型选择
    • 对于性能优先类场景,建议以SSD构建分析数据仓库实例;
    • 对于以数据存储类优先的场景,可以考虑 HDD类型。
  • 单节点核数选择

    每个节点会存储并处理每个用户表其中一个分片的数据,即MPP架构下一个数据分区。推荐核数配置为单节点4核;SSD存储单节点1核,只适合32节点内实例的低并发执行场景;HDD存储单节点2核,只适合8节点内实例的低并发执行场景。

  • 实例节点数选择

    分析型数据库PostgreSQL版采用MPP全并行架构,数据处理能力随实例节点数量增加而线性增长,保证数据量增加而响应RT时间不变。可以参照原始数据量及应用场景,选择适合的实例节点数。

行存储与列存储的选择

ADB PG在用户创建表时,支持指定的数据存储格式,即支持按行组织存储,也支持按里组织存储。

  • 当有较多数据更新操作或有实时写入的业务场景 (INSERT/UPDATE/DELETE ),建议采用行存储。

    对于1TB 原始数据,入库后采用行存储,大小一般还是在 1TB左右,考虑到索引、日志、以及在计算过程中会产生临时文件等,建议按2TB的用户数据空间来规划集群实例规格。若对查询性能要求较高,可以增加实例节点数,从而增加相应的CPU、内存等资源,提升查询性能。

  • 批处理ETL场景,其数据一般较少被更新(UPDATE/DELETE),数据为批量入库,同时查询以少量列的全表数据聚合关联为主,建议采用列存储。

    列存储支持较高的数据压缩率,可以达到 2-5倍的压缩比,即对于1TB原始数据,入库后若采用了列存储压缩设置,数据在0.5TB以内,那么可以按 1TB的用户数据存储空间来规划集群实例规格。

实例配置选型示例

如果有5TB的原始数据,针对高性能分析场景,并有100并发以上的查询,建议采用SSD存储类型,单节点4核,32个节点实例规格,那么将总计有 10TB 用户数据存储空间。

说明 2019年8月23日 AnalyticDB for PG 实例规格定义变更,由按“计算组”组成,改为由“节点”组成。一个“节点”对应一个MPP数据分区,较之前一个“计算组”包含多个数据分区, 简化规格定义,遵从集群数据库命名标准。计算组和节点的对应关系见实例节点规格与之前计算组规格的对应关系