更新时间:2025-12-18 GMT+08:00
分享

9.1.1.x版本说明

9.1.1.200版本(2025年11月)

表1 9.1.1.200版本新增功能

功能分类

功能

功能描述

参考文档

性能

优化哈希算法

多列hash join/hash agg合并为单列统一进行hash/match操作,整体提升TPC-H、TPC-DS性能。

通过GUC参数enable_combine_hash控制,控制hash join/hash agg算子是否使用combine hash算法优化,默认打开。该参数的生效前提为:group by列、join关联列或join probe侧非关联列都为多列。

enable_combine_hash

运行过滤器(Runtime Filter) 增强

Runtime Filter支持跨VW,另外整体性能TPC-DS 3000x 提升5%。

不涉及

Turbo引擎增强

聚合函数支持Turbo引擎,提升聚合函数场景性能。

当前支持Turbo引擎的聚合参数包括:sum,min,max,count,agg,uniq。

不涉及

翻页gather性能优化

深翻页Gather性能优化,针对Numeric、字符串及INT类型整体性能提升1倍以上

GUC参数late_read_thresholds新增第九个参数取值,表示topk采用value redistribute优化计划的内存估算阈值,取值范围为0~INTMAX,单位KB。设置为0时,表示topk禁用value redistribute优化计划。

late_read_thresholds

Plan Management自动绑定最优计划

Plan Management自动识别并选择最优计划进行绑定,防止出现由于计划跳变带来的执行劣化问题,保证业务稳定运行。同时支持计划定期自动清理,防止保存太多的计划占用的存储空间过大问题。

  • GUC参数planmgmt_options参数新增选项enable_plan_selection,表示为语句从多个可用的绑定计划中选择一个最优的计划。
  • 新增GUC参数planmgmt_selection_cost_threshold,当优化器为语句生成的计划不在baseline中,且计划的cost小于该参数设置的阈值时,则直接使用优化器生成的计划执行。
  • PG_PlAN_BASELINE系统表和SQL_PLAN_BASELINE视图新增status、cost、normalize_cost字段。
  • plan management管理函数新增pgxc_clean_plan(clean_period integer)、pgxc_create_auto_clean_plan_task(clean_period integer, clean_time timestamp without time zone, clean_interval interval)、 pgxc_alter_auto_clean_plan_task(clean_period integer, clean_time timestamp without time zone, clean_interval interval)、 pgxc_drop_auto_clean_plan_task() 等4个函数。

实时分析

开窗函数支持DISTINCT

部分窗口函数在partition场景下支持DISTINCT去重计数,兼容Oracle,支持的函数包括:count, sum, min, max, avg, array_agg, stddev/stddev_samp, variance/var_samp。

窗口函数

KAE(Kunpeng Accelerator Engine,鲲鹏加速引擎)实时入库增强

KAE是基于鲲鹏920系列处理器提供的硬件加速解决方案,包含了KAE加解密和KAE解压缩。KAE解压缩用于加速数据压缩、解压,可以显著降低处理器消耗,提高处理器效率。

通过GUC参数enable_kae_accelerate实现开启和关闭KAE加速,无需设置环境变量。

开启需将enable_kae_accelerate设置为on,需联系技术支持设置。

支持默认创建列存表

在不指定RELOPTIONS的情况下,可以自动创建hstore_opt表,提升客户建表便利性。

通过GUC参数column_default_format控制,设置为all_hstore_opt时除指定orientation=row外,默认创建为hstore opt表。

column_default_format

行列混存增强

新增支持列存3.0,支持Binlog,支持轻量化更新(Light Update)

使用DWS行列共存表

分区表优化

提升ALTER TABLE DROP分区,DROP分区表的性能,改善用户体验。提高IoT场景下分区表入库性能,提升实时场景竞争力。

新增GUC参数max_partition_per_table设置创建分区表的最大分区数;新增GUC参数cache_partition_options设置数据批量写入分区表时,系统是否会缓存最近一次分区结果。

GUC参数max_partition_per_tablecache_partition_options请联系技术支持。

湖仓一体

