更新时间:2024-10-24 GMT+08:00
配置Hive目的端参数
参数名 |
说明 |
取值样例 |
---|---|---|
数据库名称 |
输入或选择写入数据的数据库名称。单击输入框后面的按钮可进入数据库选择界面。 |
default |
表名 |
输入或选择写入数据的目标表名。单击输入框后面的按钮可进入表的选择界面。 该参数支持配置为时间宏变量,且一个路径名中可以有多个宏定义变量。使用时间宏变量和定时任务配合,可以实现定期同步新增数据,详细说明请参见使用时间宏变量完成增量同步。
说明:
如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。 |
TBL_X |
自动创表 |
只有当源端为关系数据库时,才有该参数。表示写入表数据时,用户选择的操作:
说明:
|
不自动创建 |
导入前清空数据 |
选择目的端表中数据的处理方式:
|
是 |
待清空分区 |
“导入前清空数据”设置为“是”时,呈现此参数。 填写待清空分区信息后,表示清空该分区的数据。 |
单分区:year=2020,location=sun; 多分区:['year=2020,location=sun', 'year=2021,location=earth']. |
执行Analyze语句 |
数据全部写入完成后会异步执行ANALYZE TABLE语句,用于优化Hive表查询速度,执行的SQL如下:
说明:
“执行Analyze语句”参数配置仅用于单表迁移场景。 |
是 |
- Hive作为目的端时,会自动创建存储格式为ORC的表。
- 由于文件格式限制,当前仅支持ORC与Parquet格式写入复杂类型。
- 源端Hive包含array和map类型时,目的端表格式只支持ORC和parquet复杂类型。若目的端表格式为RC和TEXT时,会对源数据进行处理,支持成功写入。
- 因map类型为无序的数据结构,迁移到目的端的数据类型可能跟源端顺序不一致。
- Hive作为迁移的目的时,如果存储格式为Textfile,在Hive创建表的语句中需要显式指定分隔符。例如:
CREATE TABLE csv_tbl( smallint_value smallint, tinyint_value tinyint, int_value int, bigint_value bigint, float_value float, double_value double, decimal_value decimal(9, 7), timestmamp_value timestamp, date_value date, varchar_value varchar(100), string_value string, char_value char(20), boolean_value boolean, binary_value binary, varchar_null varchar(100), string_null string, char_null char(20), int_null int ) ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde' WITH SERDEPROPERTIES ( "separatorChar" = "\t", "quoteChar" = "'", "escapeChar" = "\\" ) STORED AS TEXTFILE;
父主题: 配置CDM作业目的端参数