PostgreSQL输入组件用于读取PostgreSQL数据源的数据。同步PostgreSQL数据源的数据至其他数据源的场景中,您需要先配置PostgreSQL输入组件读取的源数据源,再配置数据同步的目标数据源。本文为您介绍如何配置PostgreSQL输入组件。
前提条件
已创建PostgreSQL数据源。具体操作,请参见创建PostgreSQL数据源。
进行PostgreSQL输入组件属性配置的账号,需具备该数据源的同步读权限。如果没有权限,则需要申请数据源权限。具体操作,请参见申请、续期和交还数据源权限。
操作步骤
在Dataphin首页顶部菜单栏,选择研发 > 数据集成。
在集成页面顶部菜单栏选择项目(Dev-Prod模式需要选择环境)。
在左侧导航栏中单击离线集成,在离线集成列表中单击需要开发的离线管道,打开该离线管道的配置页面。
单击页面右上角的组件库,打开组件库面板。
在组件库面板左侧导航栏中需选择输入,在右侧的输入组件列表中找到PostgreSQL组件,并拖动该组件至画布。
单击PostgreSQL输入组件卡片中的图标,打开PostgreSQL输入配置对话框。
在PostgreSQL输入配置对话框中,配置以下参数。
参数
描述
步骤名称
即PostgreSQL输入组件的名称。Dataphin自动生成步骤名称,您也可以根据业务场景修改。命名规则如下:
只能包含中文、字母、下划线(_)、数字。
长度不超过64个字符。
数据源
在数据源下拉列表中,展示所有PostgreSQL类型的数据源,包括您已拥有同步读权限的数据源和未拥有同步读权限的数据源。
对于您没有同步读权限的数据源,您可以单击数据源后的申请,申请对应数据源的读取权限。申请数据源读取权限的具体操作,请参见申请、续期和交还数据源权限。
如果您还没有PostgreSQL类型的数据源,单击新建,创建数据源。具体操作,请参见创建PostgreSQL数据源。
Schema
支持跨Schema选表,请选择表所在的Schema,如不指定则默认为数据源中配置的Schema。
来源表量
选择来源表量。来源表量包括单表和多表:
单表:适用于将一个表的业务数据同步至一个目标表的场景。
多表:适用于将多个表的业务数据同步至同一个目标表的场景。多个表的数据写入同一个数据表时,使用union算法。
更多union说明,请参见交集(INTERSECT)、并集(UNION)和补集(EXCEPT)。
表
选择来源表:
如果来源表量选择了单表,则单击图标,选择输入的表。
说明没有匹配项时,也支持根据手动输入的表名进行集成。
如果来源表选择了多表,则执行以下操作,添加表:
在输入框中,输入表的表达式,筛选具有相同结构的表。
系统支持枚举形式、类正则形式及两者混合形式,例如
table_[001-100];table_102
。单击图标。
在确认匹配详情对话框中,选择匹配的表。
单击确认。
切分建
系统根据配置的切分键字段进行数据分片,可以配合并发度配置使用,实现并发读取。支持将源数据表中某一列作为切分键。此外,建议使用主键或有索引的列作为切分键以保证传输性能。
重要选择日期时间类型时,系统会通过识别最大最小值方式,根据总时间范围和并发度进行暴力切分,不保证平均。
批量读取条数
一次性读取数据的条数。在从源数据库读取数据时,可以配置一个特定的批量读取条数(如1024条记录),而不是一条一条地读取,以减少与数据源之间的交互次数,提高I/O效率,并降低网络延迟。
输入过滤
填写输入字段的过滤信息,例如
ds=${bizdate}
。输入过滤适用于以下两种场景:固定的某一部分数据。
参数过滤。
输出字段
输出字段区域展示了已选中表及筛选条件命中的所有字段。支持进行以下操作:
字段管理:如果不需要将某些字段输出至下游组件,则您可以删除对应的字段:
单个删除字段场景:如果需要删除少量的字段,则可以单击操作列下的图标,删除多余的字段。
批量删除字段场景:如果需要删除大批量字段,则可以单击字段管理,在字段管理对话框选择多个字段后,单击左移动图标,将已选的输入字段移入到未选的输入字段并单击确定,完成字段的批量删除。
批量添加:单击批量添加,支持JSON、TEXT格式、DDL格式批量配置。
以JSON格式批量配置,例如:
// 示例: [{ "index": 0, "name": "id", "type": "int(10)", "mapType": "Long", "comment": "comment1" }, { "index": 1, "name": "user_name", "type": "varchar(255)", "mapType": "String", "comment": "comment2" }]
说明index表示指定对象的列编号,name表示引入后的字段名称,type表示引入后的字段类型。 例如,
"index":3,"name":"user_id","type":"String"
表示把文件中的第4列引入,字段名为user_id,字段类型为String。以TEXT格式批量配置,例如:
// 示例: 0,id,int(10),Long,comment1 1,user_name,varchar(255),Long,comment2
行分隔符用于分隔每个字段的信息,默认为换行符(\n),可支持换行符(\n)、分号(;)、点(.)。
列分隔符用于分隔字段名与字段类型,默认英文逗号(,)。
以DDL格式批量配置,例如:
CREATE TABLE tablename ( user_id serial, username VARCHAR(50), password VARCHAR(50), email VARCHAR (255), created_on TIMESTAMP, );
新建输出字段:单击+新建输出字段,根据页面提示填写来源序号、字段、类型、映射类型及备注。
单击确认,完成PostgreSQL输入组件的属性配置。