本文介绍PolarDB PostgreSQL版(兼容Oracle)的产品功能动态,分别为内核小版本、控制台、时空数据库和API的更新说明。

说明 您可通过如下语句查看PolarDB PostgreSQL版(兼容Oracle)的内核小版本的版本号:
show polar_version;

2022年9月

内核小版本(V1.1.26)

类别名称描述相关文档
新增PLV8插件PLV8是PostgreSQL数据库受信任的JavaScript语言扩展。可以使用JavaScript来编写PostgreSQL数据库函数。PLV8
支持DBMS_METADATA通过DBMS_METADATA提供的方法获取数据库对象的元数据信息,用于重建数据库中的对象。DBMS_METADATA
支持nls_timestamp(_tz)_format支持nls_timestamp(_tz)_format时间显示格式。nls_timestamp(_tz)_format
支持登录登出触发器登录登出触发器是一种事件触发器,提供了可以在用户登录/登出时触发指定函数或存储过程的功能。登录登出触发器
批量写入支持全部写到缓存新增polar_enable_strat_bulkwrite参数,用于控制session写入的数据占用缓存(cache)空间的大小,默认值为true,取值如下:
  • true:与原生PostgreSQL行为完全一致。每个session写入的数据只允许占用部分缓存空间。
  • false:session写入的数据允许使用全部的缓存空间。
说明
  • 通常情况下,该参数保持默认值true即可。可以保证每个session都有一部分专属缓存空间,不会将其他session的缓存数据淘汰掉。
  • 建议将参数值设为false的场景:希望批量写入数据的数据全部都在缓存,读取这部分数据时基本都可在缓存命中,减少读盘次数。
    建议与polar_enable_strat_scan参数一同使用,将两者的值都设为false,数据既可以写入到全部的缓存空间,也可以读取到全部的缓存空间。
    set polar_enable_strat_bulkwrite = false; -- 允许写入全部缓存空间
    set polar_enable_strat_scan = false; -- 允许读取/加载到全部缓存空间
聚集函数下支持ORDER BY子句当存在聚集函数,但不存在分组子句,支持ORDER BY子句。
  • 语法
    SELECT aggfunc(xx) FROM yy ORDER BY any target;
  • 开启方法

    在控制台中将polar_enable_aggfunc_allowed_sort_target参数设置为on

ORDER BY 子句
ORDER BY支持识别distinct表达式支持在ORDER BY子句中识别distinct对象组成的表达式。
  • 语法
    SELECT distinct xx, yy FROM zz ORDER BY expr(xx, yy);
  • 开启方法

    在控制台中将polar_enable_distinct_order_by_expr参数设置为on

ORDER BY识别带别名的表达式支持在ORDER BY子句中识别带有别名的表达式。
  • 语法
    SELECT xx yy, mm nn FROM zz ORDER BY expr(yy,nn);
  • 开启方法

    在控制台中将polar_enable_order_by_use_alias_expr参数设置为on

说明 开启后,如果SELECT中的对象别名与FROM子句中的表的列名重复,则ORDER BY子句会优先将重名对象识别为SELECT中的对象。
历史兼容性功能全部开启PolarDB PostgreSQL版(兼容Oracle)新建集群默认开启以下参数:
  • polar_comp_redwood_greatest_least
  • polar_comp_redwood_strings
  • polar_enable_rownum_connectby_operator
  • polar_enable_rownum_rewrite_for_write
  • polar_plsql_auto_unpin_failed_portal
  • polar_plsql_auto_unpin_failed_portal_stmt_tx
  • polar_enable_inline_cte
  • polar_enable_comp_numeric_format
需要通过控制台开启以下参数:
  • polar_handle_substrb_utf8_truncation
  • polar_enable_base64_decode

时空数据库(V4.9)

类别名称描述相关文档
新增ST_Intersection聚合函数支持将Geometry对象数组聚合操作。ST_Intersection
ST_AddZ函数支持传入Z坐标数组作为参数,将Geometry 2D/3DM转为Geometry3D/4D。ST_AddZ
ST_SetValue函数支持指定像素位置设置像素值,以及按照指定几何对象空间范围设置像素值。ST_SetValue
优化S​T_ExportTo函数支持将Raster对象导出为cog文件。S​T_ExportTo
ST_CreateRast函数支持将规则的网格点多条记录或者数组转换为栅格对象。ST_CreateRast
ST_Split函数按照时间切分时,支持指定开始时间,并支持按轨迹点序号切分。ST_Split
ST_Union函数支持按内存使用量分批次执行,避免大数据量造成OOM。ST_Union
ST_CreateRast函数支持基于HDFS栅格数据创建。ST_CreateRast
ST_ImportFrom函数支持基于HDFS栅格数据导入。ST_ImportFrom
S​T_ExportTo函数支持栅格数据导出到HDFS文件系统。S​T_ExportTo
缺陷修复修复ST_makeTrajectory函数可能会崩溃的问题。
修复ST_lcsSimilarity函数无法识别以天为单位的时间段问题。
修复ST_AsEWKB函数无法转换从数据表中构建出的轨迹问题。
修复ST_BuildPyramid函数,解决超大数据构建矢量金字塔时的内存占用问题。

2022年8月

内核小版本(V1.1.25)

类别名称描述相关文档
新增pgAudit插件支持pgAudit插件,提供生成审计日志的能力。pgAudit
支持DBMS_UTILITY.FORMAT_ERROR_BACKTRACE新增DBMS_UTILITY.FORMAT_ERROR_BACKTRACE函数,用于返回异常抛出位置的调用堆栈的格式化内容。DBMS_UTILITY
支持直接修改视图的基础表类型当基础表上建有简单视图,支持直接修改基础表列的数据类型。ALTER TABLE
支持dml from subquery功能

支持在DML(INSERTUPDATEDELETE)语句中使用子查询。

可以通过polar_enable_dml_from_subquery参数开启或关闭dml from subquery功能。默认值为true,取值如下:
  • true:开启该功能。
  • false:关闭该功能。
DML支持GLOBAL PARTITIONED INDEX SCAN支持使用GLOBAL PARTITIONED INDEX SCAN进行DML操作。DML支持GLOBAL PARTITIONED INDEX SCAN
大小写不敏感新增大小写不敏感功能,开启大小写不敏感功能后,对于无双引号、双引号+全大写和双引号+全小写的数据库对象被视为等价。大小写不敏感
新增Oracle内置函数PolarDB PostgreSQL版(兼容Oracle)新增以下Oracle内置函数:
  • to_timestamp/to_char/to_date(.., nlsparam)
  • wm_concat
  • bitand/bitor
  • to_dsinterval/to_yminterval
默认安装已有插件PolarDB PostgreSQL版(兼容Oracle)默认安装以下插件:
  • polar_from_tz
  • polar_nlssort
  • polar_regexp_like
  • polar_utility
  • sys_guid
  • polar_constraint
  • polar_parameter_check
  • polar_worker
  • roaringbitmap
  • polar_csn
说明 其中前6个插件为兼容性插件。

2022年7月

内核小版本(V1.1.24)

