實操用Hive分析大數據事半功倍

一般我們分析大數據,也許會想到Spark、Storm,但前提得會JAVA等編程語言,不然拿到數據也無法做分析。而Hive而解決了這個問題,只需要會Sql語言即可做mapreduce的大數據分析任務。今天我們創建測試數據用Hive進行mapreduce的實際分析。

實操用Hive分析大數據事半功倍

一、先安裝好Hive、Mysql環境

1、在昨天hdfs的基礎上,安裝Hive、Mysql。

2、因Hive依賴於Mysql存儲元數據、依賴於Hdfs存儲cell數據,在Hive中配置好Mysql的帳號、密碼。

3、在Mysql中創建Hive數據庫,新建Mysql的數據庫帳號、密碼。

二、創建測試數據

1、創建file測試數據

cd /usr/local/hadoop

mkdir input

echo "hello world" >file1.txt

echo "hello hadoop" >file2.txt

2、進入hive,將file導入到hive數據表中

hive> create table docs(line string); //創建僅有一個列元素的表

hive> load data local input '/usr/local/hadoop/input' overwrite into table docs; //將input目錄下的file1、file2倒入hive docs表格中。

用select * from docs證實數據倒入成功。

實操用Hive分析大數據事半功倍


三、創建測試分析任務

1、用sql語句進行word count的分析處理。

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;

2、檢查mapreduce任務

檢查mapreduce進程,上面的語句啟動了mapreduce任務。

實操用Hive分析大數據事半功倍

3、檢查結果

用select * from word_count,發現word count的任務成功完成。

實操用Hive分析大數據事半功倍

四、小結

1、hive依賴於mysql存元數據,依賴於hdfs存儲數據庫文件,是一個廉價的數據倉庫。

2、hive用sql語句創建mapreduce任務,適用於非實時的數據分析處理。

最後說一下,想要學習大數據的限時領取免費資料及課程

領取方法:

還是那個萬年不變的老規矩

1.評論文章,沒字數限制,一個字都行!

3.私信小編:“大數據開發教程”即可!

謝謝大家,祝大家學習愉快!(拿到教程後一定要好好學習,多練習哦!)


分享到:


相關文章: