附录

A.0 详细版本历史

模块名称

模块版本

Yukon(for GaussDB)版本

postgis

3.2.1

1.0.1 - 2.1

postgis_sfcgal

3.2.1

1.0.1 - 2.1

postgis_raster

3.2.1

1.0.1 - 2.1

postgis_topology

3.2.1

2.0.2 - 2.1

yukon_geomodel

1.0.1

1.0.1 - 2.1

yukon_geogridcoder

1.0.1

1.0.1 - 2.1

A.1 Release Yukon 2.1

发布日期:2024/06/30

A.1.1 新增功能列表

  • 支持 GaussDB 505.2 集中式版本,目前支持 PG ,Oracle,MySql 三种兼容模式

  • 支持 GaussDB 505.2 分布式版本,目前支持 PG ,Oracle 两种兼容模式,

M模式下仅支持postgis插件的部分空间数据类型和函数

  • 支持的空间数据类型:GEOMETRY

  • 支持的空间数据函数

MBRContains, MBRCoveredBy, MBRCovers,MBRDisjoint, MBREquals, MBRIntersects, MBROverlaps, MBRTouches, MBRWithin

ST_Area, ST_AsBinary, ST_AsWKB, ST_AsGeoJSON, ST_AsText, ST_AsWKT, ST_Buffer, ST_Buffer_Strategy, ST_Centroid

ST_Collect, ST_Contains, ST_ConvexHull, ST_Crosses, ST_Difference, ST_Dimension, ST_Disjoint, ST_Distance

ST_Distance_Sphere, ST_EndPoint, ST_Envelope, ST_Equals, ST_ExteriorRing, ST_FrechetDistance, ST_GeoHash

ST_GeomCollFromText, ST_GeometryCollectionFromText, ST_GeomCollFromTxt, ST_GeomCollFromWKB, ST_GeometryCollectionFromWKB

ST_GeometryN, ST_GeometryType, ST_GeomFromGeoJSON, ST_GeomFromText, ST_GeometryFromText, ST_GeomFromWKB, ST_GeometryFromWKB

ST_HausdorffDistance, ST_InteriorRingN, ST_Intersection, ST_Intersects, ST_IsClosed, ST_IsEmpty, ST_IsSimple, ST_IsValid

ST_LatFromGeoHash, ST_Latitude, ST_Length, ST_LineFromText, ST_LineStringFromText, ST_LineFromWKB, ST_LineStringFromWKB

ST_LineInterpolatePoint, ST_LineInterpolatePoints, ST_LongFromGeoHash, ST_Longitude, ST_MakeEnvelope, ST_MLineFromText

ST_MultiLineStringFromText, ST_MLineFromWKB, ST_MultiLineStringFromWKB, ST_MPointFromText, ST_MultiPointFromText, ST_MPointFromWKB

ST_MultiPointFromWKB, ST_MPolyFromText, ST_MultiPolygonFromText, ST_MPolyFromWKB, ST_MultiPolygonFromWKB, ST_NumGeometries

ST_NumInteriorRing, ST_NumInteriorRings, ST_NumPoints, ST_Overlaps, ST_PointAtDistance, ST_PointFromGeoHash, ST_PointFromText

ST_PointFromWKB, ST_PointN, ST_PolyFromText, ST_PolygonFromText, ST_PolyFromWKB, ST_PolygonFromWKB, ST_Simplify, ST_SRID, ST_StartPoint

ST_SwapXY, ST_SymDifference, ST_Touches, ST_Transform, ST_Union, ST_Validate, ST_Within, ST_X, ST_Y

A.1.2 已知问题

已知问题见 A.2.2 章节

A.1.3 GUC 参数说明

  • forbid_public_funcname_same_with_sysfunc

参数说明:控制在创建函数及 RENAME 函数时,是否禁止 PUBLIC 函数与 pg_catalog 下的系统函数名称相同。 当为 on 时, 禁止 PUBLIC 函数与 pg_catalog 下的系统函数名称相同。当为 off 时,允许 PUBLIC 函数与 pg_catalog 下的系统函数名称相同。

参数类型:布尔型

默认值: on

由于 yukon 中存在一些函数与系统函数名称相同,为了避免插件无法使用,必须将该参数设置为 off。

  • enable_astore_gist

参数说明:控制是否启用 astore 存储下的 GIST 索引。当为 on 时,启用 astore 存储下的 GIST 索引。当为 off 时,禁用 astore 存储的 GIST 索引。

参数类型:布尔型

