hive (default)> add jar /usr/hdp/current/hive-client/lib/hive-contrib-1.2.1000.2.5.3.0-37.jar;
注册 row_sequence() 自定义项。
hive (default)> create temporary function row_sequence as 'org.apache.hadoop.hive.contrib.udf.UDFRowSequence';
执行查询
SELECT e.col1 col1, f.col2 col2, f.col3 col3
FROM
hive_tbl e,
(
SELECT c.col2, d.col3
FROM
(
SELECT row_sequence() entryseq, a.col2
FROM
(
SELECT EXPLODE(col2) col2
FROM hive_tbl
) a
) c
JOIN
(
SELECT row_sequence() entryseq, b.col3
FROM
(
SELECT EXPLODE(col3) col3
FROM hive_tbl
) b
) d
ON
c.entryseq = d.entryseq
) f;
1条答案
按热度按时间waxmsbnn1#
您可以尝试以下方法:
注册配置单元自定义项
找到
hive-contrib-<version>.jar
,并将其添加到配置单元中,以便对所有节点都可用。下面的路径来自hortonworks hdp发行版。注册
row_sequence()
自定义项。执行查询
插图:
数据文件
将文件加载到hdfs
创建并验证配置单元表
执行查询