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

42 篇文章 7 订阅
12 篇文章 0 订阅

一、目标

用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一定要注意字段的类型转换。

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

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

天地风雷水火山泽

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

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

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

打赏作者

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

抵扣说明:

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

余额充值