默认值: off

如果想要在 astore 存储引擎下使用 gist 索引,请将这个参数设置为 on。

A.2 Release Yukon 2.0.2

发布日期:2024/01/30

A.2.1 新增功能列表

  • 支持GaussDB多平台操作系统

  • 支持GaussDB平台兼容性,目前支持PG和Oracle两种兼容模式

  • 支持GaussDB分布式版本

  • for GaussDB 新增拓扑(postgis_topology)模块

  • 提升 for GaussDB 版本的并发稳定性。

  • for GaussDB 505.1 开始支持聚合函数 st_makeline、st_collect、st_polygonize

详细支持情况见下表:

插件

集中式支持的平台

分布式支持的平台



postgis
postgis_raster
postgis_sfcgal



Euler2.5_X86_64
Euler2.9_arm_64
Euler2.10_X86_64
Euler2.10_arm_64
Kylinv10_X86_64
Kylinv10_arm_64
UnionTech20_X86_64
UnionTech20_arm_64



Kylinv10_arm_64




postgis_topology
yukon_geomodel
yukon_geogridcoder

Kylinv10_arm_64


Kylinv10_arm_64

A.2.2 已知问题

  • GaussDB不支持spgist索引,不支持’&/&’、’@>>’、’<<@’、’~==’运算符

  • GaussDB不支持GIN索引

  • GaussDB不支持lateral连接

  • GaussDB的gist索引暂不支持order by + 距离运算符语法,包括<-> 、|=| 、<#> 、<<-> >、<<#> >。

  • GaussDB不支持GDAL驱动禁用设置,即不支持postgis.gdal_enabled_drivers环境变量。

  • 空间数据类型不支持作为分布键

  • GIS不支持扩容(分布式新增节点)

  • GIS不支持 hashbucket 表

  • GIS不支持 GSI(全局二级索引)

postgis模块

  • st_clusterintersecting 不支持自定义的聚合函数

  • st_asflatgeobuf 不支持自定义的聚合函数

  • st_clusterwithin 不支持自定义的聚合函数

  • st_asgeojson(record feature, text geomcolumnname, integer maxdecimaldigits=9, boolean pretty_bool=false) 不支持(缺少 IsValidJsonNumber)

  • st_concavehull 不支持(调用不支持的聚合函数)

  • st_asgeobuf 不支持自定义的聚合函数

  • st_asmvtgeom 不支持自定义的聚合函数

  • st_asmvt 不支持自定义的聚合函数

  • st_fromflatgeobuftotable 不支持(通常需要结合 ST_AsFlatGeobuf 一起使用,故不支持)

  • st_fromflatgeobuf 不支持(通常需要结合 ST_AsFlatGeobuf 一起使用,故不支持)

  • st_clusterdbscan 不支持自定义窗口函数

  • st_clusterkmeans 不支持自定义窗口函数

  • addauth 不支持长事务

  • checkauth 不支持长事务

  • disablelongtransactions 不支持长事务

  • enablelongtransactions 不支持长事务

  • lockrow 不支持长事务

  • unlockrows 不支持长事务

  • 不支持中断操作

  • 不支持 BRIN 索引

postgis_raster 模块

  • ST_Nearestvalue 不支持

  • ST_Dumpvalue 不支持

  • ST_Intersection 不支持

  • ST_Clip 不支持

  • ST_UNION 函数不支持 FIRST 和 LAST 聚合类型

postgis_topology模块

  • ToTopGeom不支持

  • ClearTopGeom不支持

  • validatetopologyrelation不支持

A.1.3 注意事项

  • 拓扑中输出GML及TopoJson两种格式的文本内容在GaussDB分布式版本中,输出会存在arcid和node位置波动,属于格式的正常表现,如有疑问或其他异常请联系技术人员。

A.3 Release Yukon 2.0.1

发布日期:2023/9/6

A.3.1 新增功能列表

  • 完善Geosot最小外接网格编码获取编码的类型,由仅支持输出二维网格升级为三维数据可输出三维网格。

  • 提升for gaussdb 版本的并发稳定性。

A.4 Release Yukon 2.0

发布日期:2023/6/30

A.4.1 新增功能列表

  • 新增矢量金字塔模块,提供一种大数据量快速获取数据和瓦片的模型,该功能在Yukon for PostgreSQL、Yukon for openGauss、Yukon for AgensGraph 中提供。

  • Geometry新增BEZIER3CURVE类型,支持构造贝塞尔曲线,并且支持对包含贝塞尔曲线的对象计算周长和面积,除Yukon for GaussDB外的所有版本均支持。

  • 新增聚合函数 st_makeline、st_collect、st_asmvt、st_polygonize在Yukon for openGauss版本中的支持。

  • 提供Yukon for AgensGraph2.13版本,支持图数据存储能力,实现图与空间一体化存储。

  • 新增路由(pgrouting)、点云(pointcloud)模块,除Yukon for GaussDB外的所有版本均支持。

  • 新增轨迹(mobilitydb)、拓扑(postgis_topology)模块,仅在Yukon for PostgreSQL、Yukon for AgensGraph版本中提供。

A.4.2 版本升级

  • Yukon for GaussDB版本,GaussDB版本升级为503.2.0,且yukon不支持低版本兼容,如使用低版本数据库请查找yukon 2.0之前版本。

  • Yukon for openGauss版本,openGauss版本升级为5.0.0且postgis、postgis_sfcgal、postgis_raster三个模块版本升级到3.2.2。

A.4.3 已知问题

由于 openGauss 和 PostgreSQL 的差异,openGauss5.0 的矢量和栅格功能还有以下功能不支持:

  1. postgis模块

  • st_clusterintersecting 不支持自定义的聚合函数

  • st_asflatgeobuf 不支持自定义的聚合函数

  • st_clusterwithin 不支持自定义的聚合函数

  • st_asgeojson(record feature, text geomcolumnname, integer maxdecimaldigits=9, boolean pretty_bool=false) 不支持(缺少 IsValidJsonNumber)

  • st_concavehull 不支持(调用不支持的聚合函数)

  • st_asgeobuf 不支持自定义的聚合函数

  • st_fromflatgeobuftotable 不支持(通常需要结合 ST_AsFlatGeobuf 一起使用,故不支持)

  • st_fromflatgeobuf 不支持(通常需要结合 ST_AsFlatGeobuf 一起使用,故不支持)

  • st_clusterdbscan 不支持自定义窗口函数

  • st_clusterkmeans 不支持自定义窗口函数

  • addauth 不支持长事务

  • checkauth 不支持长事务

  • disablelongtransactions 不支持长事务

  • enablelongtransactions 不支持长事务

  • lockrow 不支持长事务

  • unlockrows 不支持长事务

  • 不支持中断操作

  • 不支持 BRIN 索引

  1. postgis_raster 模块

  • ST_Nearestvalue 不支持

  • ST_Dumpvalue 不支持

  • ST_Intersection 不支持

  • ST_Clip 不支持

  1. postgis_topology模块

  • validatetopology 不支持

Yukon for GaussDB 推荐优先使用 postgis,postgis_raster, postgis_sfcgal 三个模块,可试用 yukon_geomodel 和 yukon_geogridcoder 模块。

Note

由于 openGauss 5.0 开始支持聚合函数 st_makeline、st_collect、st_asmvt、st_polygonize,5.0 以下版本不支持。GaussDB 已知问题同 1.0.1 版本,参见 A.7.2 已知问题

A.5 Release Yukon 1.0.1

发布日期:2022/12/30

A.5.1 新增功能列表

  • 支持计算空间对象的最小外包空间网格。涉及接口:ST_GeoSOTGrid();

  • 支持一次创建指定网格层级范围内的多层级空间网格。涉及接口:ST_GeoSOTGridAgg();

  • 支持获取所有空间网格的层级范围。涉及接口:ST_GetLevelExtremum();

  • geosotgrid[] 数据类型扩展操作符 <@、@>,支持计算网格数组间的包含和被包含关系;

  • 支持通过 GIN 索引对多层级网格下的空间对象进行查询。

  • 新增 yk_tool 工具,可进行安装与卸载、查看当前版本信息。

A.5.2 缺陷修复

Yukon for openGauss:

  • 修复通过 GIST 索引查询时的崩溃问题;

  • 修复多线程下对 Geometry 解析错误的问题;

  • 修复空字符无法解析的问题。涉及接口:ST_AsX3D()、ST_AsKML()、ST_AsGML( )、ST_GeomFromGML( )、ST_GeomFromKML( )、ST_AsLatLonText( )、UpdateGeometrySRID()、DropGeometryColumn();

  • 修复 UpdateGeomodelSRID() 接口更新空间坐标参考系无效的问题;

Yukon for PostgreSQL:

  • 修复 UpdateGeomodelSRID( ) 接口更新空间坐标参考系无效的问题。

