oracle数据迁移到hive,ORACLE存储过程如何迁移到HIVE?

在将ORACLE存储过程迁移到HIVE平台时,不可避免地会遇到各种问题。

ORACLE与HIVE都使用SQL语句,但是语法和特性不尽相同,本文简述了几个迁移时需要注意的地方。

一.INSERT语句

ORACLE:

EXECUTE IMMEDIATE ‘TRUNCATE TABLE TABLE_A‘;

INSERT /*+APPEND*/ INTO A NOLOGGING (

COL_1,

COL_2,

COL_3,

)

迁移至HIVE语句为:

INSERT OVERWRITE TABLE TABLE_A;

OVERWRITE关键字声明插入数据时覆盖原有数据,和TRUNCATE清空表数据再INSERT效果相同。

注意HIVE插入表时不能指定插入的字段,因为HIVE存储的是非结构化的数据。

二.表关联

ORACLE:

SELECT /*+PARALLEL (A,8)*/

*

FROM A, B ,C

WHERE A.COL_1 = B.COL_1(+)

AND A.COL_1 = C.COL_1(+)

迁移至HIVE语句为:

SELECT *

FROM A

LEFT OUTER JOIN B

ON A.COL_1 = B.COL_1

LEFT OUTER JOIN C

ON A.COL_1 = C.COL_1

ORACLE注释/*+PARALLEL (A,8)*/需要删除,左关联的语法需要改为HIV

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值