类型 | 版本 |
PostgreSQL | 9.6及以上版本 |
wal_level = logical
ALTER TABLE <table> REPLICA IDENTITY FULL
GRANT CONNECT ON DATABASE my_db TO my_user;GRANT USAGE ON SCHEMA my_schema TO my_user;GRANT SELECT ON ALL TABLES IN SCHEMA my_schema TO my_user;ALTER USER my_user REPLICATION;GRANT CREATE ON DATABASE my_db TO my_user;
GRANT CREATE ON DATABASE my_db TO my_user;
参数 | 说明 |
数据来源 | 选择需要同步的 PostgreSQL数据源。 |
来源表 | PostgreSQL 只支持指定表和指定库,不支持所有所有库表: 指定表:此选项下需指定到具体表名称,设置后任务仅同步指定表,只能选择一个库下的表,不支持跨库选择;若需要新增同步表需暂停并重启任务。 指定库:此选项下需指定具体库名、表名正则表达式。其中库名必须要相同,不支持多个数据库。设置后,任务运行期间符合表名表达式的新增表默认将同步至目标端。 |
读取模式 | 全量 + 增量:数据同步分为全量和增量同步阶段,全量阶段完成后任务进入增量阶段。全量阶段将同步库内历史数据,增量阶段从任务启动后 binlog cdc 的位点开始同步。 增量:仅从任务启动后的 binlog cdc 位点开始同步数据。 |
时区 | 设置日志时间所属时区,默认上海。 |
过滤操作 | 支持插入、更新和删除三种操作,设置后将不同步指定操作类型的数据。 |
一致性语义 | 仅代表读取端的一致性语义。支持 At-least-once 和 Exactly-once。 At-least-once:数据可能存在重复读取,依赖目标端支持去重来保证数据的一致性。适用于全量阶段数据量大且使用非数值型主键、对同步性能要求高的场景。 Exactly-once:数据严格只读取一次,性能上有一定损失,不支持无主键且无唯一索引列的表。适用于源表有数值型主键或唯一索引列的通用场景。 当前版本两种模式状态不兼容,任务提交后如果修改模式,不支持带状态重启。 |
高级设置(可选) | 可根据业务需求配置参数。 |
参数 | 说明 |
数据去向 | 选择需要同步的 PostgreSQL 目标数据源。 |
写入模式 | Upsert:更新方式写入目标表。此方式下要求目标表中已设置主键。任务将默认使用主键作为唯一键进行记录更新。 若表无主键则 Append 写入。 Append:追加模式写入数据表。 |
库/Schema/表匹配策略 | 默认与来源库/表同名,也可以自定义配置,输入匹配规则即可(鼠标放至“查看内置参数”即可查看匹配规则)。 PostgreSQL 目标端暂不支持自动建库/Schema/表能力,仅支持同步至已有库、已有 Schema、已有表中,任务运行前需保证目标表已存在。 |
参数 | 描述 |
数据来源 | 选择需要同步的表所在数据源。 |
库 | 支持选择、或者手动输入需读取的库名称。 默认将数据源绑定的数据库作为默认库,其他数据库需手动输入库名称。 当数据源网络不联通导致无法直接拉取库信息时,可手动输入数据库名称。在数据集成网络连通的情况下,仍可进行数据同步。 |
Schema | 支持选择、或者手动输入需读取该数据源下可用的模式。 |
表 | 支持选择、或者手动输入需读取的表名称。 |
读取模式 | 全量 + 增量:数据同步分为全量和增量同步阶段,全量阶段完成后任务进入增量阶段。全量阶段将同步库内历史数据,增量阶段从任务启动后 binlog cdc 的位点开始同步。 仅增量:仅从任务启动后的 binlog cdc 位点开始同步数据。 |
高级设置(选填) | 可根据业务需求配置参数。 |
参数 | 描述 |
数据去向 | 选择需要写入的表所在数据源。 |
库 | 支持选择、或者手动输入需写入的库名称。 默认将数据源绑定的数据库作为默认库,其他数据库需手动输入库名称。 当数据源网络不联通导致无法直接拉取库信息时,可手动输入数据库名称。在数据集成网络连通的情况下,仍可进行数据同步。 |
Schema | 支持选择或者手动输入需写入该数据源下可用的模式。 |
表 | 支持选择或者手动输入需写入的表名称。 |
主键 | 选择一个字段作为写入表的主键。 |
高级设置(选填) | 可根据业务需求配置参数。 |
参数 | 说明 |
数据源 | 选择当前项目中可用的 PostgreSQL 数据源。 |
库/表 | 选择 PostgreSQL 数据源中对应的库表。 |
模式 | 选择 PostgreSQL 数据源中的模式。 |
主键 | 选择一个字段作为数据表主键 |
高级设置(可选) | 可根据业务需求配置参数。 |
PostgreSQL 类型 | 内部类型 |
- | TINYINT |
SMALLINT,INT2,SMALLSERIAL,SERIAL2 | SMALLINT |
INTEGER,SERIAL | INT |
BIGINT,BGSERIAL | BIGINT |
- | DECIMAL(20, 0) |
REAL,FLOAT4 | FLOAT |
FLOAT8,DOUBLE PRECISION | DOUBLE |
NUMERIC(p, s),DECIMAL(p, s) | DECIMAL(p, s) |
BOOLEAN | BOOLEAN |
DATE | DATE |
TIME [(p)][WITHOUT TIMEZONE] | TIME [(p)][WITHOUT TIMEZONE] |
TIMESTAMP [(p)]WITHOUT TIMEZONE | TIMESTAMP [(p)][WITHOUT TIMEZONE] |
CHAR(n),CHARACTER(n),VARCHAR(n),CHARACTER ,VARYING(n),TEXT | STRING |
BYTEA | BYTES |
内部类型 | PostgreSQL 类型 |
TINYINT | - |
SMALLINT | SMALLINT,INT2,SMALLSERIAL,SERIAL2 |
INT | INTEGER,SERIAL |
BIGINT | BIGINT,BIGSERIAL |
DECIMAL(20, 0) | - |
FLOAT | REAL,FLOAT4 |
DOUBLE | FLOAT8,DOUBLE PRECISION |
DECIMAL(p, s) | NUMERIC(p, s),DECIMAL(p, s) |
BOOLEAN | BOOLEAN |
DATE | DATE |
TIME [(p)][WITHOUT TIMEZONE] | TIME [(p)][WITHOUT TIMEZONE] |
TIMESTAMP [(p)][WITHOUT TIMEZONE] | TIMESTAMP [(p)]WITHOUT TIMEZONE |
STRING | CHAR(n),CHARACTER(n),VARCHAR(n),CHARACTER VARYING(n),TEXT |
BYTES | BYTEA |
本页内容是否解决了您的问题?