A.5.3 已知问题

同 1.0.0 Beta 版本,参见 A.7.2 已知问题, Yukon for GaussDB和Yukon for openGauss的已知问题相同。

Yukon for GaussDB 推荐优先使用 postgis,postgis_raster, postgis_sfcgal 三个模块,可试用 yukon_geomodel 和 yukon_geogridcoder 模块。

A.6 Release Yukon 1.0.0

发布日期:2022/06/30

A.6.1 功能列表

优化边缘网格划分。

A.6.2 已知问题

同 1.0.0 Beta 版本。

A.7 Release Yukon 1.0.0 Beta

发布日期:2022/05/20

A.7.1 新增功能列表

  • 适配 PostGIS 3.2 的三个模块:postgis、postgis_raster、postgis_sfcgal

  • 新增 yukon_geogridcoder 模块

A.7.2 已知问题

由于 openGauss 和 PostgreSQL 的差异,PostGIS的矢量和栅格功能还有以下功能不支持:

  1. postgis模块

  • st_clusterintersecting 不支持自定义的聚合函数

  • st_makeline 不支持自定义的聚合函数

  • st_asflatgeobuf 不支持自定义的聚合函数

  • st_collect 不支持自定义的聚合函数

  • st_polygonize 不支持自定义的聚合函数

  • st_clusterwithin 不支持自定义的聚合函数

  • st_asgeojson(record feature, text geomcolumnname, integer maxdecimaldigits=9, boolean pretty_bool=false) 不支持(缺少 IsValidJsonNumber)

  • st_concavehull 不支持(调用不支持的聚合函数)

  • st_asgeobuf 不支持自定义的聚合函数

  • st_fromflatgeobuftotable 不支持(通常需要结合 ST_AsFlatGeobuf 一起使用,故不支持)

  • st_fromflatgeobuf 不支持(通常需要结合 ST_AsFlatGeobuf 一起使用,故不支持)

  • st_asmvtgeom 不支持自定义的聚合函数

  • st_asmvt 不支持自定义的聚合函数

  • st_clusterdbscan 不支持自定义窗口函数

  • st_clusterkmeans 不支持自定义窗口函数

  • addauth 不支持长事务

  • checkauth 不支持长事务

  • disablelongtransactions 不支持长事务

  • enablelongtransactions 不支持长事务

  • lockrow 不支持长事务

  • unlockrows 不支持长事务

  • 不支持中断操作

  • 不支持 BRIN 索引

  1. postgis_raster 模块

  • ST_Nearestvalue 不支持

  • ST_Dumpvalue 不支持

  • ST_Intersection 不支持

  • ST_Clip 不支持

A.8 Release Yukon 1.0.0 Alpha

发布日期:2021/11/30

A.8.1 功能列表

  • 适配 PostGIS 2.4 的三个模块:postgis、postgis_raster、postgis_sfcgal

  • 新增 yukon_geomodel 模块,开放 geomodel 对象的存储结构

A.8.2 已知问题

由于 openGauss 和 PostgreSQL 的差异,PostGIS的矢量和栅格功能还有以下功能不支持:

  1. postgis模块

  • loader/Latin1 : varchar 默认为字节数而不是字符数

  • loader/Latin1-implicit : varchar 默认为字节数而不是字符数

  • cluster :目前不支持 window 函数

  • long_xact :和 WEB 相关,暂未测试

  • typmod : copy 不支持 exception

  • 同时目前不支持中断操作。

  1. postgis_raster模块

  • rt_tile : 聚合函数不支持 internal 参数,导致 st_union 无法使用,待修复

  • rt_summarystats : 缺少 st_summarystatsagg 聚合函数,待修复

  • rt_histogram : 缺少聚合函数 st_summarystatsagg ,待修复

  • rt_quantile : 缺少聚合函数 st_summarystatsagg ,待修复

  • rt_createoverview : 聚合函数不支持 internal 参数,导致 st_union 无法使用,待修复

  • rt_union : 聚合函数不支持 internal 参数,导致 st_union 无法使用,待修复

  • rt_elevation_functions : 聚合函数不支持 internal 参数,导致 st_union 无法使用,待修复

  • rt_iscoveragetile : 聚合函数不支持 internal 参数,导致 st_union 无法使用,待修复

  • rt_mapalgebra : 聚合函数不支持 internal 参数,导致 st_union 无法使用,待修复

  • rt_mapalgebrafct :函数已废弃,推荐使用 ST_MapAlgebra