Hive之WordCount

x33g5p2x  于2021-03-14 发布在 Hive  
字(1.1k)|赞(0)|评价(0)|浏览(349)
  • 我们以前进行数据分析,主要都是编写MapReduce代码,复杂的数据分析还需要进行Combiner、Shuffer处理。现在有了Hive,我们可以通过编写Hive QL语句进行数据分析,经过Hive转换器可以将Hive QL语句转换为相应的MapReduce任务。
  • 现在通过一个词频统计示例来说明Hive的数据分析,词频统计算法是最能体现MapReduce思想的算法之一,因此这里以WordCount为例,简单比较一下MapReduce编程和Hive语句的不同点。

[info] (1)创建单词统计文件 hiveWordCount.txt

# 进入software目录
cd /data/software

# 创建 hiveWordCount.txt 文件
vi hiveWordCount.txt

# 写入一下内容
A喜欢B B喜欢C C喜欢A A喜欢B B喜欢C C喜欢A
A喜欢B B喜欢C C喜欢A
A喜欢B
A喜欢B

:-:

[info] (2)把 hiveWordCount.txt 推送去HDFS

# 创建HDFS的上传目录hiveWordCount
hadoop fs -mkdir /hiveWordCount

# 把hiveWordCount.txt推送上去HDFS的hiveWordCount
hadoop fs -put /data/software/hiveWordCount.txt /hiveWordCount

:-:

[info] (3)在 bigdata1登录hive,并创建表hiveWordCountTable

# 登录hive
hive

# 创建内部表hiveWordCountTable
create table hiveWordCountTable(line String);

# 把HDFS中的hiveWordCount.txt导入到内部表hiveWordCountTable
load data  inpath '/hiveWordCount/hiveWordCount.txt' into table hiveWordCountTable;

:-:

[info] (4)执行数据分析语句

create table word_count as 
select single_word, count(1) as count from (select explode(split(line,' ')) 
as single_word from hiveWordCountTable) w
group by single_word
order by single_word;

:-:

[info] (5)查看分析结果

select * from word_count;

:-:

相关文章

微信公众号

最新文章

更多