类别名称描述相关文档
新增plan_cache_mode新增plan_cache_mode参数,表示允许设置计划缓存模式。默认值为auto,取值如下:
  • auto:表示自动从custom/generic两种模式中选择。
  • force_custom_plan:表示强制使用优化器生成的custom plan。
  • force_generic_plan:表示强制使用计划缓存中的generic plan。

时空数据库(V4.7)

类别名称描述相关文档
新增ST_makeTrajectory函数支持将表格中的行转化为轨迹。ST_makeTrajectory
ST_AsTable函数支持将轨迹转化为表类型。ST_AsTable
缺陷修复修复栅格数据操作时,匿名临时表无法自动删除的问题。

2022年6月

内核小版本(V1.1.23)

类别名称描述相关文档
新增支持DBMS_SQL.define_array。DBMS_SQL包增加了DEFINE_ARRAY存储过程。DBMS_SQL
支持同时使用%TYPE和:=指定默认值。存储过程中支持同时使用%TYPE和分配运算符:=指定默认值。在变量声明中使用%TYPE
Global Partitioned Index支持全局分区索引,支持在分区表上创建全局分区索引。创建GLOBAL INDEX
pg_hint_planpg_hint_plan插件通过特殊的注释语句提示来调整既定的执行计划。pg_hint_plan
优化resource manager内存释放过程性能优化
  • 新增mem_release_policy参数,表示内存释放策略。默认值为default,取值如下:
    • default:表示当数据库超限后,RM启动自适应策略,此参数不能与其他参数合并使用,按照resource manager默认策略进行内存释放。进程分为idle进程数组和active进程数组,优先对idle进程进行内存释放,然后再对active进程进行内存释放。
    • cancel_query:只对active进程进行取消查询操作。
    • terminate_idle_backend:停止用户idle进程。
    • terminate_any_backend:停止任意用户进程。
    • none:不做任何操作。
  • 新增total_memcontext_dump_rate参数,表示memory context信息输出阈值。默认值为75,取值范围:20~95,重启或者reload生效。
  • 新增max_proc_mcxtdump_num参数,表示memory context信息输出的进程数。默认值为1,取值范围:1~100,重启或者reload生效。
  • 新增interval_max_num参数,表示memory context信息输出的间隔数。默认值为0,取值范围:0~INT32_MAX,重启或者reload生效。

2022年3月

内核小版本(V1.1.22)

类别名称描述相关文档
新增隐式类型转换新增隐式类型转换功能,以兼容Oracle的隐式转换矩阵,且数字类型支持高精度到低精度的转换。
PX Analyze功能
  • 新增polar_px_enable_explain_all_stat参数,用于并行查询场景下,配合explain analyze命令打印出每个worker的执行情况,包括每个worker处理的tuple数量,耗时等。
  • 新增polar_px_explain_memory_verbosity参数,用于并行查询场景下,配合explain analyze命令打印每个worker的内存使用情况。取值如下:
    • summary :汇总性的打印worker内存使用情况。
    • detail : 详细打印每个worker内存使用情况。
gtt支持修改列类型全局临时表支持ALTER语句。
port线下支持clang支持clang编译。

时空数据库(V4.6)

类别名称描述相关文档
新增对象存储服务路径栅格数据新增支持用户自建的Minio服务器访问。对象存储服务路径
ST_PointValues函数新增栅格ST_PointValues函数返回所有波段像素值。ST_PointValues
缺陷修复修复栅格ST_Clip函数波段顺序错误的问题。
修复栅格更新时由于缺少主键索引导致性能较低的问题。
修复轨迹从OSS读取数据失败时支持重试。

时空数据库(V4.5)

类别名称描述相关文档
新增新增Ganos支持PostgreSQL 14系列。
优化增强外部存储的轨迹对象增加缓存,提升访问性能。
缺陷修复修复栅格数据导出到OSS会缺少文件后缀的问题。
修复栅格对部分数据统计时失败的问题。

2022年01月

内核小版本(V1.1.20)

类别名称描述相关文档
新增支持表的闪回删除新增闪回删除功能,可以快速恢复已经删除的表,以及查看和清理回收站。闪回删除
OPT_PARAM Hint功能扩展增加了OPT_PARAM Hint在SQL级别指定特定的参数值。OPT_PARAM Hints
PX多级分区表支持多级分区的并行查询。对分区表使用跨机并行查询
DML use GLOBAL INDEX支持使用GLOBAL INDEX SCAN进行DML操作。DML支持GLOBAL INDEX SCAN
支持GBK/GB18030编码支持GBK/GB18030服务器编码格式。指定服务器编码格式

时空数据库(V4.4)

类别名称描述相关文档
新增ST_LinearStretch函数新增ST_LinearStretch函数,将影像进行线性拉伸,作为一个新的raster返回。ST_LinearStretch
ST_BuildPercentiles函数新增ST_BuildPercentiles函数,统计影像的像素值百分比。ST_BuildPercentiles
ST_ComputeStatistics函数新增ST_ComputeStatistics函数,一次性计算栅格数据的统计值,直方图以及百分比。ST_ComputeStatistics
ST_Percentile函数新增ST_Percentile函数,获取影像的像素百分比。ST_Percentile
优化并行计算ST_SummaryStats和ST_BuildHistogram函数支持并行计算能力。
ST_ExportTo函数ST_ExportTo函数在导出数据时,如果目标文件已存在,返回false取代报错消息。
ST_ImportFrom函数ST_ImportFrom函数在导入数据时出错,会返回具体的错误详情方便排查错误原因。ST_ImportFrom
缺陷修复修复栅格裁剪时由于四舍五入可能会有半个像素丢失的问题。
修复由于栅格数据带有NANINF等数据,在导入和统计值会出错的问题。

2021年12月

内核小版本(V1.1.19)

类别名称描述相关文档
新增sql mappingPolarDB PostgreSQL版(兼容Oracle)支持SQL映射功能,将错误的SQL映射为正确的SQL,从而避免由于错误SQL引起的问题。polar_sql_mapping
PX支持并行Update跨机并行查询支持并行update,包括带子查询的update。
通过设置polar_px_enable_update参数,开启或关闭该功能,默认值为false。
  • 设置为true时,表示开启并行update功能。
  • 设置为false时,表示关闭并行update功能。

通过设置polar_px_update_dop_num参数,控制并行update的并发数,默认为6,范围为1~128。

通过设置polar_px_enable_remove_update_redundant_motion参数,控制当读写worker数相同的情况时,是否移除多余的motion算子,默认为false。
  • 设置为true时,表示开启移除多余motion算子的功能。
  • 设置为false时,表示关闭移除多余motion算子的功能。
跨机并行查询
PX支持并行Delete跨机并行查询支持并行delete,包括带子查询和不带子查询的并行delete。
通过设置polar_px_enable_delete参数,开启或关闭该功能,默认值为false。
  • 设置为true时,表示开启并行delete功能。
  • 设置为false时,表示关闭并行delete功能。

通过设置polar_px_delete_dop_num参数,控制并行delete的并发数,默认为6,范围为1~128。

通过设置polar_px_enable_remove_delete_redundant_motion参数,控制当读写worker数相同的情况时,是否移除多余的motion算子,默认为false。
  • 设置为true时,表示开启移除多余motion算子的功能。
  • 设置为false时,表示关闭移除多余motion算子的功能。