外表定义字段名称与数据schema自动映射

在读取Hive或其他远端数据场景下,当客户修改源端表字段定义后(例如增删列),DWS能自动进行修改后的字段更新映射,而不再报字段类型不匹配等错误,提升业务稳定。

  • 新增GUC参数enable_external_column_index_access参数,控制external schema外表字段与实际文件字段的匹配方式,默认开启,表示外表字段与文件字段按顺序匹配
  • CREATE FOREIGN TABLE (SQL on OBS or Hadoop) 语法中新增column_index_access参数,控制外表字段与实际文件字段的匹配方式。仅支持ORC和PARQUET格式只读外表。

安全

账户支持特殊字符

支持角色、用户名、数据库名中使用“@”"."等特殊字符或纯数字,满足客户对接其他系统的需求。

通过GUC参数behavior_compat_optionsiden_spec_char控制,设置此选项时,创建角色、用户、数据库时, 允许对应数据库对象名称中带有特殊字符。

该特性目前为商用Beta特性,如需使用,请联系技术支持。

behavior_compat_options

鲲鹏KAE加解密性能优化

使用鲲鹏硬件加速引擎实现SM2/SM3/SM4算法的高性能加解密能力,提升国密算法加解密函数、透明加密集群的性能。

通过GUC参数kae_options控制是否开启KAE引擎加速功能。默认取值encryption,开启。

kae_options

细粒度表级透明加密

  1. 支持行存表的表级别的透明加密能力,支持列存表的列级透明加密能力。
  2. 数据的加密粒度可以根据业务需求灵活地配置,同时能够降低对性能的影响。
  3. 支持密钥轮转,避免使用一个数据加密密钥带来安全问题
  4. 新增系统表PG_TDE存储透明加密密钥信息。
  5. 新增透明加密相关GUC参数tde_configtde_versiontde_cache_config
  6. 新增语法ALTER CLUSTER。
  7. ALTER TABLE/CREATE TABLE新增加密语法。

该特性目前为商用Beta特性,如需使用,请联系技术支持。

  • PG_TDE
  • GUC参数tde_configtde_versiontde_cache_config相关配置,请联系技术支持。
  • ALTER CLUSTER
  • ALTER TABLE
  • CREATE TABLE

基础质量

跨资源池级别的OBS IO管控

  1. 实现存算分离架构下对OBS IO资源的管控。
  2. 资源充沛的情况下按需调度,提升OBS IO资源利用率。
  3. 资源紧张的情况下,按分配的配额比例进行调度,高优先级优先调度。
  4. 新增GUC参数enable_obs_io_manager,设置是否开启OBS IO资源管控。
  5. xx_RESOURCE_xx、xx_SESSION_xx相关系统表、视图增加“obs_io_read_kbytes、obs_io_write_kbytes、obs_io_read_bps、obs_io_write_bps”等字段。
  6. ALTER/CREATE RESOURCE POOL语法新增参数“ obs_io_share=obs_io_share”资源池OBS IO权重。

该特性目前为商用Beta特性,如需使用,请联系技术支持。

等待视图增加内部线程状态信息

通过监控视图及时发现辅助线程异常状态,提高现网问题定位分析效率。

系统视图PG_THREAD_WAIT_STATUS

IO等待事件列表 新增“AuditWrite 审计日志线程写文件,

LogRead 日志线程读文件,LogWrite 日志线程写文件”。

PG_THREAD_WAIT_STATUS

内部连接优化

优化高并发场景内部连接的使用,将CN和CCN的通信线程改造为长连接,避免造成连接超限导致资源不受管控。

新增GUC参数cn_connection_policy,用于控制是否启用内部连接优化功能。

其中enable_wlm_cn_comm,表示启用内部连接优化功能,即在使用内部资源管控功能场景下与CCN进行通信时,所有的业务均使用固定通道与CCN进行通信,不占用额外的连接,避免导致CCN上连接数(线程数)过多的问题。默认启用。

cn_connection_policy

在线扩容

提升自助扩缩容成功率,减少耗时,优化性能。

