溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

hive-0.12的安裝步驟

發(fā)布時(shí)間:2021-07-27 09:17:35 來源:億速云 閱讀:138 作者:chen 欄目:云計(jì)算

這篇文章主要介紹“hive-0.12的安裝步驟”,在日常操作中,相信很多人在hive-0.12的安裝步驟問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”hive-0.12的安裝步驟”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!


 

Hive安裝部署

(安裝會(huì)有版本問題 hadoop1.0版本以上的請安裝hive-0.90測試

  hadoop2.0以上請安裝hive-0.12.0或者最新版測試)

hive-0.9.0 下載地址:http://pan.baidu.com/s/1rj6f8

hive-0.12.0下載地址:http://mirrors.hust.edu.cn/apache/hive/hive-0.12.0/

1.把hive-0.12.0.tar.gz復(fù)制到/home/hadoop

2.解壓hive-0. 12.0.tar.gz與重命名

#cd /usr/local

#tar -zxvf hive-0. 12.0.tar.gz

#mv hive-0. 12.0 hive

3.修改環(huán)境變量

修改/etc/profile文件。

#vi /etc/profile

增加

export HIVE_HOME=/hadoop/hadoop/hive

修改

exportPATH=$JAVA_HOME/bin:$PATH:$HADOOP_HOME/bin:$HIVE_HOME/bin

保存退出

#source /etc/profile

4.配置hive系統(tǒng)文件

4.1:修改conf目錄下的模板文件

l  cd  $HIVE_HOME/conf

l  mv  hive-env.sh.template  hive-env.sh

 l  mv hive-default.xml.template  hive-site.xml
  

4.2.修改$HIVE_HOME/bin的hive-config.sh,增加以下三行

export JAVA_HOME=/usr/local/jdk

export HIVE_HOME=/home/hadoop/hive

export HADOOP_HOME=/home/hadoop/hadoop2

4.3.啟動(dòng)hive

啟動(dòng)hive時(shí)候,記得先啟動(dòng)hadoop(因?yàn)閔ive是操作hdfs中的數(shù)據(jù))

jps命令查看當(dāng)前啟動(dòng)的java程序

#hive

4.4.報(bào)錯(cuò)—請修改hive-site.xml:(vi編輯下: /auth)

[FatalError] hive-site.xml:2002:16: The element type "value" must beterminated by the matching end-tag "</value>".

   2002  <value>auth</auth>

(在2002行第16字符那里: <value>auth</value>)

hive>show tables;

此時(shí)還報(bào)錯(cuò):

FAILED:Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask.java.lang.RuntimeException: Unable to instantiateorg.apache.hadoop.hive.metastore.HiveMetaStoreClient

最后將hive-site.xml 里面hive.metastore.schema.verification 的值改為 false后,就沒出現(xiàn)錯(cuò)誤了。

hive>create table test(idint,name string);

hive>quit;

5.驗(yàn)證創(chuàng)建表是否成功

方法一:觀察:#hadoop fs -ls /user/hive

參數(shù):hive.metastore.warehouse.dir

方法二:

http://cloud4:50070    如果配置成功,查看/user/hive就存在
 

6.Hive的metastore

l  metastore是hive元數(shù)據(jù)的集中存放地。metastore默認(rèn)使用內(nèi)嵌的derby數(shù)據(jù)庫作為存儲(chǔ)引擎

l  Derby引擎的缺點(diǎn):一次只能打開一個(gè)會(huì)話

l  使用Mysql作為外置存儲(chǔ)引擎,多用戶同時(shí)訪問

所以我們通常建議使用mysql,但是需要去配置

6.1.配置MySQL的metastore
6.1.1.上傳mysql-connector-java-5.1.10.jar到$HIVE_HOME/lib
6.1.2.登錄MYSQL,創(chuàng)建數(shù)據(jù)庫hive

l  #mysql -uroot -padmin

l  mysql>create database hive;

l  mysql>GRANT all ON hive.* TO root@'%' IDENTIFIED BY 'admin';

l  mysql>flush privileges;

l mysql>set global binlog_format='MIXED';   (如果報(bào)錯(cuò)就不要管)
 

6.1.3.把mysql的數(shù)據(jù)庫字符類型改為latin1(alertdatabase)