PX支持partition wise join跨机并行查询支持分区表的partition wise join高级特性。对分区表使用跨机并行查询
兼容Oracle视图PolarDB PostgreSQL版(兼容Oracle)兼容Oracle的all_tab_columns /all_tab_comments2个视图,以及all_objects视图的部分列。ALL_TAB_COLUMNSALL_OBJECTS
优化支持DBMS_SQL.TO_CURSOR_NUMBER/DBMS_SQL.TO_REFCURSOR支持DBMS_SQL.TO_CURSOR存储过程。
例如,
   -- 从本地动态SQL转换为DBMS_SQL
  curid := dbms_sql.to_cursor_number(cursrc);

时空数据库(V4.3)

类别名称描述相关文档
新增ST_PixelAsPolygon函数新增ST_PixelAsPolygon函数,将栅格像素转换为Polygon对象。ST_PixelAsPolygon
ST_PixelAsPolygons函数新增ST_PixelAsPolygons函数,将栅格像素转换为Polygon对象集合。ST_PixelAsPolygons
ST_PixelAsPoint函数新增ST_PixelAsPoint函数,将栅格像素转换为基于点方式表述的几何对象。ST_PixelAsPoint
ST_PixelAsCentroid函数新增ST_PixelAsCentroid函数,将栅格像素转换为基于中心点方式表述的几何对象,ST_PixelAsCentroid
ST_PixelAsPoints函数新增ST_PixelAsPoints函数,将栅格像素转换为点对象集合。ST_PixelAsPoints
ST_PixelAsCentroids函数新增ST_PixelAsCentroids函数,将栅格像素转换为中心点对象集合。ST_PixelAsCentroids
优化几何模型Geometry兼容PostGIS 3.1.4接口。
ST_AsDatasetFile函数ST_AsDatasetFile函数支持通过Grib2数据格式输出。
缺陷修复修复栅格netcdf导入时,空间参考获取不正确的问题。
修复多外包框下equals结果不正确,导致可能外包框更新错误的问题。

2021年10月

内核小版本(V1.1.17)

类别名称描述相关文档
新增分区表DML支持执行期修剪分区表支持update、delete在执行器期间(runtime)执行分区剪枝。分区剪枝
聚合函数支持order by子句聚合函数支持包含order by子句的简单查询。聚合函数
trigger支持指定schema 支持在triggername前允许指定schema。触发器
二维关联数组支持新增支持二维关联数组。关联数组
PX支持并行写并行读的Insert....Select....加速跨机并行查询在Insert...Select...单写多读的基础上,改进为并行写并行读,进一步提升并行Insert...Select...的性能。
可以通过设置polar_px_insert_dop_num参数,控制写并行度,默认值为6。
  • 当polar_px_insert_dop_num设置为1时,执行单写多读计划。
  • 当polar_px_insert_dop_num设置为大于1时,执行多写多读计划。
跨机并行查询
PX支持 Insert...Select from tableless的加速跨机并行查询支持Insert...Select from tableless(无表查询)的加速,进一步提升并行Insert...Select...的性能。
可以通过设置polar_px_enable_insert_from_tableless参数,开启或关闭无表查询加速,默认值为0。
  • polar_px_enable_insert_from_tableless=1,表示开启。
  • polar_px_enable_insert_from_tableless=0,表示关闭。
PX 支持Insert...Select对有序性敏感的SQL强制有序跨机并行查询可以通过设置参数polar_px_enable_insert_order_sensitive,确保写入的结果强制有序,默认值为true
  • polar_px_enable_insert_order_sensitive设置为true,则SQL语句中含有order by或者是无表查询的情况,写入结果强制有序。
  • polar_px_enable_insert_order_sensitive设置为false,则并行Insert不保证有序。
PX支持RowNum跨机并行查询新增支持Oracle兼容的RowNum表达式。
PX阻塞DDL超时取消当DDL操作与PX查询发生锁冲突而等待时,可以设置DDL等待锁的时间,如果等待超时,则强制中断PX查询,优先让DDL获得锁并完成执行。
Leading Hint支持支持Leading Hint,Leading Hint是一个能指定超过一个表的多表Hint。Leading Hint
DELETE FROM subquery支持DELETE FROM subquery。
select unique的语法支持新增select unique语法规则,支持了unique作为distinct的同义词。
UPDATING IN SPL TRIGGER在DML trigger中,支持updating('colname')条件表达式。
merge命令中的update/delete支持where支持了merge命令中update/delete出现where的场景。
insert select 支持别名支持了insert命令select别名的情况。
copy支持多个字符的分隔Copy功能新增支持多个字符的分隔。
优化修复PX对polar_row_id的支持跨机并行查询支持polar_row_id。
standby并行回放Standby节点通过多进程来加速回放,减少standby节点与master节点之间的延迟。

时空数据库(V4.1)

类别名称描述相关文档
优化ST_ImportFrom函数增强ST_ImportFrom函数,增加OSS文件映射为内存文件功能,提升数据导入速度。ST_ImportFromganos.raster.memory_oss_file_max_size
Gist/TrajGist索引GisT索引和TrajGisT索引新增算子族trajgist_ops_multi,用于多外包框索引键值。GisT索引TrajGisT索引ganos.trajectory.index_split_config
缺陷修复新增矢量金字塔支持元数据信息查询。
修复轨迹对象执行相交判断时内存泄露问题。

2021年9月

内核小版本(V1.1.16)

类别名称描述相关文档
新增outline支持手动query改写在PolarDB查询改写不符合预期时,支持使用outline来实现SQL的查询改写。调整执行计划
PX支持AssertOp算子PX支持执行器运行时约束检查。跨机并行查询
PX支持Oracle Decode表达式PX新增支持Oracle Decode表达式。
PX支持动态分区裁剪PX支持动态分区剪裁,提升分区表hash join时的性能。
Bind Message 中支持Holdable Portal支持SQL语句的跨事务访问, 需要在SQL中添加polar_holdable_hint的HINT, 例如,SELECT /*+ polar_holdable_hint */;
Oracle风格的select for updateselect for update of全面兼容Oracle语法。
优化PX支持Const表达式跨机并行查询支持Const表达式。
算子级内存限制通过算子级内存限制,降低OOM风险,提升PolarDB稳定性。

时空数据库(V4.0)

类别名称描述相关文档
优化栅格表面计算函数增强栅格表面计算函数返回Raster对象取代像素矩阵。ST_AspectST_SlopeST_Hillshade
ST_Split函数增强ST_Split按照指定的规则对轨迹对象进行切分返回子轨迹数组。ST_Split
缺陷修复修复ST_SrEqual在某些条件下判断失败的问题。

2021年8月

内核小版本(V1.1.15)

类别名称描述相关文档
新增Index Advisor记录索引前后的代价Index_advisor_log表中增加两列,分别表示增加索引前后的代价,方便上层应用(例如,数据库自治服务DAS) 评估创建索引带来的收益。
PX索引加速构建支持GLOBAL INDEXPX新增支持了加速创建B-Tree索引的GLOBAL索引。跨机并行查询使用跨机并行查询加速索引创建创建GLOBAL INDEX

2021年7月

内核小版本(V1.1.14)

