卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

怎么在hive里用sql查詢信息?

網(wǎng)友解答: 感謝邀請。Apache Hive還是我2年前在項目組中構(gòu)建大數(shù)據(jù)集數(shù)據(jù)倉庫用到的技術(shù),當時用到的版本是1.5, 現(xiàn)在的版本是2.3.2 增加了許多功能點,如beeline、增

網(wǎng)友解答:

感謝邀請。

Apache Hive還是我2年前在項目組中構(gòu)建大數(shù)據(jù)集數(shù)據(jù)倉庫用到的技術(shù),當時用到的版本是1.5, 現(xiàn)在的版本是2.3.2 增加了許多功能點,如beeline、增加后端計算引擎支持等。

先簡單介紹下Apache Hive, 它是Hadoop生態(tài)鏈中的一個數(shù)據(jù)倉庫(Data Warehouse)工具,可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫表,并提供簡單的sql查詢功能,而sql語句轉(zhuǎn)換為MapReduce任務進行運行,在Hive2.0以上的版本,sql還可以轉(zhuǎn)化為Spark任務,其速度往往比MapReduce任務快的多。

Hive的優(yōu)點是學習成本低,簡單易用。 Hive 定義了簡單的類 SQL 查詢語言,稱為 HiveQL。 允許熟悉 SQL 的開發(fā)人員不必開發(fā)專門的MapReduce應用就可以對數(shù)據(jù)進行操作和查詢,十分適合數(shù)據(jù)倉庫的統(tǒng)計分析。同時,這個語言也允許熟悉 MapReduce 開發(fā)者的開發(fā)自定義的 mapper 和 reducer 來處理內(nèi)建的 mapper 和 reducer 無法完成的復雜的分析工作。

問題中的Hive如何用sql查詢信息,更準確的說法是如何調(diào)用HiveQL查詢信息。熟悉SQL查詢方式(select clause)幾乎無縫在Hive中查詢。

Hive查詢語句的語法:

SELECT [ALL | DISTINCT] select_expr, select_expr, ... FROM table_reference [WHERE where_condition] [GROUP BY col_list] [HAVING having_condition][CLUSTER BY col_list | [DISTRIBUTE BY col_list] [SORT BY col_list]] [LIMIT number] ;

下面給出幾個例子說明Hive的使用。

1,對文件中的詞頻進行統(tǒng)計分析。

hive DROP TABLE IF EXISTS docs;hive CREATE TABLE docs (line STRING);hive LOAD DATA INPATH 'input_file' OVERWRITE INTO TABLE docs;hive CREATE TABLE word_counts

AS

SELECT word, count(1) AS count

FROM

(SELECT explode(split(line, 's')) AS word FROM docs) temp

GROUP BY word

ORDER BY word;

2, 比如說數(shù)據(jù)文件已經(jīng)映射為如下表:

a. 獲取工資大于25000的人員姓名和職位。

hive SELECT Name, Position FROM employee WHERE salary25000;

b, 獲取職位相關人員數(shù)量

hive SELECT Position, COUNT(1) AS PersonCount FROM employee GROUP BY Postion;

可以看出簡單用法時和普通的SQL語句沒有太多區(qū)別。

【補充】

1,進入Hive終端的方式很直接,在安裝好Hive并且配置好環(huán)境變量后,直接鍵入hive 或者beeline就會進入Hive的終端。正常的話就會看到提示符如下:

hive ....

就可以在其中輸入其他命令或者語句了。

2, 進入Hive后可以用下列命令查詢Hive數(shù)據(jù)倉庫的基本情況,比如表的個數(shù), 表的屬性信息等:

hive show tables;hive describe `tablename';

希望這個回答可以有幫助,歡迎交流!

標簽: