PostgreSQL数据源
支持的版本
本数据集成服务全面支持云上RDS - PostgreSQL及线下自建PostgreSQL数据源,同时兼容GaussDB、Greenplum、金仓数据源,可满足不同用户在多种部署环境下的数据同步需求。
使用前准备及限制
- 网络要求
PostgreSQL数据源必须与CDM网络进行通讯,以确保数据传输的顺畅性。详情请参见网络打通。
- 数据库连接权限
- 数据库连接权限:需要CONNECT权限,允许用户连接到指定的数据库。
- 网络访问权限:需要在pg_hba.conf配置文件中设置允许数据集成服务的IP地址访问数据库。
- 表操作权限要求
- 模式的USAGE权限:用户需要对目标模式(Schema)具有USAGE权限,才能访问该模式下的对象
- 离线读取PostgreSQL时:账号需具备对同步表的只读权限(SELECT),以确保数据能够被安全、准确地读取。
- 离线写入PostgreSQL时:账号需具备对同步表的写入权限(INSERT、DELETE、UPDATE),以便能够将数据正确写入目标表。
驱动选择
驱动名称 |
获取地址 |
建议版本 |
---|---|---|
POSTGRESQL |
42.3.4 版本 |
支持的数据类型
以PostgreSQL社区版12为基准,本数据集成服务兼容以下字段类型及其常见变体,确保在读写操作中能够准确处理各类数据:
类别 |
字段类型 |
PostgreSQL 读取 |
---|---|---|
整数型 |
smallint |
√ |
int |
√ |
|
bigint |
√ |
|
smallserial |
√ |
|
serial |
√ |
|
bigserial |
√ |
|
浮点数 |
float |
√ |
DOUBLE PRECISION |
√ |
|
REAL |
√ |
|
数值 |
decimal(p,s) |
√ |
NUMERIC |
√ |
|
字符型 |
char |
√ |
varchar |
√ |
|
text |
√ |
|
时间 |
date |
√ |
timestamp |
√ |
|
timestamptz |
√ |
|
time |
√ |
|
timez |
√ |
|
interval |
√ |
|
二进制 |
BYTEA |
√ |
网络 |
INET |
√ |
货币 |
money |
√ |
比特 |
bit |
√ |
varbit |
√ |
|
布尔 |
boolean |
√ |
其他 |
int1(gauss数据库) |
√ |
支持的迁移场景
数据集成离线同步支持以下三种同步方式,以满足不同数据迁移场景的需求:
- 单表同步
适用于数据入湖和数据上云场景下,表或文件级别的数据同步。支持的数据源类型请参考表/文件同步支持的数据源类型。
- 分库分表同步
适用于数据入湖和数据上云场景下,多库多表同步场景。支持的数据源类型请参考分库分表同步支持的数据源类型。
- 整库迁移
适用于数据入湖和数据上云场景下,离线或自建数据库整体同步场景。支持的数据源类型请参考整库同步支持的数据源类型。
云场景下,离线或自建数据库整体同步场景。支持的数据源类型请参考整库同步支持的数据源类型。
需要注意的是,分库分表与整库迁移能力会根据不同 region 的上线支持情况有所不同,具体支持情况以页面为准。以下是针对PostgreSQL的支持迁移场景概览:
支持迁移场景 |
PostgreSQL 单表读取 |
PostgreSQL 单表写入 |
PostgreSQL 分库分表读取 |
PostgreSQL 分库分表写入 |
PostgreSQL 整库读取 |
PostgreSQL 整库写入 |
---|---|---|---|---|---|---|
是否支持 |
√ |
√ |
√(部分region支持) |
√ |
√(部分region支持) |
x |
核心能力速览
- 连接配置
配置项
支持情况
说明
用户/AK
√
支持用户认证,确保连接安全。
SSL 加密
√
支持 SSL 加密,保障数据传输安全,当前仅支持云上 RDS 开启 SSL 认证。
SSL 认证支持
√
当前仅支持云上 RDS 开启 SSL 认证,通过标准华为云 CA 证书进行认证。
私有证书支持
x
不支持私有证书。
连接配置调优
√
支持 connectTimeout 等连接配置调优,可根据实际需求优化连接性能。
自定义驱动
√
支持自定义驱动,提供更高的灵活性。
- 读取能力
配置项
支持情况
说明
分片并发
√
支持按主键或常见字段做水平分片,多线程并行抽取,显著提升吞吐效率。
脏数据处理
√
支持异常数据写入脏数据桶,避免因少量异常数据导致作业失败。
自定义字段
√
可在任务级追加计算列、常量列或脱敏函数,满足个性化业务需求。
增量读取
√
支持 where 条件和 SQL 模式,可实现增量读取。
流批读取方式
批读
支持批量读取,适用于中小数据量场景,可一次性处理数据,提高处理效率。
读取行数调优
√
可根据需求在连接中配置【单次请求行数】,合理控制数据传输量,优化性能,避免因数据量过大导致的传输延迟或系统压力。
- 写入能力
配置项
支持情况
说明
数据源调优参数
√
支持 batchSize、socketTimeout 等写入端优化配置,提升写入性能。
脏数据处理
√
支持异常数据写入脏数据桶,避免因少量异常数据导致作业失败。
冲突解决
x
不支持冲突解决机制。
导入前后处理
√
支持 preSql/delete 等操作,可在数据导入前后进行数据清洗和处理。
并发写入
√
支持并发写入,提升写入效率。
写入行数调优
x
可根据需求配置单次写入的行数,合理控制数据传输量,优化性能,避免因数据量过大导致的传输延迟或系统压力,该数据源不支持。
创建数据源
在DataArts Studio管理中心新建相应的数据源,详情请参见创建DataArts Studio数据连接。
创建数据集成离线作业
在DataArts Studio数据开发中新建PostgreSQL集成作业,详情请参见新建离线处理集成作业。