类别名称描述相关文档
新增适配GCC9编译GCC升级至GCC9.2.1,支持更多编译优化,提高性能。
outline支持hintoutline支持hint功能来控制需要被outline抓取的执行计划。调整执行计划
跨机并行查询支持hash分区支持hash分区的并行查询,从而平衡I/O,改善系统性能。对分区表使用跨机并行查询
GLOBAL INDEX支持对分区表进行DDL操作支持在对分区表进行DDL操作时(如DROP、SPLIT、MERGE等),操作该分区表下的所有GLOBAL INDEX。支持对分区表进行DDL操作
优化ORA_HASH函数兼容性ORA_HASH函数替换为DBMS_UTILITY.GET_HASH_VALUE,计算给定字符串的散列值。

时空数据库(V3.9)

类别名称描述相关文档
新增ST_RemoveDriftPoints函数新增ST_RemoveDriftPoints函数,使用指定规则删除轨迹中的漂移点。ST_removeDriftPoints
ST_Split函数新增ST_Split函数,使用指定的几何对象对轨迹进行切分。ST_Split
ST_ExportTo函数新增ST_ExportTo函数,将轨迹导出到外部文件存储,数据库内仅保留元数据。ST_ExportTo
ST_IsExternal函数新增ST_IsExternal函数,检查轨迹是否存储于外部文件。ST_IsExternal
ST_ImportFrom函数新增ST_ImportFrom函数,将外部存储模式的轨迹重新转化为存储在数据库内的轨迹。ST_importFrom
ST_StorageLocation函数新增ST_StorageLocation函数,返回轨迹存储在外部的位置。ST_StorageLocation
ST_AKID函数新增ST_AKID函数,返回读取轨迹时,与OSS交互时所使用的AccessKeyID。ST_AKID
ST_SetAccessKey函数新增ST_SetAccessKey 函数,设置读取轨迹时,与OSS交互时所使用的AccessKey(包括AccessKeyID和AccessKeySecret,类似用户名与密码)。ST_SetAccessKey
ST_SetAKID函数新增ST_SetAKID函数,设置读取轨迹时,与OSS交互时所使用的AccessKeyID。ST_SetAkId
ST_SetAKSecret函数新增ST_SetAKSecret函数,设置读取轨迹时,与OSS交互时所使用的AccessKeySecret。ST_SetAkSecret
ST_SetStorageLocation函数新增ST_SetStorageLocation函数,设置读取轨迹时,外部文件的存储位置。ST_SetStorageLocation
ST_DeleteGtf函数新增ST_DeleteGtf函数,删除指定文件夹下所有的轨迹导出的文件。ST_DeleteGTF
缺陷修复修复创建矢量金字塔使用字符串方式过滤失败问题。
修复QGIS连接时无法列出图层列表的问题。

2021年6月

内核小版本(V1.1.13)

类别名称描述相关文档
新增polar_stat_sql/polar_stat_plan增加IO统计展示
  • 新增可通过查询不同视图获取相关资源信息,进而方便定位性能问题。
  • 新增PolarDB PostgreSQL版(兼容Oracle)性能诊断,包含实例问题分析和SQL性能分析。
  • polar_stat_sql/polar_stat_plan视图增加IO统计展示相关参数。
性能视图性能诊断
跨机并行查询跨机并行查询功能可用于BRIN索引扫描,进一步提升查询性能。跨机并行查询概述
新增polar_bt_write_page_buffer_size参数,指定了索引构建过程中的写IO策略。使用跨机并行查询加速索引创建
支持从三种粒度指定跨机并行查询的范围:
  • 系统粒度:指定所有session所有查询是否开启跨机并行查询。
  • 会话粒度:指定当前session是否开启跨机并行查询。
  • 查询粒度:指定具体查询是否开启跨机并行查询。
使用跨机并行查询进行分析型查询
支持对分区表使用跨机并行查询的功能,提升数据库性能。对分区表使用跨机并行查询
优化基于RTO的crash recover时间改进支持配置polar_crash_recovery_rto参数,指定实例期望的RTO时间,从而保证在发生crash recovery时,数据库可以在期望的RTO时间内完成崩溃恢复重启,恢复可用状态。

时空数据库(V3.8)

类别名称描述相关文档
新增ST_AsDatasetFile函数新增ST_AsDatasetFile函数,支持将指定范围的栅格对象以指定文件格式的二进制流进行返回。ST_AsDatasetFile
ST_RasterDrivers函数新增ST_RasterDrivers函数,支持对所有栅格数据驱动的状态进行查询。ST_RasterDrivers
缺陷修复修复ST_Clip函数指定空间参考进行重投影操作失败的问题。

2021年5月

内核小版本(V1.1.12)

类别名称描述相关文档
新增跨机并行查询支持跨机并行查询计算引擎:
  • 支持多个只读节点分布式地执行SQL查询,加速PolarDB PostgreSQL版(兼容Oracle)的查询性能。
  • 支持通过跨机并行查询加速构建索引,提升大表场景下索引创建效率。
跨机并行查询
分区表支持全局索引分区表支持全局索引;同时支持并发构建索引,即在创建索引的过程中不阻塞表上的DML操作。创建GLOBAL INDEX
优化性能监控新增max_slot_wal_keep_size参数,限制使用复制槽(replication slot)的文件大小,防止WAL文件堆积。
DBLink默认开启Unsafe Collate下推和ALL/ANY下推,从而极大提高查询性能。可通过polar_enable_pushable_unsafe_collate_remotepolar_enable_pushable_all_any_remote参数进行关闭。使用DBLink跨库查询数据
Rownum对Rownum进行了优化,兼容rownum和varchar2/text比较时,按照数值类型比较的行为。
polar_resource_group插件polar_resource_group插件新增total_mem_limit_remain_sizeidle_mem_limit_rateenable_terminate_activepolicy_mem_release、enable_log等参数,避免内存占用过多而影响数据库进程。
提高只读节点启动速度提高只读节点的启动速度,提升性能。
主备切换通过并行回放,加速恢复主备切换后的数据库服务,通常情况下主库异常可以15s内恢复服务。

时空数据库(V3.7)

类别名称描述相关文档
新增时空并行查询支持空间索引并行查询,提升查询效率。开启时空并行查询
优化栅格图像处理ST_SubRaster函数支持栅格像元类型转换以及像元值拉伸。支持多波段遥感影像转三波段图像的AI识别场景。ST_SubRaster
缺陷修复修复栅格解析无效的直方图信息可能会导致数据库崩溃的问题。
修复进行投影变化操作后,数据库退出时可能会崩溃的问题。
修复栅格数据导入时可能会出现崩溃的问题。

2021年4月

内核小版本(V1.1.11)

类别名称描述相关文档
新增idle_session_timeout参数

新增idle_session_timeout参数,用于控制空闲会话的保留时间,超出保留时间的会话将会被释放。

  • 取值范围:0~2147483647

    0(默认值)表示关闭功能。

  • 单位
    • 'ms':毫秒(默认单位)
    • 's':秒
    • 'min':分钟
    • 'h':小时
    • 'd':天