扩容过程中,如果扩容线程长时间无法获取锁,系统将终止持有锁的对端线程以避免扩容失败和业务阻塞。如果该线程不在事务中,会自动重试,业务无报错;若该线程在事务中,连接会中断并报错,需业务侧重试。

该特性目前为商用Beta特性,如需使用,请联系技术支持。

集群扩容

Binlog分区级增量计算

分区表增量物化视图抽取增量时,根据分区条件缩减实际抽取的分区范围,不需要全表抽取增量,只处理有需要的分区,加速增量刷新的效率。

不涉及

主键重复相关检测视图

新增检测主键重复及清理相关函数。

  • 新增函数pgxc_get_duplicate_pk(tableName regclass)用于获取表上是否存在主键重复情况,要求查询的表上必须有主键。
  • 新增函数pgxc_delete_duplicate_pk(tableName regclass, doActualDelete bool)用于清理表上重复的主键,保留新插入的一条主键,要求查询的表是列存表且表上必须有主键。

实时数仓函数

支持库/schema级别的脏页率自检视图

新增PGXC_GET_ALL_TABLES_DIRTY_RATIO

视图获取当前数据库下所有HStore_opt表的cudesc表、delta表以及CU文件的脏页率以及大小信息。

PGXC_GET_ALL_TABLES_DIRTY_RATIO

用户态cache管理

OS cache后台自动清理,保证内存占用在于其范围内,提升数据库在高IO场景下的可靠性,解决cache阻塞式回收时发生集群异常问题。

新增GUC参数oscache_clean_policy,用于设置清理操作系统文件缓存的清理策略。

新增函数:

  • gs_table_oscache(regclass),查询表的数据文件在操作系统文件缓存中的缓存情况。
  • gs_table_freecache(regclass),清理指定表的数据文件的操作系统文件缓存。
  • gs_file_freecache(IN file_path TEXT),清理指定文件的操作系统文件缓存。
  • gs_filelist_freecache(IN filelist_path TEXT),清理指定文件中的文件列表的操作系统文件缓存。

9.1.1.100版本(2025年7月)

表2 9.1.1.100版本新增功能

功能分类

功能

功能描述

参考文档

弹性架构

弹性VW支持Analyze

弹性VW支持Analyze功能,有效降低主VW压力,提升系统扩展性。该功能由GUC参数analyze_options控制,当取值为analyze_on_vw,表示启用,默认开启。

analyze_options

弹性VW执行能力增强

支持更灵活的作业路由和更丰富的资源管控机制(索引点查、短查询场景除外)。

存算分离场景下按需弹性VW:高性价比地适应灵活多变的业务需求

实时分析

支持行列混存能力

支持表内行列混存能力(基于Hstore_opt表),全字段点查性能提升3~5倍,等效实现了行存压缩效果。

使用DWS行列共存表

HStore引擎实现Light Update能力

HStore引擎实现轻量化更新(Light Update)能力,实现宽表部分列更新场景下,入库性能提升3倍以上,领先同类产品;查询性能影响不超过20%,并保证数据最终一致性。

创建Hstore_opt表时指定enable_light_update参数开启,且确保控制全局的GUC参数enable_hstore_lightupdate_table(即是否支持创建轻量化更新的Hstore_opt表)已打开。

Copy模式入库支持volatile临时表

Copy模式入库支持volatile临时表,不记录到xlog日志,进一步提升攒批入库性能。

-

Autovacuum优化

Autovacuum时效性大幅优化,HStore引擎Delta表空间膨胀可控制在1倍以内。

-

Binlog优化

Binlog支持存算分离Hstore_opt V3表,支持PartialUpdate(部分更新)。

实时数仓Binlog

Binlog优化导出反查逻辑、CN/DN间全同步开销、辅助表空间清理逻辑等,性能提升约30%,辅助表空间缩减约35%。

-

直连DN入库支持一致性哈希算法

直连DN入库支持一致性哈希算法,已集成至dws-connector。

Flink SQL概述

开箱性能优化

开箱性能优化,标准benchmark性能提升30%,Turbo引擎SIMD优化、global runtime filter分布式执行等。

-

