云原生数据仓库AnalyticDB PostgreSQL版 - AnalyticDB PostgreSQL发布实时物化视图、AUTO VACUUM等功能及部分优化
May 28 2021
云原生数据仓库AnalyticDB PostgreSQL版适用客户
Analytic Database for PostgreSQL使用者
新增功能/规格
新增:AUTO VACUUM功能,可以自动执行VACUUM命令。AUTO VACUUM将检查具有大量插入、更新或删除的表,并在需要的时候主动对表执行VACUUM来回收表中的垃圾数据,提升查询速度。默认情况下, 当表被删除行数超过一半时,AUTO VACUUM会对表执行VACUUM操作来清除垃圾数据。对于MULTI MASTER实例,当前暂时只能追踪主MASTER上发生的改动行为,辅助MASTER发生的改动行为将不会触发AUTO VACUUM;AUTO ANALYZE功能,可以自动执行ANALYZE命令。AUTO ANALYZE将检查具有大量插入、更新或删除的表,并在需要的时候主动对表执行ANALYZE来收集更新表的统计信息。当前默认情况下,当表改动行数超过10%时,AUTO ANALYZE会自动对表触发一次ANALYZE操作。对于MULTI MASTER实例,当前暂时只能追踪主MASTER上发生的改动行为,辅助MASTER发生的改动行为将不会触发AUTO ANALYZE;支持BRIN索引,BRIN(Block Range Index)即块级索引。其适用于AppendOnly压缩表,例如数据有序的表的大范围的选择查询,通过查询条件过滤掉不需要加载的数据块,从而减少I/O。在大数据集情况下,其相较于Btree等索引,在可以达到相近甚至超越的性能的同时,只需要很小的物理存储,并且索引生成代价远远小于Btree等索引;支持并行查询(Beta),新增rds_segment_expansion_coeff参数,Session级别,取值为整数类型,默认值为1。该参数可以为单条查询分配指定倍的核心数量、提升计算并行度,并通过优化器对查询进行进一步优化。该参数在低QPS场景下,对于执行时间较长(超过3秒)的计算密集型查询有线性提升,典型场景为单表聚合查询(TPCH Q1、Q6)、大表与小表的JOIN。对于I/O密集型查询和性能瓶颈为落盘的场景,提升有限。对于网络密集型查询,可能会影响性能;支持实时物化视图(Beta),云原生数据仓库AnalyticDB PostgreSQL版支持实时物化视图,实时物化视图与物化视图功能类似。但是当数据更新时,实时物化视图无需手动调用刷新命令进行刷新。 优化:可以通过集群地址进行事务块内(即BEGIN和ROLLBACK/COMMIT之间)DDL操作;可以通过集群地址进行会话级Temp Table,Temp View操作。