设置参数
约束DDL支持ALTER TABLE ... ENABLE/DISABLE CONSTRAINT,用于启用或禁用约束(CONSTRAINT)。ALTER TABLE ... ENABLE/DISABLE CONSTRAINT
表空间DDL支持表空间( TABLESPACE)相关的DDL操作,例如CREATE TABLESPACE。
Numeric数据类型兼容Oracle的Numeric数据类型。如若需要可以通过设置polar_enable_comp_numeric_format参数进行开启,该参数默认关闭。开启命令如下:
SET polar_enable_comp_numeric_format=on;
缺陷修复修复DBMS_JOB内置包跨库使用的问题。
修复CONNECT BY与ROWNUM函数连用的问题。
修复CONNECT BY找不到上层对象的问题。

时空数据库(V3.6)

类别名称描述相关文档
新增栅格数据类型新增ST_RPCGeoreference函数,用于获取栅格数据RPC(Rational Polynomial Coefficients)信息。ST_RPCGeoreference
新增ST_SetRPCGeoreference函数,用于设置栅格数据RPC信息。ST_SetRPCGeoreference
新增ST_RPCRectify函数,用于根据栅格影像的RPC参数对栅格进行校正操作,返回校正后的栅格对象。ST_RPCRectify
GisT索引新增使用并行方式创建GisT索引。并行创建空间索引
缺陷修复修复使用pg_dump时,自定义的空间参考无法导出的问题。

2021年3月

内核小版本(V1.1.10)

类别名称描述相关文档
新增分区表分区表支持Before Row-level触发器。Before Row-level触发器
polar_outline插件支持使用polar_outline调整执行计划,实现SQL语句优化。调整执行计划
优化分区表INTERVAL RANGE分区支持子分区模板。子分区模板
性能优化通过在共享内存中缓存表大小信息,优化了数据文件I/O读性能。
兼容性INTERVAL与FLOAT8数据类型支持如下操作符:
  • +
  • -
  • *
  • /
兼容性新增OPT_PARAM HINT,通过该HINT可以在SQL级别指定特定参数的值。OPT_PARAM Hints

时空数据库(V3.5)

类别名称描述相关文档
新增大对象存储优化新增Simple存储策略,优化大对象存储。使用Simple存储策略
优化栅格对象使用栅格对象更新一个具有分块数据的栅格对象进行时,系统会自动删除原有栅格对象的分块数据。
缺陷修复修复Trajectory扩展无法升级的问题。
修复某些情况下,栅格对象采用Average重采样时出错的问题。
修复轨迹对象中如果多个时间戳的轨迹点相同,查询结果可能不正确的问题。
修复Geos对象转换失败后,直接退出的问题,同时对转换失败的原因进行提示。

内核小版本(V1.1.9)

类别名称描述相关文档
新增分区表新增INTERVAL RANGE分区。INTERVAL RANGE分区是RANGE分区的扩展。当新插入的数据超过现有分区的范围时,该分区允许数据库自动创建新分区。INTERVAL RANGE分区
RANGE分区和INTERVAL RANGE分区可以相互转换。转换RANGE和INTERVAL RANGE分区
新增SUBPARITITION TEMPLATE子分区模板,用于快速定义子分区,简化子分区的规范。您只需在子分区模板中定义一次子分区描述符,然后将该子分区模板应用于表中的每个分区,从而快速批量地为表中的分区定义子分区描述符。子分区模板
AWR监控自动负载信息库(Automatic Workload Repository,简称AWR)是一种性能收集和分析工具。通过AWR工具,可以从数据库的动态视图等统计信息记录中生成一份该时段的统计分析报告,分析数据库在某个时间段的性能。
优化分区表分区表在计划阶段进行修剪优化,提高查询性能。
数据类型PolarDB PostgreSQL版(兼容Oracle)使用timestamp作为Date数据类型,精确到微秒;而Oracle的Date数据类型只精确到秒,为了保证PolarDB PostgreSQL版(兼容Oracle)和Oracle的兼容性,将自动把Date数据类型转换为 timestamp(0)。
WAL采用流水线技术,优化WAL开销占比,提高整体系统的性能。
TO_CHAR在服务端自动识别TO_CHAR(text1, text2)的格式:如果text1为合法的日期类型,text2为合法的日期格式类型, 则自动将text1当成timestamp来处理。
缺陷修复修复无用SIGHUP信号。
修复MERGE INTO分区表会导致崩溃的问题。
修复pg_icu_collate_names时会访问非法内存的问题。
修复ALTER QUEUE ADD CALL访问非法内存的问题。
修复POLICY系统表定义中rdname字段的属性设置为定长,但是传入新值时使用的确是变成字符串,导致访问非法内存的问题。
修复TDE功能中没有声明导致函数返回值地址被截断的问题。
修复roaringbitmap插件对输入异常参数时访问非法内存的问题。
修复当只读节点落后很多日志时,可能不会及时给主节点流复制反馈,导致流复制链接中断的问题。

时空数据库(V3.4)

类别名称描述相关文档
新增大对象存储优化为了加速时空数据索引构建、提高空间查询效率,优化时空对象的存储模式,支持使用时空大对象特征签名,新增polar_enable_storage_partial参数,支持时空对象行内与行外组合存储。时空大对象特征签名
栅格模块支持函数并行化执行ST_ImportFrom函数支持栅格数据并行化导入。ST_ImportFrom
ST_BuildPyramid函数支持栅格数据并行创建金字塔。S​T_BuildPyramid
Trajectory Empty新增Trajectory Empty对象,支持某些场景下不符合要求而返回NULL对象。
缺陷修复修复ST_AddZ函数在16BSI情况下可能结果不正确的问题。
修复Trajectory模块在某些情况下无法升级的问题。
修复Trajectory模块中部分函数无法利用索引的问题。
修复部分nd函数没有正确处理时间段不相交的场景,导致返回error而非false的问题。

2021年1月

内核小版本(V1.1.8)

类别名称描述相关文档
新增DBMS_STATS插件支持DBMS_STATS插件,用于收集数据库运行过程中的相关统计信息,提供现有统计信息的备份,以及将备份统计项进行还原。DBMS_STATS
写后读事务拆分在READ COMMITTED级别下,支持写后读语句的事务拆分。可将事务开启到事务结束中所有的读请求发送到只读节点,从而保证事务中的读写一致性。事务拆分
优化OR表达式原有OR表达式无法自动转换为UNION ALL,导致部分情况下查询效率很低,必须全表扫描。现支持将OR表达式自动转换为UNION ALL,实现逻辑优化,大幅提升查询性能。
ECPG兼容性
  • ECPGPlus兼容Pro*C部分语法。
  • ECPGPlus兼容原生Oracle的连接方式。
Oracle兼容性GROUP BY CONST/EMPTY子句兼容Oracle。
PBP默认打开主节点的持久化缓冲池(Persisted Buffer Pool)。
同步Kafka分区表PolarDB PostgreSQL版(兼容Oracle)到kafka同步分区表配置优化。按父表名配置,同步后的表名也是父表名。
用户调整CREATE USER ... IDENTIFIED BY ...语法仅支持创建普通用户。创建用户
缺陷修复修复DBMS_JOB的无主键表在逻辑复制中删除任务报错的问题。
修复资源组(Resource Group)进程在内存资源超限时出现内存泄漏的问题。
修复Standby Promote时间较长的问题。
修复***_all_tables视图中temporary字段的临时表参数显示问题。
修复审计日志越界内存访问的问题。
修复PolarDB PostgreSQL版(兼容Oracle)到PostgreSQL的DBLink查询结果截断的问题。
修复分区表子分区多分区键剪枝(prune)缺陷。

