新增DB数据接入
DB数据接入是指通过sqoop插件把传统关系型数据库(mysql/oracle/sqlserver/db2)接入到HDFS系统或者Hive数据库中。
新增一条Sqoop连接记录,设置数据库源和目标,配置DB数据接入规则。保存后可在工作流中以Sqoop脚本形式调用。
相关参数说明:
字段 | 说明 |
基本信息 | |
资源名称 | 数据接入的业务名称。 |
资源类型 | 接入的数据源的类型,目前支持的类型包括Oracle、MySQL、SQLServer和DB2四种关系型数据库。 |
导入方式 | 数据接入到Hive或HDFS中。 |
源 | |
源类型 | 1. 单表:从数据库中接一张表到目标表,支持分表分区接入。 2. 多表:从数据库中接多张表到目标源。 3. 条件:通过写SQL查询的方式,把查询的数据接入到目标表。 |
数据源 | 根据选择的资源类型不同,加载出配置中心配置的该数据库类型的所有资源名称。 |
源表 | 根据所选的数据源,加载出该数据源下的所有表名称,同时可以输入动态规则,如日期变量${yyyymmdd},导入以分表方式存储的源数据。 |
Sql语句 | 根据不同类型的数据库,编写的Sql查询语句。(源类型为条件时) 例如: select * from (select id,name,se from fdf where id >=2) as a join (select id,name,sex,date from test_lzf where date >'2015-06-02') as b on (a.id=b.id)参数—split-by a.id 说明: 1. Sql语句不支持“or”条件查询; 2. Sql语句中可以定义变量,在运行时对临时变量进行赋值。 |
目标 | |
目标源 | 加载出配置中心配置的类型为hive的资源名称。 |
目标库 | 根据所选的Hive目标源,加载出该项目有权限的所有数据库名称。 |
目标表名 | 根据选择的Hive目标库,加载出该库下有权限的所有表名。 |
HDFS路径 | Hdfs的绝对路径,存储数据的目录。 |
高级设置 | |
是否覆盖 | 指执行接入操作时是否覆盖之前导入的数据。是:每次执行都会清空之前导入的数据,重新导入;否:每次执行会保留之前已存在的数据,然后将新的数据进行追加。 |
是否增量导入 | 数据导入时是否进行增量导入。是:进行增量导入;否:不进行增量导入,覆盖原有数据。 |
导入参考列 | 如果选择了增量导入,在此指定源数据库中的哪个列作为判断新增数据的依据,该字段只能是整型或日期类型。 |
增量导入模式 | 增量导入模式分为追加和最后修改时间两种模式。用户可根据选择的参考列类型自行选择。 |
参考列最大值 | 第一次增量导入时从源数据库中读取数据的起始值。该值可设为变量,方便在脚本调用。变量格式为${}。 |
每次读取最大量 | 每个线程中一次性读取数据的最大量,默认为1000条。 |
扩展参数 | 执行sqoop时需要的参数,如-m1等。 |
队列 | 指定执行该数据接入任务的队列。 |
配置完成后,执行Sqoop操作验证配置是否成功。当分区值为变量时,执行Sqoop时需要输入分区变量值。过程日志:点击执行按钮可以查看过程日志;结果日志:执行完成后查看结果日志。可以查看是否导入成功。
图 执行Sqoop接入数据
编辑DB数据接入
编辑DB数据接入的配置。
删除DB数据接入
删除DB数据接入的配置。
查询DB数据接入
可以根据资源名称,数据源名称查询,支持模糊查询。
图 查询DB数据接入