Hive2.2.0安裝
來源:http://www.cnblogs.com/hmy-blog/p/6506417.html
一、Hive 執行模式
1. 內嵌模式
將元資料儲存在本地內嵌的 Derby 資料庫中,這是使用 Hive 最簡單的方式。但是這種方式缺點也比較明顯,因為一個內嵌的 Derby 資料庫每次只能訪問一個數據檔案,這也就意味著它不支援多會話連線。
2. 本地模式
這種模式是將元資料儲存在本地獨立的資料庫中(一般是 MySQL),這用就可以支援多會話和多使用者連線了。
3. 遠端模式
此模式應用於 Hive 客戶端較多的情況。把 MySQL 資料庫獨立出來,將元資料儲存在遠端獨立的 MySQL 服務中,避免了在每個客戶端都安裝 MySQL 服務從而造成冗餘浪費的情況。
二、下載安裝 Hive
http://hive.apache.org/downloads.html
tar -xzvf apache-hive-2.2.0-bin.tar.gz ##解壓
三、配置系統環境變數
修改 /etc/profile 檔案 vim ~/.bashrc 來修改(root使用者操作):
- 設定 Hive環境變數
- # Hive environment
- export HIVE_HOME=/usr/local/apache-hive-2.2.0-bin
- export PATH=$HIVE_HOME/bin:$HIVE_HOME/conf:$PATH
- 使環境變數生效:
- source ~/.bashrc
四、內嵌模式
(1)修改 Hive 配置檔案
$HIVE_HOME/conf 對應的是 Hive 的配置檔案路徑,類似於之前學習的Hbase, 該路徑下的 hive-site.xml 是 Hive 工程的配置檔案。預設情況下,該檔案並不存在,我們需要拷貝它的模版來實現:
- cp hive-default.xml.template hive-site.xml
hive-site.xml 的主要配置有:
hive.metastore.warehouse.dir
該引數指定了 Hive 的資料儲存目錄,預設位置在 HDFS 上面的 /user/hive/warehouse 路徑下。hive.exec.scratchdir
該引數指定了 Hive 的資料臨時檔案目錄,預設位置為 HDFS 上面的 /tmp/hive 路徑下。
同時我們還要修改 Hive 目錄下 /conf/hive-env.sh 檔案(請根據自己的實際路徑修改),該檔案預設也不存在,同樣是拷貝它的模版來修改:
cp hive-env.sh.template hive-env.sh
- # Set HADOOP_HOME to point to a specific hadoop install directory
- HADOOP_HOME= /usr/local/hadoop-2.6.0
- # Hive Configuration Directory can be controlled by:
- export HIVE_CONF_DIR=/home/hadoop/cloud/apache-hive-2.1.1-bin/conf
- # Folder containing extra ibraries required for hive compilation/execution can be controlled by:
- export HIVE_AUX_JARS_PATH=/home/hadoop/cloud/apache-hive-2.1.1-bin/lib
(2)建立必要目錄
前面我們看到 hive-site.xml 檔案中有兩個重要的路徑,切換到 hadoop 使用者下檢視 HDFS 是否有這些路徑:
- hadoop fs -ls /
沒有發現上面提到的路徑,因此我們需要自己新建這些目錄,並且給它們賦予使用者寫(W)許可權。
- $HADOOP_HOME/bin/hdfs dfs -mkdir -p /user/hive/warehouse
- $HADOOP_HOME/bin/hdfs dfs -mkdir -p /tmp/hive/
- hdfs dfs -chmod 777 /user/hive/warehouse
- hdfs dfs -chmod 777 /tmp/hive
檢查是否新建成功 hadoop fs -ls / 以及 hadoop fs -ls /user/hive/ :
(3)修改 io.tmpdir 路徑【不需要】
同時,要修改 hive-site.xml 中所有包含 ${system:java.io.tmpdir} 欄位的 value 即路徑(vim下 / 表示搜尋,後面跟你的關鍵詞,比如搜尋 hello,則為 /hello , 再回車即可),你可以自己新建一個目錄來替換它,例如 /home/Hadoop/cloud/apache-hive-2.1.1-bin/iotmp
- mkdir /home/hadoop/cloud/apache-hive-2.1.1-bin/iotmp
- chmod 777 /home/hadoop/cloud/apache-hive-2.1.1-bin/iotmp
- 把hive-site.xml 中所有包含 ${system:Java.io.tmpdir}替換成/home/hadoop/cloud/apache-hive-2.1.1-bin/iotmp
全域性替換命令 先按Esc鍵 再同時按shift+:把以下替換命令貼上按回車即可全域性替換
- %s#${system:java.io.tmpdir}#/home/hadoop/cloud/apache-hive-2.1.1-bin/iotmp#g
(4)執行 Hive
- ./bin/hive
報錯
解決辦法:$HIVE_HOME/bin/schematool -dbType derby -initSchema 應該會報錯
報錯
解決方法:刪除/home/hadoop/cloud/apache-hive-2.1.1-bin目錄下 rm -rf metastore_db/
再次初始化:$HIVE_HOME/bin/schematool -dbType derby -initSchema 不再報錯
重新執行./bin/hive
報錯
/tem/hive 沒寫的許可權
Hive本身自帶一個資料庫,但是有弊端,hive本身資料庫,每次只允許一個使用者登入
mysql安裝:http://blog.csdn.net/u014695188/article/details/51532410
設定mysql關聯hive
修改配置檔案
### 建立hive-site.xml檔案
在hive/conf/目錄下建立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>
- <value>jdbc:mysql://192.168.169.134: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>123456</value>
- </property>
-
<!--
下面這個配置我不要也能執行沒有報錯-->
- <property>
- <name>hive.metastore.schema.verification</name>
- <value>false</value>
- <description>
- Enforce metastore schema version consistency.
- True: Verify that version information stored in metastore matches with one from Hive jars. Also disable automatic
- schema migration attempt. Users are required to manully migrate schema after Hive upgrade which ensures
- proper metastore schema migration. (Default)
- False: Warn if the version information stored in metastore doesn't match with one from in Hive jars.
- </description>
- </property>
- </configuration>
報錯:Caused by: MetaException(message:Version information not found in metastore. )
解決:hive-site.xml加入
- <property>
- <name>hive.metastore.schema.verification</name>
- <value>false</value>
- <description>
- Enforce metastore schema version consistency.
- True: Verify that version information stored in metastore matches with one from Hive jars. Also disable automatic
- schema migration attempt. Users are required to manully migrate schema after Hive upgrade which ensures
- proper metastore schema migration. (Default)
- False: Warn if the version information stored in metastore doesn't match with one from in Hive jars.
- </description>
- </property>
報錯:缺少mysql jar包
解決:將其(如mysql-connector-Java-5.1.15-bin.jar)拷貝到$HIVE_HOME/lib下即可。
報錯:
- Exception in thread "main" java.lang.RuntimeException: Hive metastore database is not initialized.
- Please use schematool (e.g. ./schematool -initSchema -dbType ...) to create the schema. If needed,
- don't forget to include the option to auto-create the underlying database in your JDBC connection string (e.g. ?createDatabaseIfNotExist=true for mysql)
解決:
- #資料庫的初始化。
- bin/schematool -initSchema -dbType mysql
啟動:
- bin/hive
啟動後mysql 多了hive 資料庫
建立資料庫
create database db_hive_test;建立測試表
use db_hive_test;
create table student(id int,name string) row format delimited fields terminated by '\t';
載入資料到表中
新建student.txt 檔案寫入資料(id,name 按tab鍵分隔)
vi student.txt
- 1001 zhangsan
- 1002 lisi
- 1003 wangwu
- 1004 zhaoli
load data local inpath '/home/hadoop/student.txt' into table db_hive_test.student
查詢表資訊
select * from student;
查看錶的詳細資訊
desc formatted student;
通過ui頁面檢視建立的資料位置
http://192.168.169.132:50070/explorer.html#/user/hive/warehouse/db_hive_test.db
通過Mysql檢視建立的表
檢視hive的函式
show functions;
檢視函式詳細資訊
desc function sum;
desc function extended
相關推薦
Hive2.2.0安裝
來源:http://www.cnblogs.com/hmy-blog/p/6506417.html 一、Hive 執行模式 與 Hadoop 類似,Hive 也有 3 種執行模式: 1. 內嵌模式 將元資料儲存在本地內嵌的 Derby 資料庫中,這是使用 Hive
kali 2.0安裝 搜狗輸入法簡易教程
kali 搜狗輸入法安裝kali,配置好安裝源,選擇阿裏鏡像源。(網上教程很多自行搜索)通過瀏覽器進入搜狗官網下載(linux版本,位數根據安裝kali位數定)將下載好的搜狗輸入法版本從下載文件夾路徑剪切到home目錄下(kali界面可操作性)在home目錄下看文件是否存在,然後執行apt-get -f i
Spark 2.2.0 安裝與配置
mem p s template .sh org uri 文件 圖片 with 下載Spark 解壓並移動到/software目錄: tar -zxvf spark-2.2.0-bin-without-hadoop.tgz mv spark-2.2.0-bin-withou
Hive2.1.0安裝
1.安裝準備 Hadoop版本:2.7.2 MySQL版本:5.7.3 下載安裝包: apache-hive-2.1.0-bin.tar.gz 解壓重新命名: tar zxvf apache-hive-2.1.0-bin.tar.gz mv apache-hive-2.1.0-bin hive
Dart SDK 2.0安裝問題
官方標準安裝方法: $ brew tap dart-lang/dart $ brew install dart 但是執行第二步會出錯: ==> Installing dart from dart-lang/dart ==> Downloading https://storage.google
CentOS6.8下Nagios-4.2.0安裝和配置
因此 figure 問題 usermod linux文件 httpd的配置 pen kconfig etc 1實驗目標 掌握Nagios的安裝 2實驗環境 主機名:Nagios-Server 操作系統:CentOS release 6.8 (Final) IP地址:19
ubuntu16.04 + opencv3.2.0 安裝教程
0、安裝前準備: (1)安裝編譯工具 sudo apt-get install build-essential -y (2)安裝依賴包 sudo apt-get install libgtk2.0-dev pkg-config libavcodec-dev libavformat-d
cdh5.7.0偽分散式叢集之spark-2.2.0安裝
基本環境及軟體: 軟體版本 軟體包 centos-6.4 JDK-1.8 jdk-8u191-linux-x64.tar.gz hadoo
dotnet hosting 2.2.0 安裝到 Server 2012 X64 DC伺服器,.Net Framework 老站崩潰問題
1,dotnet hosting 2.2.0 需要C++2015 2,C++2015 需要 KB2919355 https://www.microsoft.com/zh-cn/download/confirmati
dotnet hosting 2.2.0 安裝到 Server 2012 X64 DC服務器,.Net Framework 老站崩潰問題
x64 server 2.2.0 frame .aspx download kb2919355 hosting conf 1,dotnet hosting 2.2.0 需要C++2015 2,C++2015 需要 KB2919355 https://www.m
Android Studio 3.2.0安裝
1、下載地址: http://www.android-studio.org/ 預設是64位的,如果是要32位的,從“選擇其他平臺“中找到Windows (32-bit) 2、開啟安裝包一路點選“Next”進行安裝,安裝路徑預設是C盤目錄,建議不要更改。 3、開啟
tcl-debug-2.0 安裝除錯 NS2.34
1、./configure --prefix=/path prefix選項是配置安裝的路徑,如果不配置該選項,安裝後可執行檔案預設放在/usr/local/bin,庫檔案預設放在/usr/local/lib,配置檔案預設放在/usr/local/etc,其它的資原始檔放在/usr/local/s
SAP S/4 1610 IDES + HANA 2.0 安裝
前幾天安裝的都沒帶演示資料 ,這個版本帶DEMO資料,學習比較好我的機器配置:記憶體:128GCPU:E5-2618L V4硬碟:1T SSD安裝在VMware虛擬機器中,安裝完後,虛擬機器大小隻有一百多G,沒有想象中的大。64G記憶體沒試過,直接上的兩根64G條子,可以安裝,並且速度還不錯 http://1
最新版spark-2.2.0安裝教程
1.jdk的安裝;(java1.8) 2.hadoop安裝;(hadoop2.7.2) 3.scala安裝;(scala2.11.8) 4.spark安裝。(spark2.2.0) 0.環境:mac OS X 10.12 1.jdk的安裝:安裝java
Fakeapp2.2.0安裝圖文實錄-見坑填坑
先下載APP和core檔案; 連結:https://pan.baidu.com/s/1jJHShpk 密碼:wekn 具體安裝過程: 1、安裝必要環境; 硬體和作業系統,支援cuda的Nvidia顯示卡,8G及以上的記憶體,Windows10 x64,
spark-2.2.0安裝和部署
Spark下載 為了方便,我直接是進入到了/usr/local資料夾下面進行下載spark-2.2.0 wget https://d3kbcqa49mib13.cloudfront.net/spark-2.2.0-bin-hadoop2.7.tgz Spark安裝之前的準備 檔案的解壓與
Kali 2.0安裝之後的簡單設定
使用的是Kali-Linux-2.0.0-vm-amd64,下圖是安裝後的桌面 一、漢化 Applications--->Usual applications--->system tool --->preferences--->settings-
【Python+OpenCV】Windows+Python3.6.0(Anaconda3)+OpenCV3.2.0安裝配置
注:本次安裝因為我要配的這個筆記本是win7(32bit)的,所以安裝中軟體版本的選擇就是按32位走的,我之前在win10(64bit)也裝過,實際中這個教程的方法對於win7還是win10,32位又或是64位系統是通用的,軟體版本按需選擇就行了。 1.安裝Python
ruby 2.1.1 rails 4.2.0 安裝gemset 卻少 mysql ,command line tool for mac osx
Last login: Wed Aug 17 13:13:31 on ttys000 kevindeMacBook-Pro:~ kevin$ gem sources *** CURRENT SOURCES *** https://rubygems.org/ kevinde
hive2.2.1安裝
1下載hive 安裝包 2hive_home/conf cp hive-default.xml.templatehive-site.xml 把所有模板都改成去掉template的配置檔案 3修改hive-env.sh export HIVE_CONF_DIR=/app