时空数据库(V3.3)

类别名称描述相关文档
新增ST_JaccardSimilarity函数新增ST_JaccardSimilarity函数,用于计算轨迹对象相似度。ST_JaccardSimilarity
ST_Transform函数新增ST_Transform函数,用于将轨迹从一个空间参考系转换到另一个空间参考系。ST_Transform
优化矢量金字塔创建矢量金字塔时,支持用户指定创建范围,解决在部分场景下无法自动计算空间范围的问题。
缺陷修复修复某些环境下,Ganos数据目录设置不正确的问题。

2020年12月

内核小版本(V1.1.7)

类别名称描述相关文档
新增分区表新增Merge Partitions功能,用于合并两个分区表。
兼容Oracle风格解码支持Oracle的Base64解码风格,可以让BASE64_DECODE函数自动识别错误格式的编码串,然后将编码串中有效的前半部分进行解码。polar_enable_base64_decode
日期格式支持插入或更新YYYYMMDDHH24MISS格式的日期。
SYS.***_TAB_COLS视图新增SYS.***_TAB_COLS视图,用于查询表和视图中所有列的信息。
polar_utility插件新增polar_utility插件。polar_utility
存储过程存储过程允许返回holdable refcursor。
DBMS_JOB包新增DBMS_JOB包,您可以通过高权限账号进行调用或跨库调度。DBMS_JOB
优化UTL_ENCODE新建的普通用户支持使用UTL_ENCODE插件。UTL_ENCODE
polar_agg插件polar_agg插件的状态默认为开启。
fdw插件增强fdw插件的稳定性。
缺陷修复修复存储过程中使用SELECT INTO查询空值报错的问题。
修复执行ALTER TABLE… EXCHANGE PARTITION函数后,进行索引扫描导致约束失效的问题。

控制台

类别名称描述相关文档
新增DBLink

新增PolarDB PostgreSQL版(兼容Oracle)到ECS自建PostgreSQL的DBLink,实现从PolarDB PostgreSQL版(兼容Oracle)到PostgreSQL的跨库数据互通。结合PostgreSQL中的DBLink,可以实现两种不同数据库之间的双向数据互通。

路径:集群详情页的配置与管理 > 数据库管理

dblink
创建PolarDB PostgreSQL版(兼容Oracle)到PostgreSQL的DBLink

时空数据库(V3.2)

类别名称描述相关文档
新增ST_AsPNG新增矢量金字塔返回图片格式(基于流形式)功能,用于矢量数据的快速图形化显示。ST_AsPNG
栅格数据新增栅格数据类型JPEG2000压缩算法,支持16bit栅格数据压缩存储。
优化st_dwithin优化st_dwithin距离查询,提升查询性能。
缺陷修复修复轨迹数据类型时间相交错误问题。
修复Ganos内存拓扑索引的缺陷。

API

类别名称描述
优化CreateDBLink支持PolarDB PostgreSQL版(兼容Oracle)到到ECS自建PostgreSQL的DBLink。

2020年11月

内核小版本(V1.1.6)

类别名称描述相关文档
新增兼容性兼容PostgreSQL 11.9版本。什么是PolarDB PostgreSQL版(兼容Oracle)
主备切换默认开启OnlinePromote功能,减少HA切换时间,提高集群可用性。自动/手动主备切换
DBLink支持通过DBLink链接另一个PolarDB PostgreSQL版(兼容Oracle)集群下的数据库。DBLink概述
缺陷修复修复部分场景下节点重启会出现卡顿的问题。
修复部分场景下内存溢出导致的集群崩溃的问题。
修复部分场景下只读节点崩溃的问题。
修复执行client_encoding=gbk命令时,UTF8编码格式转换为GBK时报错的问题。
修复NVL函数中第一个参数为空时报错的问题。

控制台

类别名称描述相关文档
新增DBLink

支持创建PolarDB PostgreSQL版(兼容Oracle)PolarDB PostgreSQL版(兼容Oracle)的DBLink,实现从前者到后者的跨库数据访问,从而保证不同PolarDB PostgreSQL版(兼容Oracle)数据库之间的数据互通。

路径:集群详情页的配置与管理 > 数据库管理

dblink
DBLink概述

API

类别名称描述
新增CreateDBLink创建PolarDB PostgreSQL版(兼容Oracle)的DBLink。
DescribeDBLinks查询PolarDB PostgreSQL版(兼容Oracle)的DBLink信息。
DeleteDBLink删除PolarDB PostgreSQL版(兼容Oracle)的DBLink。

2020年10月

内核小版本(V1.1.5)

类别名称描述相关文档
新增审计日志支持审计日志中由预编译型SQL语句打印出的日志为形式可执行的SQL语句。
HASH分区新增指定数量创建HASH分区表语法。CREATE TABLE ... PARTITION BY HASH
分区表新增指定分区或者子分区名称查询指定分区的数据。查询指定分区
HOST参数支持HOST参数,用于获取客户端的HOST值。
优化视图优化polar_stat_activity视图,增加query_id字段。
兼容性内核小版本升级到11.8,修复多个稳定性缺陷。
缺陷修复修复半同步无法超时的问题。
修复CONNECT BY语句与WITH语句联用失败的问题。

时空数据库(V3.1)

类别名称描述相关文档
新增Trajectory数据类型新增Gist索引支持索引轨迹类型,并提供六种不同维度的算子族以支持不同维度的分析需求。
新增时空外包框类型BoxND,可用于时空范围表示以及存储轨迹。
新增对应不同维度的相交(&&)、包含(@>)、被包含(<@)算子。
新增ST_ndIntersects、ST_ndDWithin、ST_ndContains、ST_ndWithin四类轨迹处理函数。
对轨迹类型提供统计信息收集功能,以及根据统计信息预估扫描代价功能。
提供新的索引方式TrajGist,提供更好的索引选择。
ganos_update函数新增ganos_update函数,用select ganos_update() ;命令可以升级所有的Ganos插件到最新版本。
优化时空范围查询优化时空范围查询,GiST索引二阶段查询优化,提升查询性能。
矢量金字塔功能支持任意SRID坐标的源数据,支持3857和4326两种瓦片输出。
新增pixelSize参数设置,对点数据进行聚合,减少瓦片的数量。
缺陷修复修复某些情况下更新Ganos Raster失败问题。
修复Ganos二进制文件更新到新版本可能出现崩溃的问题。
修复用默认参数构建矢量金字塔点数据后,顶级瓦片数据量过大的问题。

2020年9月

内核小版本(V1.1.4)

类别名称描述相关文档
新增GROUP_ID函数新增GROUP_ID()函数。GROUP_ID
分区表支持在分区表上并发创建索引CREATE INDEX CONCURRENTLY。
表索引改为不可见支持将普通表的索引修改为不可见ALTER INDEX [NAME] INVISIBLE。
ali_decoding插件支持ali_decoding插件,用于数据库间增量同步DML语句。
pg_cron插件支持pg_cron插件的定时任务记录查询功能。PG_CRON
to_char()支持to_char()传入字符串。
数据类型为实现ROWID的prid_类型与text等字符串类型进行比较或text等字符串类型与ROWID的prid_类型进行比较,新增以下操作符:
  • <
  • <=
  • >
  • >=
  • =
  • <>
视图新增进程状态信息视图。
新增SQL信息视图耗时统计。
审计日志新增审计日志包含出错SQL。
缺陷修复修复在特定场景下数据页预取可能会导致死锁的问题。
修复分区表修剪时JOIN查询不到正确分区的问题。

时空数据库(V3.0)

类别名称描述相关文档
新增支持具有SubSet的NetCDF数据类型数据新增支持具有SubSet的NetCDF数据类型数据,可按照指定的图层名称导入。
栅格数据自定义元数据以及时序信息新增ST_MetaItems函数,获取所有的自定义元数据项目名称。ST_MetaItems
新增ST_MetaData函数, 获取自定义元数据项以及返回以JSON方式表达的元数据项。ST_MetaData
新增ST_SetMetaData函数,用于设置元数据项。ST_SetMetaData
新增ST_BeginDateTime函数,用于获取栅格数据的起始时间。ST_BeginDateTime
新增ST_EndDateTime函数,用户获取栅格数据的终止时间。ST_EndDateTime
新增ST_SetBeginDateTime函数,用于设置栅格数据的开始时间。ST_SetBeginDateTime
新增ST_SetEndDateTime函数,用于设置栅格数据的结束时间。ST_SetEndDateTime
新增ST_SetDateTime函数,用于设置栅格数据的开始和结束时间以及波段获取时间。ST_SetDateTime
支持栅格数据返回基于流形式的图片格式新增ST_AsImage函数,用于获取基于流形式的图片格式。ST_AsImage
新增ST_AsPng,用于获取基于流形式的PNG图片格式。ST_AsPNG
新增ST_AsJPEG,用于获取基于流形式的JPEG图片格式。ST_AsJPEG
支持几何网格数据类型以及操作运算新增GeomGrid数据类型。GeomGrid SQL参考
新增ST_AsText函数,用于将网格数据类型转换为文本表示方式。ST_AsText
新增ST_AsGeometry函数,用于将网格数据类型转换为几何数据类型。ST_AsGeometry
新增ST_AsBinary函数,用于将网格数据类型转换为二进制数据类型。ST_AsBinary
新增ST_AsBox函数, 用于将网格数据量类型转换为BOX数据类型。ST_AsBox
新增ST_AsGrid函数, 用于计算几何数据类型所对应的几何网格数据。ST_AsGrid
新增ST_GridFromText函数, 用于将基于文本表示网格转换为几何网格数据类型。ST_GridFromText
新增ST_GridFromBinary函数,用于将基于二进制的表示的网格转换为几何网格数据类型。ST_GridFromBinary
新增ST_Intersects函数,用于判断栅格数据类型与几何数据类型是否相交。ST_Intersects
新增ST_Contains函数,用于判断栅格数据与栅格数据,栅格数据与几何数据是否是包含关系。ST_Contains
新增ST_Within函数,用于判断网格数据与网格数据,网格数据与几何数据是否是被包含关系。ST_Within
矢量数据类型快速显示存储新增ST_BuildPyramid函数,用于创建快显支撑数据表。ST_BuildPyramid
新增ST_DeletePyramid函数,用于删除快显支撑数据表。ST_DeletePyramid
新增ST_Tile函数,用于获取基于MVT格式的矢量数据。ST_Tile
缺陷修复修复在某些情况下创建金字塔会出现Out Of Memory的问题。
修复移动对象无法创建2000-01-01时间点的问题。
修复某些场景下移动对象使用ST_Intersection返回子轨迹错误的问题。
修复Ganos升级时会出现奔溃问题。
PostGIS兼容性升级到2.5.4。

2020年8月

内核小版本(V1.1.3)

类别名称描述相关文档
新增视图新增SQL执行统计信息视图。
新增QPS统计信息视图。
新增CGroup状态信息视图。
高权限用户为polar_superuser用户赋予dba_* views的SELECT权限。
缺陷修复修复polar_stat_io_info视图显示错误。
修复AWR system wait信息缺失。
修复分区表修剪错误问题。
修复SLRU内存大小计算错误问题。
修复回放延迟导致RO重建问题。

时空数据库(V2.9)

类别名称描述相关文档
新增COG文件格式支持新增COG(Cloud Optimize Geotiff) 文件格式支持。支持读取COG文件格式中存储的金字塔信息。
ST_AddZ函数新增ST_AddZ函数,支持通过栅格数据的像素值为几何对象添加z值。ST_AddZ
栅格对象空间范围信息获取增强新增ST_Extent函数,用于获得栅格对象的空间范围,以BOX形式返回。ST_Extent
新增ST_Envelope函数,用于获得栅格对象的空间范围,以几何对象形式返回。ST_Envelope
新增ST_ConvexHull函数,用于获得栅格对象的空间范围,以几何对象形式返回。ST_ConvexHull
新增ST_Height函数,用于获得栅格对象的像素高度。ST_Height
新增ST_Width函数,用于获得栅格对象的像素宽度。ST_Width
缺陷修复修复使用外部栅格数据会使用1*n分块导致性能局限性问题,允许用户通过存储选项自定义分块的大小。
修复ST_Values函数在查询某些方向的线对象时结果与坐标排序不一致的问题。
修复ST_BestPyramidLevel函数在某些情况下会返回负数的问题。
修复ST_BuildPyramid函数在某些情况下会重复创建金字塔的问题。
修复Truncate栅格表时未能清理对应的块表的问题。
修复ST_ExportTo函数对于CreateOption在某些情况下无效的问题。
修复ST_ClearChunks函数对于表名存在大小写时会出现错误的问题。
修复外部金字塔在某些情况下无法创建overview的问题。
修复具有外部金字塔的栅格对象无法创建内部金字塔的问题。
修复具有NaN数值的栅格数据在计算统计信息时会导致结果不正确的问题。

2020年7月

内核小版本(V1.1.2)

类别名称描述相关文档
新增Pivot语法Pivot语法支持使用table或subquery作为别名。
ROWID伪列支持ROWID伪列和ROWIDTOCHAR/CHARTOROWID函数。
内置函数支持LNNVL,DUMP,SYS_CONTEXT,USERENV,TZ_OFFSET和VSIZE函数。
DBMS_JOB和DBMS_SCHEDULER支持DBMS_JOB和DBMS_SCHEDULER,用于维护和管理作业队列。
临时表支持临时表文件写本地存储,大幅提升临时表操作的性能。
触发事件支持polar_superuser进行触发事件(Event Trigger)的逻辑订阅。
自定义资源隔离支持自定义资源隔离组发起请求(Request)。
优化崩溃恢复流程优化崩溃恢复流程,减少极端情况下的崩溃恢复耗时。
缺陷修复修复polar_superuser无法使用索引建议器(index advisor)的问题。

时空数据库(V2.8)

