1、概述
阿里云原生数仓 AnalyticDB for PostgreSQL 与 AMD 新一代硬件深度优化,结合全自研计算引擎及行列混合存储实现性能升级,综合性能提升30%。结合丰富的企业级能力帮助企业构建离在线一体、流批一体综合数据分析平台,采用同一引擎即可满足离线批处理、流式加工,交互式分析三种场景,在开发运维、时效性及成本上具备更高的性价比。
2、性能优化路径
2.1硬件架构优化
2.1.1芯片性能提升
AMD 和阿里云联合打造的新一代硬件采用全新 CIPU 架构,处理器采用 AMD EPYC Genoa 处理器,可提供稳定的算力输出、更强劲的I/O引擎以及芯片级安全加固。
第四代 EPYC 较第三代 EPYC 性能提升显著,针对分析型数据库产品痛点在高算力、高内存带宽、低延迟等特点进行优化,可帮助企业用户在数据仓库、在线分析场景中具备更好的性能。
2.1.2计算能效提升
在性能功耗比方面,新一代服务器在相同核心数量下(对比搭载两个64核AMD EPYC9534和两个64核的AMD EPYC7763的服务器)整数性能提升约24%,浮点性提升约52%。可以用更少的服务器来完成同样的工作,或者用同样数量的服务器在相同的时间内完成更多的工作。
2.1.3安全性和隔离性提升
第四代 AMD EPYC 支持安全内存加密(SME)和安全加密虚拟化(SEV),将内存与拥有他的线程相关联,从而帮助击退旁路攻击;增加了SEV中加密上下文的数量,可以容纳更多的安全虚拟机。
通过 AMD 安全加密状态(SEV-ES)帮助保护虚拟机状态不受恶意或受损管理程序影响;还增加AMD安全嵌套分页(SEV-SNP)功能,以防止数据重放、内存重映射等攻击。
2.2数据库内核优化
2.2.1全自研计算引擎
AnalyticDB for PostgreSQL 全自研计算引擎为数据处理和交互式分析加速。它通过以下技术实现性能提速:
● 应用芯片向量化技术如 SIMD 指令集等把芯片的并行化计算能力利用到极 致。
● 采用 LLVM JIT 即动态编译优化,加速计算以提高数据处理效率。
● 自适应内存模型,根据计算模式动态选择行存/列存内存模型。
● 针对典型场景提供加速方案,比如针对 Runtime Filter 加速Join分析,字典特性加速低基数字段计算场景等。
2.2.2全自研行列混存
一份存储下即可支持实时高吞吐写入/更新和实时高聚合分析两种场景。
写入方面利用 Write Optimized Part 有效承接批量/流式数据并通过内部 Optimize 优化,将数据转化为更利于查询的 Read Optimized Part,从而实现有效的查询性能。利用 Metadata 实现高并发 Update/Delete。
支持基于 Btree 索引的强主键模型,在写入数据时实现有效准确去重。在实时写入场景中单 CPU Core 可达到10万行/秒的写入性能。
支持 Upsert 功能在产生主键冲突时用户可根据实际业务需要灵活地选择忽略更新、覆盖更新或是条件更新模式。
在查询方面存储引擎无缝兼容多种索引类型如 Btree , GIN , GIST 和 自研向量检索索引,可以实现任意维度的高性能点查,全文检索和向量检索。
2.2.3资源隔离增强
支持混合负载实现资源最 大化利用,可同时承载流式写入,数据加工,交互式分析三类任务。
引擎通过资源组实现资源管理,相对使用资源队列更精细化、管理资源类别更全面。
它支持对CPU、内存按照业务优先级设置资源隔离策略,支持动态配置,配置即生效不需要重启引擎,大大减轻运维压力。
2.2.4安全能力增强
完善和增强安全能力:
● 网络连接安全,支持 SSL TLS1.1/1.2/1.3加密算法,满足最 新的网络安全要求。
● 存储安全,支持云盘加密实现数据加密存储。
● 加密算法,支持非对称加密和对称加密算法如 SM4。
● 支持行级和列级权限管控,做到最细权限粒度控制和最小化敏感数据访问。
● 动态数据脱敏,引擎级支持对敏感字段设置脱敏规则,实现敏感信息过滤和保护。
● 支持 SQL 审计可对 SQL 操作明细进行审核。支持事件审计可实现对异常行为追溯。
3、测试结果
性能测试采用国际标准 TPC-H 测试集进行,实验组搭载 AMD EPYC Genoa 服务器 ,对照组集群搭载同等规格下的其它主流硬件。
3.1测试资源
3.2测试过程
3.3测试总结
采用国际标准 TPC-H 测试集以及在同等运行环境下,AnalyticDB for PostgreSQL 采用 AMD EPY 服务器较比常规主流服务器平均性能提升32.7%。
4、优势及应用场景
4.1离在线一体分析
AnalyticDB for PostgreSQL 在 AMD 硬件加持和全自研计算引擎及存储助力下,可同时提供稳定有效的离线批处理和高性能在线报表分析能力,具备高性价比:
● 数据加工后即可为下游报表工具或系统提供在线数据分析服务,避免在多引擎中同步数据造成数据不一致和时效性低的问题。
● 全自研引擎实现高性能交互式分析,行列混合存储可实现有效的IO裁剪,加速多维组合分析。
● 支持实时物化视图实现高并发报表查询。
4.2海外数仓平滑迁移
SQL语法全覆盖并且支持自定义函数和存储过程。高度兼容 Greenplum/Redshift/Synapse/Snowflake 语法。
可覆盖海外云数仓产品企业级能力,在安全能力、资源隔离、容灾等方面实现加强。在实时分析、交互式分析能力上较比海外数仓功能及性能更好,更具性价比。
4.3流批一体实时数仓
自研业界领先流批一体引擎让用户在数仓内即可开发流式任务,支持对批和流任务进行细粒度的资源隔离。
● 可消费 Kafka/Flink/DTS 实时数据源,支持高吞吐流式数据写入。
● 支持增量实时物化视图同步和异步刷新,可实现实时多表关联(支持左连接和右连接)、全量历史数据回溯、流和批表关联。
● 可支持实时 Ad-hoc 查询,满足实时报表分析和下游应用系统高时效性数据需求。
5、开启方式
新购实例优先开启AMD形态。在选择地域时,建议用户勾选“北京、上海、杭州、深圳”地域开启实例。