【阿尼亚喜欢BigData】“红亚杯”常用数据分析Hive SQL应用专题赛——满分解析③

大家好,喜欢Bigdata的阿尼亚来了!希望大家会喜欢阿尼亚的文章!!哇酷哇酷!!!

本次为师傅们带来的是“红亚杯”常用数据分析Hive SQL应用专题赛——满分解析系列的第③期,是“Hive专题赛(2)”篇章哦!

第①期完整赛题、第②期Hive专题赛(1)的链接在下面,师傅们想看完整赛题、Hive专题赛(1)的请安心享用:

【阿尼亚喜欢BigData】“红亚杯”常用数据分析Hive SQL应用专题赛——满分解析①_爱波吉的阿尼亚的博客-CSDN博客

【阿尼亚喜欢BigData】“红亚杯”常用数据分析Hive SQL应用专题赛——满分解析②_爱波吉的阿尼亚的博客-CSDN博客

目录

Hive专题赛(2)

TopK、排序数据分析:

1.统计person表中各种族(race)的总人数,并按照总人数倒序排序,将结果写入本地/root/person06/。

2.统计不同职业薪资大于50K的总人数,且人数按照降序排序取Top3,将结果写入本地/root/person07/。

3.计算较高收入(收入等于大于50K的为高收入)人群占整体数据的比例(保留两位小数),注意:设置支持笛卡尔积参考步骤说明,将结果写入本地/root/person08/。

Hive DDL基础操作:

1.在person数据库下创建student内部表(表结构参考步骤描述),并指定以制表符“\t”分隔;

2.使用alter语句修改student内部表结构新增一列字段名称为“address”,类型为“string”;

3.使用drop语句删除student内部表。


Hive专题赛(2)

TopK、排序数据分析:

TopK、排序数据分析

考核条件如下:

1.统计person表中各种族(race)的总人数,并按照总人数倒序排序,将结果写入本地/root/person06/。

操作环境: hive专题赛环境

insert overwrite local directory '/root/person06'
row format delimited fields terminated by '\t'
select race,count(*) as c from person group by race order by c desc;

2.统计不同职业薪资大于50K的总人数,且人数按照降序排序取Top3,将结果写入本地/root/person07/。

操作环境: hive专题赛环境

insert overwrite local directory '/root/person07/'
row format delimited fields terminated by '\t'
select occupation,count(*) as s from (select * from person where income=">50K") t1 group by occupation order by s desc limit 3;

3.计算较高收入(收入等于大于50K的为高收入)人群占整体数据的比例(保留两位小数),注意:设置支持笛卡尔积参考步骤说明,将结果写入本地/root/person08/。

操作环境: hive专题赛环境

set hive.strict.checks.cartesian.product;         #查看当前是否支持笛卡尔积

set hive.strict.checks.cartesian.product=false;   #修改设定成为支持笛卡尔积
insert overwrite local directory '/root/person08/'
row format delimited fields terminated by '\t'
select round((t2.v/t4.s),2) from (select count(*) as v from person t1 where income=">50K" )t2 join (select count(*) as s from person t3) t4;

Hive DDL基础操作:

Hive DDL基础操作

考核条件如下:

1.在person数据库下创建student内部表(表结构参考步骤描述),并指定以制表符“\t”分隔;

操作环境: hive专题赛环境

create table if not exists student(id int,name string,age int,sex string)
row format delimited fields terminated by '\t';

2.使用alter语句修改student内部表结构新增一列字段名称为“address”,类型为“string”;

操作环境: hive专题赛环境

alter table student add columns(address string);

3.使用drop语句删除student内部表。

操作环境: hive专题赛环境

drop table if exists student; 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱波吉的阿尼亚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值