一百二十、Kettle——从Hive全量导入到ClickHouse

本文详细介绍了如何利用Kettle工具,从Hive3.1.2版本的数据中提取并转换数据,然后全量导入到ClickHouse21.9.5.16。关键步骤包括配置Kettle的Hive和ClickHouse连接,编写SQL进行字段类型转换,尤其是将Hive的string字段转为ClickHouse的varchar,以及设置表输出控件进行批量插入。在确保字段映射正确后运行转换任务,最后在ClickHouse中验证数据导入的成功。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、目标

用kettle把hive数据同步到clickhouse,简单运行、直接全量导入数据

工具版本:kettle:8.2     Hive:3.1.2     ClickHouse21.9.5.16

二、前提

(一)kettle连上hive

(二)kettle连上clickhouse

三、实施步骤

(一)打开kettle,新建转换任务。拖拽表输入、字段选择、表输出控件

1.表输入控件:在输入控件模块

2.字段选择控件:在转换控件模块

3.表输出控件:在输出控件模块

 (二)配置表输入控件,尤其注意SQL里的字段类型转换

可以修改步骤名称为hive输入,选择hive数据库连接,然后写查询SQL语句

注意:hive里的string类型字段,需要转换为类似varchar(50)的具体大小的varchar字段

经测试:

--int字段、float、timestamp字段都可以直接用
--string字段   cast(device_no as varchar(50))

 (三)配置字段选择控件

1.在选择和修改页面,点击获取选择的字段

2.在元数据模块,点击获取改变的字段。修改相应的字段,比如字段名、字段类型、字段格式等等

(四)配置表输出控件

1.在主选项页面

(1)可以修改步骤名称为clickhouse输出

(2)选择连接对应的clickhouse数据库、目标模式就是数据库名、目标表为表名

(3)勾选指定数据库字段

(4)勾选使用批量插入

 2.在数据库字段页面

点击获取字段,检查相同字段名是否映射

 (五)Ctrl+S保存,给kettle任务命名,然后点击运行。

运行成功!

(六)在clickhouse表里检查数据,验证一下 

 这样,用kettle从hive导入click house就成功了。

注意点有两个,一是kettle的版本问题,二是从hive导入click house一定要注意字段的类型转换。

乐于奉献共享,帮我你我他!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天地风雷水火山泽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值