编写HiveQL语句实现WordCount算法

确保启动hadooop 和hive

 

创建测试文件

echo "hello world" > file1.txt echo "hello hadoop" > file2.txt # 创建HDFS上的/input目录 hdfs dfs -mkdir -p /input # 将本地文件上传到HDFS hdfs dfs -put file1.txt /input/ hdfs dfs -put file2.txt /input/


打开Hive shell
输入以下命令创建一个名为docs的临时表:
CREATE TABLE docs(line STRING);

将HDFS上的/input目录下的所有文件加载到docs表中。由于HDFS中已经有/input目录,您可以使用以下命令将其加载到Hive表中:
LOAD DATA INPATH '/input' INTO TABLE docs;

接下来,创建一个名为word_count的新表,用于存储词频统计结果。输入以下HiveQL命令:
CREATE TABLE word_count AS SELECT word, COUNT(1) AS count FROM (SELECT explode(split(line, '')) AS word FROM docs) w GROUP BY word ORDER BY word;

最后,使用select语句查看word_count表中的数据,得到词频统计结果
SELECT * FROM word_count;
posted @ 2024-10-21 20:51  财神给你送元宝  阅读(7)  评论(0编辑  收藏  举报