streamingset学习之旅

背景,之前需要把oracle的数据拉取导kudu,组内大神增加了flume组件。

jdbcsource,之前配置文件时xxx.conf,改造后flume不读配置文件,将配置文件放到mysql

中间接入了zk,将读取的offset记录到zk。

kudusink,改造后的kudusink 就是建立一个kuduclient,从channal里获取数据,然后通过kuduClient写道kudu里。

后面不知道怎么的 大神觉得flume不太好用。。。。用了一个大杀器 streamingset

文档https://streamsets.com/documentation/datacollector/latest/help/datacollector/UserGuide/Getting_Started/GettingStarted_Title.html#concept_htw_ghg_jq

源码https://github.com/streamsets/datacollector  

不多说直接上案例。

1、读取oracle指定表的数据写到kudu,并且会实时监控后续增加的数据,类似flume

选取jdbc Query Consumer

配置oracle或者mysql等jdbc源

备注这个sql query必须要有一个offset列,也就是说指定一列,一般为主键id列或者etl_date列。

例如 select  rowidtochar(rowid) "ROWID" ,ID ,NAME。。。。。。。。。

from dwdmdata.dm_kpi_dim_account    where etl_last_update_date > to_date('${OFFSET}','yyyy-mm-dd hh24:mi:ss')  order by etl_last_update_date

备注 这里我有ROWID是因为kudu表根据oracle表建表的时候必须指定主键,有的oracle表没有主键id,所以采用ROWID

oracle配置其他参数如上图

选取kudu组件

配置kudu参数,下面的Field to Column Mapping ,我理解的是上面oracle 的Root Field Type = List-Map

一个map里放的就是 Oracle字段-kudu的字段。

连接好就可以启动了。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值