Home >Database >Mysql Tutorial >Oracle存储过程如何迁移到Hive?

Oracle存储过程如何迁移到Hive?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-07 16:48:411908browse

在将ORACLE存储过程迁移到HIVE平台时,不可避免地会遇到各种问题。ORACLE与HIVE都使用SQL语句,但是语法和特性不尽相同,本文简述

在将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语句为:

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

ORACLE和HIVE的各种关联语法对比,请移步

更多详情见请继续阅读下一页的精彩内容

linux

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn