HIVE實現wordcount過程
1、建表並關聯資料:
進入hive命令列:
hive
執行:
create external table wordcounts(line string) row format delimited fields terminated by '\n' stored as textfile location '/input/wordcount';
2、建立ruozedata.txt檔案,並上傳hdfs中的/input/wordcount目錄下。
vi ruozedata.txt
hello,ruoze
hello,jepsondb
hello,
hi,man
hi,gril
上傳命令:hdfs dfs -put ruozedata.txt /input/wordcount
3、進入HIVE,查詢是否已經將資料關聯到表中
select * from wordcounts;
4、進入HIVE,進行拆分,把每行資料拆分成單詞,這裡需要用到一個hive的內建表生成函式(UDTF):explode(array),引數是array,其實就是行變多列:
split是拆分函式,與java的split功能一樣,這裡是按照逗號拆分,再對子查詢中的結果進行group by word,執行完hql語句如下:
select word, count(*) from (select explode(split(line, ",")) as word from wordcounts) t group by word;
總結:hive比較簡便,對於比較複雜的統計操作可以建一些中間表。
進入hive命令列:
hive
執行:
create external table wordcounts(line string) row format delimited fields terminated by '\n' stored as textfile location '/input/wordcount';
2、建立ruozedata.txt檔案,並上傳hdfs中的/input/wordcount目錄下。
vi ruozedata.txt
hello,ruoze
hello,jepsondb
hello,
hi,man
hi,gril
上傳命令:hdfs dfs -put ruozedata.txt /input/wordcount
3、進入HIVE,查詢是否已經將資料關聯到表中
select * from wordcounts;
4、進入HIVE,進行拆分,把每行資料拆分成單詞,這裡需要用到一個hive的內建表生成函式(UDTF):explode(array),引數是array,其實就是行變多列:
split是拆分函式,與java的split功能一樣,這裡是按照逗號拆分,再對子查詢中的結果進行group by word,執行完hql語句如下:
select word, count(*) from (select explode(split(line, ",")) as word from wordcounts) t group by word;
總結:hive比較簡便,對於比較複雜的統計操作可以建一些中間表。
若澤大資料交流群:671914634
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31511218/viewspace-2149439/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用Hive處理WordCountHive
- Hive 如何方便地實現儲存過程?Hive儲存過程
- MapReduce 過程詳解 (用WordCount作為例子)
- promise實現過程Promise
- Hive SQL 編譯過程詳解HiveSQL編譯
- KVC、KVO實現過程
- PHP 協程實現過程詳解PHP
- [Hive]Hive實現抽樣查詢Hive
- 手寫AOP實現過程
- 手寫IOC實現過程
- 換膚功能實現過程
- SDWebImage內部實現過程Web
- Spring AOP實現過程Spring
- vertica 如何實現儲存過程?儲存過程
- JWT實現過程及應用JWT
- Hive SQL的底層編譯過程詳解HiveSQL編譯
- Storm實戰之WordCountORM
- 使用IDEA+Maven實現MapReduce的WordCount功能IdeaMaven
- 通過ES-Hadoop實現Hive讀寫Elasticsearch資料HadoopHiveElasticsearch
- 【Node】詳解模組的實現過程
- Spring MVC實現過程淺析SpringMVC
- 面試題 SDWebImage內部實現過程面試題Web
- PHP實現多儲存過程呼叫PHP儲存過程
- django 動態查詢實現過程Django
- 實戰儲存過程排程過程儲存過程
- Hive原始碼分析(1)——HiveServer2啟動過程Hive原始碼Server
- Ajax-伺服器端實現過程伺服器
- synchronized的實現原理——鎖膨脹過程synchronized
- Java影像灰度化的實現過程解析Java
- Android 引導介面的實現過程Android
- 設計並實現倉庫 ETL 過程
- sqlserver儲存過程實現多表分頁SQLServer儲存過程
- 虛擬機器實現dataguard配置過程虛擬機
- 在Java中實現回撥過程 (轉)Java
- 第02講:Flink 入門程式 WordCount 和 SQL 實現SQL
- Java UrlRewrite 實現網站URL重寫過程實錄Java網站
- jQuery實現的簡單焦點圖特效實現過程詳解jQuery特效
- android中foreground水波實現過程分析Android