支持使用uniq语句改写count (distinct xxx)语句

精确去重count(distinct)支持自动转内置uniq函数,无需手动改写,提高SQL性能。

通过GUC参数rewrite_rule的count_distinct_rewrite_opt选项控制,默认开启该功能。

Filter下推增强

Filter下推新增支持int、numeric类型、大于、小于等表达式, 整体性能提升20%,优势场景下可提升3~5倍。

通过GUC参数enable_cu_predicate_pushdown 控制,启用后,能够普遍提升查询性能,尤其是在涉及bitmap_columns列和pck排序列时性能会显著提升。

新增支持CU的roughcheck的allmeet快速过滤,性能提升35%。

-

高可用

增加亚健康场景检测

增加网络延时、丢包等亚健康场景检测,可及时触发主备切换,提升系统可靠性。

-

从备数据支持自动转储OBS

从备数据支持自动转储OBS,降低故障场景下磁盘满的风险。

-

Parquet外表导出性能优化

Parquet外表导出性能优化,与ORC外表持平。

-

优化OBS接口

外表OBS接口调用优化,减少不必要的ListBucket、ListObject调用,对于文件数过多的场景性能显著提升。

新增系统表PG_DB_FILE用于存储OBS文件的文件信息。

新增视图GET_TABLESPACE_OBS_FILEPGXC_GET_TABLESPACE_OBS_FILE用于获取上一个表空间的PG_DB_FILE系统表上的全部文件信息。

高安全

审计日志增删改操作优化

审计日志增删改操作优化,补充insert overwrite、exchange partition等审计项。

-

审计日志转储OBS使用新机制

审计日志转储OBS使用新机制,避免极端场景部分丢失的问题。

-

湖仓一体

外表Analyze统计信息对接完善

外表Analyze统计信息对接完善,支持date类型等。

-

外表查询分区剪枝能力增强

外表查询分区剪枝能力增强,支持目录剪枝、元数据服务剪枝、分区信息剪枝三种方式。

-

运维&监控

在线扩容增强

V3表(带索引)、Delta表支持在线模式扩容重分布,业务可完全在线,约束与V2表相同。

集群扩容

查询过滤器增强

查询过滤器支持SQLHash方式的黑名单功能。

使用DWS查询过滤器拦截慢SQL

查询过滤器在已有规则拦截基础上,继续增加资源池切换、并发控制、限流可配置等场景能力,优化异常SQL过滤处理的灵活性。

Plan Management增强

Plan Management支持skew hint。

plan management

TopSQL视图增强

在TopSQL视图显示作业不能路由到弹性逻辑原因,新增视图显示每个逻辑集群运行结束的语句数量。

GS_WLM_SESSION_INFOGS_WLM_SESSION_HISTORYPGXC_WLM_SESSION_INFOGS_WLM_SESSION_STATISTICS等视图新增语句事务ID号gxid、语句增删改查对应的inserted_rows、deleted_rows、updated_rows、returned_rows等字段。

优化资源池管理白名单使用方式

优化资源池管理白名单使用方式,支持全匹配模式,放开spring的连接探活语句‘SELECT 1’以及SHOW/DISCARD/commit/rollback等语句。

-

优化分区统计信息

优化分区统计信息,合并执行时间,性能提升1倍。

-

Vacuum full优化

Vacuum full支持与并发业务互相让锁,可识别让锁优先级,并支持按事务块细化让锁操作。

-

自增分区优化

自增分区调度优化等锁让锁机制,解决自动增删分区的锁超时问题,管理面提供业务优先级配置能力。

-

智能运维

智能运维调度器优化自动vacuum full表调度顺序,解决vacuum full时磁盘不足自动放弃,脏页/小CU/冷分区或Obs表不处理等磁盘过载问题。

管理运维计划

支持V3表跨VW执行autovacuum

支持V3表跨VW执行autovacuum,不占用主VW资源。

-

非PCK表支持触发异步排序

非PCK表支持触发异步排序,替代小cu合并功能。

-

其他优化

升级行为变更

升级过程用户自定义对象不会再被级联删除。

-

相关文档