使用Hive解决海量数据统计最值问题

本文介绍如何利用Hive处理1000w条数据的统计问题,通过Sqoop将数据导入HDFS,创建Hive表,使用sort_array函数找出每行的最大值和最小值,最后按name分组,实现高效的数据分析。
摘要由CSDN通过智能技术生成

1. 题目说明

设计题:MySQL数据库A有1000w条数据,完成统计再输入到另外的B表中

A表

test1	0.2,3.5,1,1
test1	1.2,2.3,4.56
test2	2.1,0.3,9.2,3.5,2.4
test3	2.1,4.5,3.4,7.65
test4	1.2,3.4,54,32.1,12.3
test5	12.1,12.3
test5	12.34
test5	0.01,0.02
test6	2.3,45.3,23.21
test6	23.4,23,22.12

 B表

test1   0.2     4.56
test2   0.3     9.2
test3   2.1     7.65
test4   1.2     54.0
test5   0.01    12.34
test6   2.3     45.3

2. 实现过程

不使用常规方式实现,这里讨论使用大数据分析工具完成。

(1)首先需要使用Sqoop将数据到HDFS上,分隔符为制表符

(2)常见Hive表

hive (default)> create table mydb(name string,num array<double>)
              > row format delimited fields terminated by '\t'
              > collection items terminated by ',';

(3)导入数据(这里使用本地测试文件)


                
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值