
本文详细说明 PostgreSQL 数据源在 FDL 中的使用特性,包括使用限制以及在不同功能使用中的特殊情况,帮助用户更好地理解和应用数据源。
数据开发-定时任务
数据来源
4.1.3 及之后版本,支持定时任务读取 PostgreSQL 数据库的分区表。如下图所示:
数据去向与映射
4.1.9.3 及之后版本:
1)定时任务支持写入 PostgreSQL 数据库的分区表。
2)目标表若为自动建表,支持选取目标表里的某些字段作为分区键。
注:仅支持一级分区。
需注意:
自动建表仅支持 10.x 以上,更低版本暂不支持自动建分区表。10.x 版本虽然支持了声明式分区,但是不支持为分区表设置主键,暂时不支持为 PG10.x 的分区表设置物理主键。
PostgreSQL 11.x以上版本:支持哈希分区;支持在范围分区和列表分区内,添加默认分区,用于存放不匹配任何分区的数据,仅允许添加一个默认分区。
分区方式和分区字段个数支持情况:
数据库 | 范围分区 | 列表分区 | 哈希分区 |
---|---|---|---|
PostgreSQL | 10.x以上|N个字段 | 10.x以上|1个字段 | 11.x以上|N个字段 |
写入方式
4.2.7.4 及之后版本,目标端为 PostgreSQL 时,支持 事务控制 功能。
实时管道&实时任务
1)PostgreSQL 作为数据开发-实时任务、实时管道任务的数据来源:
PostgreSQL 10 及以上版本& FineDataLink 为 4.2.10.1 及之后版本时,支持选择 pgoutput 的读取方式。
其他情况下,只支持选择 wal2jaon 的读取方式。
2)当有两个实时管道任务使用同一个 PostgreSQL 数据连接作为来源端进行同步时,一个实时管道任务读取方式选择 wal2jaon,另一个读取方式选择 pgoutput,会自动新建两个采集任务。
读取方式为wal2jaon
1)4.1.9.3 及之后版本,管道任务中目标表若为自动建表,支持选取目标表里的某些字段作为分区键。如下图所示:
详细说明请参见本文「数据开发-定时任务>数据去向与映射」章节内容。
2)不支持同步视图。
3)支持的表类型:持久表(regular tables)。
4)实时管道任务中,不支持 无主键同步
5)不支持的字段类型:GEOMETRY、GEOGRAPHY、RASTER。
读取方式为pgoutput
1)不支持同步视图。
2)支持的表类型:持久表(regular tables)。
3)实时管道任务中,不支持 无主键同步
4)不支持的字段类型:GEOMETRY、GEOGRAPHY、RASTER、Generated Columns。
数据服务
4.1.9.3 及之后的版本,数据服务支持选择 PostgreSQL 的分区表作为数据来源。如下图所示: