大數據實戰05-hive入門及相關實踐

在開始學習hive之前我們首先必須弄清楚以下的這些問題,學習任何新的知識首先必須明白該技術產生的背景,該技術的主要的用途。

hive是什麼
hive是基於Hadoop的一個數據倉庫工具,用來進行數據提取、轉化、加載,這是一種可以存儲、查詢和分析存儲在Hadoop中的大規模數據的機制。hive數據倉庫工具能將結構化的數據文件映射爲一張數據庫表,並提供SQL查詢功能,能將SQL語句轉變成MapReduce任務來執行。

hive的作用
學習成本低,具有SQL基礎的開發人員可以通過類似SQL語句實現快速MapReduce統計,使MapReduce變得更加簡單,而不必開發專門的MapReduce應用程序。

hive入門

  • 下載cdh指定版本的hive(hive-1.1.0-cdh5.15.1)
  • 將下載好的壓縮包上傳到linux環境的指定目錄下
  • 解壓tar -zxvf xxx(這裏爲hive存放的位置)
  • 進行hive相關的配置

hive的相關的配置

1、vim   /etc/profile
添加:#hive
export HIVE_HOME=/home/hadoop/app/hive-1.1.0-cdh5.15.1
export PATH=$HIVE_HOME/bin:$PATH

添加完成後退出
source /etc/profile  #使配置文件立即生效

進入hive的conf目錄下
/hive-1.1.0-cdh5.15.1/conf

#複製配置文件
cp hive-env.sh.template hive-env.sh

#配置hive-env.sh
HADOOP_HOME=/home/hadoop/app/hadoop-2.6.0-cdh5.15.1

#配置hive-site.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
        <name>javax.jdo.option.ConnectionURL</name>
        <!--這裏需要根據自己的ip進行配置-->
        <value>jdbc:mysql://192.168.93.10:3306/hive?createDatabaseIfNotExist=true</value>
  </property>
  <property>
        <name>javax.jdo.option.ConnectionDriverName</name>
        <value>com.mysql.jdbc.Driver</value>
  </property>
  <property>
        <name>javax.jdo.option.ConnectionUserName</name>
        <value>root</value>
  </property>
  <property>
        <name>javax.jdo.option.ConnectionPassword</name>
        <value>root</value>
  </property>
</configuration>

上傳MySQL的mysql-connector-java-5.1.27.jar到hive的lib目錄下

啓動hive
切換盤符到hive的/bin目錄下,輸入:hive(確保已經啓動了hadoop)

啓動成功的畫面
在這裏插入圖片描述
可能遇到的問題

Cannot create directory /tmp. Name node is in safe mode

解決的方法
hadoop dfsadmin -safemode leave
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章