You need to enable JavaScript to run this app.
文档中心
大数据研发治理套件(私有化)

大数据研发治理套件(私有化)

复制全文
离线数据集成
PostgreSQL任务配置
复制全文
PostgreSQL任务配置

PostgreSQL是一种常用的关系型数据库,数据集成离线同步任务为您提供读取和写入PostgreSQL数据源的双向通道能力,实现与不同数据源的数据互通能力。
下文为您介绍PostgreSQL数据同步的能力支持情况。

PostgreSQL数据源注册

您可在数据开发 > 数据源管理中进行配置注册,相关操作可参见“注册数据源”。

任务配置

任务新建完成后,进入任务配置页面,您可根据实际场景,配置PostgreSQL离线读PostgreSQL离线写等通道任务。

  1. 选择数据源

    • PostgreSQL离线读
      数据来源选择PostgreSQL,并完成以下相关参数配置:
      其中参数名称前带 * 的为必填参数,名称前未带 * 的为可选填参数。

      参数

      说明

      *数据源类型

      数据来源类型选择为PostgreSQL,您可下拉选择或输入关键词PostgreSQL进行搜索。

      *数据源名称

      已在数据源管理中注册成功的PostgreSQL数据源,下拉可选。
      若还未建立相应数据源,可单击数据源管理按钮,前往创建PostgreSQL数据源。

      *Schema目录

      数据库下已有的Schema目录信息,下拉可选。

      *数据表

      选择需要采集的数据表信息,支持选择 PostgreSQL 分区表,分区字段可在下方字段映射中作为源端字段进行映射。

      数据过滤

      支持您将需要同步的数据进行筛选条件设置,只同步符合过滤条件的数据,可直接填写关键词 where 后的过滤 SQL 语句,例如:create_time > '${date}',不需要填写 where 关键字。
      语句填写完成后,您可单击右侧的校验按钮,进行过滤语句校验。

      说明

      • 该过滤语句通常用作增量同步,暂时不支持 limit 关键字过滤,其 SQL 语法需要和选择的数据源类型对应。
      • 过滤语句中支持时间参数 ${data}、项目变量参数 {{var}} 等参数配置。更多时间参数说明详见调度参数说明、项目变量参数配置详见参数管理

      切分建

      根据源端数据中某一列作为切分键,进行数据分片,建议使用主键或有索引的列作为切分键:

      • 如果表没有主键或者索引列,可以不配置该字段,同步任务不会进行分片,并以单并发的方式同步所有的数据;
      • 建议使用主键或有索引的列作为切分键,切分键配置没有索引的列同步任务会比较慢。

      说明

      • 目前仅支持类型为整型或字符串的字段作为切分建。
      • 若选择String类型作为split_key,并且设置了特殊的字符集,则您需在下方“高级参数设置”中,设置自定义参数:“job.reader.split_string_key_with_collate=true”,来保障数据准确性。
    • PostgreSQL离线写
      数据目标端选择PostgreSQL,并完成以下相关参数配置:
      其中参数名称前带 * 的为必填参数,名称前未带 * 的为可选填参数。

      参数

      说明

      *数据源类型

      数据去向目标类型,您可下拉选择或输入关键词PostgreSQL进行搜索。

      *数据源名称

      已在数据源管理界面注册的PostgreSQL数据源,下拉可选。
      若还未建立相应数据源,可单击数据源管理按钮,前往创建PostgreSQL数据源。

      *Schema目录

      数据库下已有的Schema目录信息,下拉可选。

      *数据表

      数据源下所属需数据写入的表或视图名,下拉可选。

      写入前准备语句

      在执行该数据集成任务前,需要率先执行的SQL语句,通常是为了使任务重跑时支持幂等。
      例如您可以通过填写语句,清空表中的某些旧数据,清空完成后,再执行集成任务写入新的数据。如删除 date='${date}' 的数据:delete from table_name where date='${date}'

      说明

      只允许执行一条写入前准备语句。

      写入后准备语句

      执行数据同步任务之后执行的 SQL 语句。例如写入完成后插入某条特殊的数据,标志导入任务执行结束。

      说明

      只允许执行一条写入后准备语句。

      *数据写入方式

      下拉选择数据写入 PostgreSQL 的方式,目前支持 insert into、insert(with ttl)、on duplicate key update 写入方式:

      • insert(with ttl):若设定的时间分区已存在,则清除已有时间分区,再以 insert into 方式写入。选择 insert 方式写入时,还需填写以下信息:
        • 唯一索引字段:下拉选择写入表中的唯一索引字段信息;
        • 一级分区设置:选择写入表中的一级分区字段名称信息和分区字段格式,字段格式支持 yyyyMMdd、yyyy-MM-dd、yyyy-MM-dd HH:mm:ss 三种格式。

          说明

          • 当分区格式为yyyyMMdd时,对应分区类型须为int/bigint;
          • 当分区格式为yyyy-MM-dd时,分区类型须为date;
          • 当分区格式为yyyy-MM-dd HH:mm:ss时,分区类型须为datetime。
        • 数据保存时间:设置表中历史数据的保留时间,设置为 0 时,则代表数据永久保存。
      • insert into: 当主键/唯一性索引冲突时会无法写入冲突的行,任务会运行失败。

        说明

        如果希望主键/唯一索引冲突时任务正常执行可以添加高级参数: job.writer.is_insert_ignoretrue

      • on duplicate key update:
        • 当主键/唯一键索引没有冲突时,与insert into行为一致。
        • 在发生冲突时,将使用新行数据 update 表中原有的数据。
  2. 设置字段映射信息
    字段为一一映射关系,即将源表字段信息,同步到同一行的目标字段信息中。数据源在选择好来源和目标数据源信息后,您可通过转换模式和基础模式方式来配置字段映射关系。
    基础模式操作如下:

    • 单击自动添加,可以根据数据源 Schema 自动添加字段。
    • 单击手动添加按钮,可以手动编辑源和目标的字段信息,可以逐个添加。

      说明

      来源端字段信息支持输入数据库函数配置,单击手动添加按钮,在源表字段中输入需添加的值,并选择函数或常量类型,例如:
      函数:支持您输入 now()、current_timestamp()、unix_timestamp() 等 Oracle 数据库支持的函数。

    • 可以根据需要移动字段顺序或删除字段。
      转换模式操作详见”转换模式“。
  3. 高级参数
    您可选择是否开启高级参数设置,参数说明详见“高级参数设置”。

  4. 调度设置
    单击右侧侧边栏的调度设置,配置相关调度设置参数。调度设置说明详见“调度设置”。

  5. 任务调试
    参数配置完成后,可单击调试按钮 ,在弹出的窗口中,选择业务日期进行调试,调试结果/日志可在页面查看。

  6. 单击保存图标,完成草稿保存。

最近更新时间:2026.02.04 10:41:49
这个页面对您有帮助吗?
有用
有用
无用
无用