类别名称描述相关文档
新增栅格数据元数据访问接口增强新增ST_XMin函数,用于获取栅格数据X方向最小值。ST_XMin
新增ST_YMin函数,用于获取栅格数据Y方向最小值。ST_YMin
新增ST_XMax函数,用于获取栅格数据X方向最大值。ST_XMax
新增ST_YMax函数,用于获取栅格数据Y方向最大值。ST_YMax
新增ST_ChunkHeight函数,用于获取栅格数据分块高度。ST_ChunkHeight
新增ST_ChunkWidth函数,用于获取栅格数据分块宽度。ST_ChunkWidth
新增ST_ChunkBands函数,用于获取栅格数据分块波段数量。ST_ChunkBands
ST_SrFromEsriWkt函数新增ST_SrFromEsriWkt函数,用于支持Esri格式空间参考字符串转换为OGC格式空间参考字符串。ST_SrFromEsriWkt
栅格数据类型新增栅格数据类型支持Zstd和Snappy压缩方式。
点云数据类型新增点云数据类型支持二进制拷贝功能。
环境变量新增支持PROJ_LIB和GDAL_DATA环境变量设置,同时部署相关数据。
缺陷修复修复OSS路径非法导致数据库崩溃问题。
修复部分栅格数据导入SRID与定义不一致的问题。

2020年6月

内核小版本(V1.1.1)

类别名称描述相关文档
新增nvl2函数增加nvl2函数,根据第一个参数的值是否是NULL或空串,来返回第二或者第三个参数的值。
polar_proxy_utils插件新增polar_proxy_utils插件,用于管理与proxy相关的功能,主要支持只读UDF和只读表的配置,允许通过集群地址将只读UDF以及只读表的访问路由到只读节点。
polar_resource_group插件新增polar_resource_group插件,支持自定义资源隔离组,基于user、database、session粒度,通过cpu、memory维度进行资源隔离。
优化可靠性和可用性数据库计算节点和文件系统解耦,文件系统可独立运维,大幅提高数据库的可靠性和可用性。
事务处理使用单调递增版本号替代原有的活跃事务列表快照,大幅提升数据库事务处理性能。
执行计划执行计划优化,避免使用过旧的统计信息。
缺陷修复修复了插件timescaledb在申请内存时出错时进程的异常问题。
修复了I/O监控功能中进程退出后没有汇总统计信息。
修复了lock_debug开启后,可能发生空指针异常问题。
修复了特定情况下导致pg_cron插件不可用的问题。
修复了社区已知的DSM死锁问题。
修复了用户连接数超限的问题。

2020年5月

内核小版本(V1.1.0)

类别名称描述相关文档
新增TO_SINGLE_BYTE函数新增TO_SINGLE_BYTE函数,用于将字符串中多字节字符转换为对应的单子节字符。全角半角转换函数(TO_SINGLE_BYTE和TO_MULTI_BYTE)
TO_MULTI_BYTE函数新增TO_MULTI_BYTE函数,用于将字符串中单子节字符转换为对应的多字节字符。全角半角转换函数(TO_SINGLE_BYTE和TO_MULTI_BYTE)
REGEXP_LIKE函数新增REGEXP_LIKE函数,和LIKE条件表达式类似,但REGEXP_LIKE可以指定POSIX兼容的正则表达式模式。
RATIO_TO_REPORT函数新增RATIO_TO_REPORT分析函数,用于计算一组值的和中某一个值的占比。
DBMS_UTILITY.FORMAT_ERROR_STACK函数新增DBMS_UTILITY.FORMAT_ERROR_STACK函数(宏),用于输出逐层的堆栈信息和错误信息。
UTL_I18N.ESCAPE_REFERENCE函数和UTL_I18N.UNESCAPE_REFERENCE函数新增UTL_I18N.ESCAPE_REFERENCE函数和UTL_I18N.UNESCAPE_REFERENCE函数,用于对HTML或XML字符的转义与反转义。
INSERT ALL语法新增INSERT ALL语法支持,您可以使用INSERT ALL语句向多张表插入数据。
polar_concurrency_control插件新增polar_concurrency_control插件,可以对事务执行、SQL查询、存储过程、DML等操作进行并发限制,您可以自定义大查询,并对大查询进行并发限制,优化高并发下的执行性能。
pldebugger插件新增pldebugger插件,用于存储过程的调试,您可以通过客户端(pgAdmin4 4.19 release及以上版本)调试本地存储过程。使用pldebugger插件
oss_fdw插件新增oss_fdw插件,用于Aliyun OSS外部表支持,您可以通过OSS外部表将数据库数据写入到OSS,也可以通过OSS外部表将OSS数据加载到数据库中,OSS外部表支持并行和压缩,极大提高了导入和导出数据的性能,同时也可以使用这个功能来实现多类型存储介质的冷热数据存储。使用oss_fdw读写外部数据文本文件
优化ROUND函数优化ROUND函数,支持Interval参数类型,返回天数(days)。ROUND
polar_stat_activity视图优化polar_stat_activity视图,新增wait_info列和wait_time列,分别用于监控进程等待对象(pid或fd)的等待时长。
索引提供插入索引时的索引页预扩展功能,用于提升将数据插入带有索引的表的执行性能。

时空数据库(V2.7)

类别名称描述相关文档
新增MD5操作函数新增ST_MD5Sum函数,用于获取栅格对象的MD5码值。ST_MD5Sum
新增ST_SetMD5Sum函数,用于设置栅格对象的MD5码值。ST_SetMD5Sum
空间栅格对象OSS认证方式新增ST_AKId函数,用于获取以OSS方式存储的栅格对象的AccessKey IDST_AKId
新增ST_SetAccessKey函数,用于设置以OSS方式存储的栅格对象的AccessKey ID和AccessKey Secret。ST_SetAccessKey
新增ST_SetAKId函数,用于设置以OSS方式存储的栅格对象的AccessKey ID。ST_SetAKId
新增ST_SetAKSecret函数,用于设置以OSS方式存储的栅格对象的AccessKey Secret。ST_SetAKSecret
空间栅格元数据操作函数新增ST_ScaleX函数,用于获取栅格对象在空间参考系下X方向像素宽度。ST_ScaleX
新增ST_ScaleY函数,用于获取栅格对象在空间参考系下Y方向像素宽度。ST_ScaleY
新增ST_SetScale函数,用于设置栅格对象在空间参考系下像素宽度。ST_ScaleY
新增ST_SkewX函数,用于获取栅格对象在空间参考系下X方向旋转。ST_SkewX
新增ST_SkewY函数,用于获取栅格对象在空间参考系下Y方向旋转。ST_SkewY
新增ST_SetSkew函数,用于设置栅格对象在空间参考系下旋转。ST_SetSkew
新增ST_UpperLeftX函数,用于获取栅格对象在空间参考系下左上角点的X坐标。ST_UpperLeftX
新增ST_UpperLeftY函数,用于获取栅格对象在空间参考系下左上角点的Y坐标。ST_UpperLeftY
新增ST_SetUpperLeft函数,用于获取栅格对象在空间参考系下左上角点坐标。ST_SetUpperLeft
新增ST_PixelWidth函数,用于获取栅格对象在空间参考系下像素宽度。ST_PixelWidth
新增ST_PixelHeight函数,用于获取栅格对象在空间参考系下像素高度。ST_PixelHeight
缺陷修复修复由于聚集函数导致扩展升级失败的问题。