6- ABC迁移大数据2

1.存储过程迁移方法:

存储过程的迁移我们直接用单个的HQL脚本里进行逻辑的迁移,需要注意的点是,在过程里有一些不需要落地的临时表(先delete再insert),以及最终的结果表需要落地(先delete再insert)。如下图:

在HQL脚本里,临时表(删除表后再重建表),结果表覆盖方式重写指定分区数据(overwrite)。如下图:

 

2.包迁移方法:

包的迁移,我们可以理解为包是由多个过程组成的,拆分成上面的过程迁移方式,生成多个HQL脚本,在调用的时候跟据包的顺序执行就可以了。

 

3.函数迁移方法:

函数迁移中,我们首先看是否可以采用HQL脚本实现函数的逻辑,如果做不到,我们需要自己在HIVE中编写自定义的函数,自定义的函数编写比较长,可以单独写一遍文单介绍。然后发布到HIVE环境中,就可以直接使用,像使用sum,avg等这样的函数一样。目前HIVE自带的函数很丰富了,基本会满足我们的需求。

 

4.调度迁移:

在关系库中,我们调度采用的是JOB,以及包和过程里的调用关系。在HIVE中,我们迁移的只有单个的HQL脚本,如何按照关系库的调度和调用关系来让HQL脚本执行,最原始的方法是我们编写一个SH脚本,通过SH脚本来调用HQL脚本,这里可以做到串行,并行调用,如下图:

程序逻辑的调用和执行关系完成了,如何达到我们的JOB定时执行呢,我们也是采用linux的crontab命令。如下图说明:

具体样例脚本见:https://github.com/blt328/abc_hive下载.

更多技术文章请关注公众号BLT328(长按后点识别图中二维码):

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值