gpt4 book ai didi

hadoop - 使用 hcatalog 的 Sqoop 增量导出?

转载 作者:可可西里 更新时间:2023-11-01 15:11:48 25 4
gpt4 key购买 nike

有没有办法使用 sqoop 进行增量导出?我正在为 sqoop 使用 Hcatalog 集成。我尝试使用用于增量导入的 --last-value、--check-column 选项,但 sqoop 给我错误提示这些选项无效。

最佳答案

我还没有看到增量 sqoop 导出参数。您可以尝试的另一种方法是在配置单元中创建一个 contol_table,您可以在其中记录每次上次导出时的表名和时间戳。

create table if not exists control_table (
table_name string,
export_date timestamp
);

insert into control_table 'export_table1' as table_name, from_unixtime(unix_timestamp()) as export_date from control_table;

如果 export_table1 是您要增量导出的表,并假设是否已经执行了以上两条语句。

--execute below at once   
--get the timestamp when the table was last executed
create temporary table control_table_now as select table_name, max(export_date) as last_export_date from control_table group by table_name;

--get incremental rows
create table new_export_table1 as select field1, field2, field3, .... timestamp1 from export_table1 e, control_table_now c where c.table_name = 'export_table1' and e.timestamp1 >= c.last_export_date;

--append the control_table for next process
insert into control_table 'export_table1' as table_name, from_unixtime(unix_timestamp()) as export_date from control_table;

现在,导出使用 sqoop export 命令增量创建的 new_export_table1 表。

关于hadoop - 使用 hcatalog 的 Sqoop 增量导出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36727016/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com