方法1:手動(dòng)命令:(此處hive為數(shù)據(jù)庫名)

alter database hive character set latin1 
 

6.1.4.修改$HIVE_HOME/conf/hive-site.xml

<property>

         <name>javax.jdo.option.ConnectionURL</name>

//hadoop0那么是hive所在的機(jī)子,要么是網(wǎng)關(guān)ip  cloud4:本機(jī);192.168.56.1網(wǎng)關(guān)ip

如果用hive的機(jī)子,也就是本機(jī),需要在linux上安裝mysql,看下面補(bǔ)充msql安裝流程

不過好像如果是cloud4會(huì)show tables出錯(cuò),改為localhost就好了?。?!

         <value>jdbc:mysql://hadoop0: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>admin</value>

</property>

7.Hive的運(yùn)行模式即任務(wù)的執(zhí)行環(huán)境

1啟動(dòng)hive 命令行模式:

1:直接輸入#/hive/bin/hive的執(zhí)行程序,

2:或者輸入 #hive --service cli

l  分為本地與集群兩種

我們可以通過mapred.job.tracker 來指明

設(shè)置方式:

hive > SET mapred.job.tracker=local

2.hive驗(yàn)證啟動(dòng)的方法

l  1、hive web界面的(端口號9999) 啟動(dòng)方式

#hive --service hwi &

用于通過瀏覽器來訪問hive

http://hadoop0:9999/hwi/

l  2、hive 遠(yuǎn)程服務(wù)(端口號10000) 啟動(dòng)方式

#hive --service hiveserver & 
 

8.Hive與傳統(tǒng)數(shù)據(jù)庫

hive-0.12的安裝步驟

9.Hive的數(shù)據(jù)類型

l  基本數(shù)據(jù)類型

tinyint/smallint/int/bigint

float/double

boolean

string

?       復(fù)雜數(shù)據(jù)類型

Array/Map/Struct

?       沒有date/datetime

10.Hive的數(shù)據(jù)存儲(chǔ):特色

l Hive的數(shù)據(jù)存儲(chǔ)基于Hadoop HDFS

l  Hive沒有專門的數(shù)據(jù)存儲(chǔ)格式

l 存儲(chǔ)結(jié)構(gòu)主要包括:數(shù)據(jù)庫、文件、表、視圖

l  Hive默認(rèn)可以直接加載文本文件(TextFile),還支持sequence file

l  創(chuàng)建表時(shí),指定Hive數(shù)據(jù)的列分隔符與行分隔符,Hive即可解析數(shù)據(jù)

11.Hive的數(shù)據(jù)模型-數(shù)據(jù)庫

l  類似傳統(tǒng)數(shù)據(jù)庫的DataBase

l  默認(rèn)數(shù)據(jù)庫"default">

使用#hive命令后,不使用hive>use <數(shù)據(jù)庫名>,系統(tǒng)默認(rèn)的數(shù)據(jù)庫。

可以顯式使用hive> use default;

創(chuàng)建一個(gè)新庫

hive > create database test_dw;

11.1.修改倉庫目錄:/hive/conf/hive-site.xml

warehouse是在 hive-site.xml 中由 ${hive.metastore.warehouse.dir}指定的數(shù)據(jù)倉庫的目錄

我們可以把value修改為:/hive

l  每一個(gè) Table 在 Hive 中都有一個(gè)相應(yīng)的目錄存儲(chǔ)數(shù)據(jù)。例如,一個(gè)表 test,它在HDFS 中的路徑為:/ warehouse/test。

l  所有的 Table 數(shù)據(jù)(不包括 ExternalTable)都保存在這個(gè)目錄中。

l  刪除表時(shí),元數(shù)據(jù)與數(shù)據(jù)都會(huì)被刪除

l 常用操作

l  創(chuàng)建數(shù)據(jù)文件t1.dat

l  創(chuàng)建表

l  hive>create table t1 (key string);

l  加載數(shù)據(jù)

l  hive>load data local inpath '/root/inner_table.dat' into table t1;

l  查看數(shù)據(jù)

l  select * from t1

l  select count(*) from t1

l  刪除表 drop table t1

到此,關(guān)于“hive-0.12的安裝步驟”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI