Hive從入門到精通系列之--0.Hive概述和安裝環境
一 Hive概述
Hive是由Facebook開源用於解決海量結構化日誌的資料統計
Hive是基於Hadoop框架的一個數據倉庫分析工具,這裡對於資料倉庫,何為資料倉庫?mysql,orical,sqlserver我們叫這些為資料庫,所謂資料倉庫就是在這個資料倉庫中這些資料庫都包含了進去。Hive既然是基於Hadoop的,那麼也就意味著啟動Hive之前必須要啟動Hadoop,Hive可以將結構化的資料對映成為一張表格,並且提供類sql的語法,他是一個分析資料的框架,資料本身儲存在HDFS上,資料的操作以mapreduce形式執行,表的元資料儲存在mysql中。
學習Hive的要點:
-
Hive是一個工具,安裝只需要一臺即可。
-
Hive的核心是將hql與mapreduce相互轉換。
-
HIve是針對資料倉庫提出的一款資料分析的工具,資料倉庫是讀多寫少的。
二 Hive的下載安裝
2.1 hive下載
hive的網址:http://hive.apache.org/
點選左側DOWNLOADS進入下載頁面:
點選上圖Download a release now選擇對應版本下載,儘量老版本,穩定
2.2 安裝配置
(1)使用xftp工具將下載好的hive上傳到hadoop102機器上
(2)解壓hive的tar包
tar -zxvf apache-hive-1.2.1-bin.tar.gz -C /opt/module
(3)配置Hive的環境變數
vim /etc/profile
新增如下:
##HIVE_HOME
export HIVE_HOME=/opt/module/apache-hive-1.2.1-bin
export PATH=$PATH:$HIVE_HOME/bin
最後切記source /etc/profile使其生效
(4)配置hive-env.sh
進入hive的conf目錄下
將hive-env.sh.template名稱改為hive-env.sh:mv hive-env.sh.template hive-env.sh
vim hive-env.sh
修改如下:
export HADOOP_HOME=/opt/module/hadoop-2.7.2 基於hadoop'的框架,肯定要告訴它hadoop在哪
export HIVE_CONF_DIR=/opt/module/hive/conf 配置hive的配置檔案地址,就是安裝目錄的那個conf
三 Hive的啟動
3.1 啟動Hadoop
sbin/start-dfs.sh
sbin/start-yarn.sh
3.2準備兩個資料夾
進入hadoop檔案下 bin/hdfs dfs -mkdir /tmp
bin/hdf dfs -mkdir -p /user/hive/warehouse
關於tmp,我進去看過,感覺就是個臨時檔案,具體幹什麼的我也沒有搞清楚,旁邊也沒有大神可以詢問
關於warehouse,這個我知道,Hive是一個工具,他可以建立表的元資料,前面也提過它儲存在HDFS上,具體的位置就是這個warehouse
3.3Hive的基本操作
前面說Hive是一個數據分析的工具,牢記工具二字,它不是像hadoop和zookeeper一樣提供服務的框架,它只是一個操作hadoop的哦你根據,客戶端,好比方說nvicat和mysql等資料庫的關係。
(1)啟動Hive:進入hive目錄下 bin/hive
如果此時報錯,
java.lang.RuntimeException: The root scratch dir: /tmp/hive on HDFS should be writable. Current permissions are: rwxr-xr-x
如上圖所示,說明這是許可權問題,會Linux都會改:bin/hdfs dfs -chmod -R 777 /tmp。
(2)檢視資料庫:show databases;
(3)退出Hive:exit;或者quit;
(4)顯示所有表格:show tables;
(5)建立表格:create table test1(id int,name string);
(6)查看錶的結構:desc test1;
和sql語句真的很像,但是在Hive中,這些語句叫做hql,簡直不要太尷尬。