(二)Hive在hadoop環(huán)境下搭建

5,安裝Hive

上傳解壓

cd /opt/bdp/

rz

tar -zxvf apache-hive-1.2.1-bin.tar.gz

rm -rf pache-hive-1.2.1-bin.tar.gz

配置文件

vim/opt/bdp/apache-hive-1.2.1-bin/conf/hive-site.xml


<?xmlversion="1.0"?>

<?xml-stylesheettype="text/xsl" href="configuration.xsl"?>

<configuration>

<!--元數(shù)據(jù)管理-->

<property>

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

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

<!--默認為/user/hive/warehouse,用于配置Hive默認的數(shù)據(jù)文件存儲路徑, 這是一個HDFS路徑。可按需調(diào)整。-->

<property>

<name>hive.metastore.warehouse.dir</name>

<value>/bdp/hive/metastore/warehouse</value>

</property>

<!--查詢輸出時是否打印名字和列,默認是false.-->

<property>

<name>hive.cli.print.header</name>

<value>true</value>

</property>

<!--hive的提示里是否包含當(dāng)前的db,默認是false..-->

<property>

<name>hive.cli.print.current.db</name>

<value>true</value>

</property>

<!--強制metastore的schema一致性,開啟的話會校驗在metastore中存儲的信息的版本和hive的jar包中的版本一致性,并且關(guān)閉自動schema遷移,用戶必須手動的升級hive并且遷移schema,關(guān)閉的話只會在版本不一致時給出警告,默認是false不開啟;-->

<property>

<name>hive.metastore.schema.verification</name>

<value>false</value>

</property>

<!--在啟動時創(chuàng)建必要的架構(gòu)(如果不存在)。創(chuàng)建一次后,將其設(shè)置為false-->

<property>

<name>datanucleus.schema.autoCreateAll</name>

<value>true</value>

</property>

</configuration>

?

vim/opt/bdp/hadoop-2.6.5/etc/hadoop/core-site.xml


<!--該參數(shù)表示可以通過httpfs接口hdfs的ip地址限制-->

<property>

<name>hadoop.proxyuser.root.hosts</name>

<value>*</value>

</property>

<!--通過httpfs接口訪問的用戶獲得的群組身份-->

<property>

<name>hadoop.proxyuser.root.groups</name>

<value>*</value>

</property>


添加連接包

cd/opt/bdp/apache-hive-1.2.1-bin/lib/

rz

vim/etc/profile


exportHIVE_HOME=/opt/bdp/apache-hive-1.2.1-bin

exportPATH=$PATH:$HIVE_HOME/bin


source/etc/profile

scp到其他節(jié)點

scp /etc/profile bd1602:/etc/

scp /etc/profile bd1603:/etc/

scp-r/opt/bdp/apache-hive-1.2.1-bin? bd1602:/opt/bdp/

scp-r/opt/bdp/apache-hive-1.2.1-bin? bd1603:/opt/bdp/

修改客戶端配置文件

vim/opt/bdp/apache-hive-1.2.1-bin/conf/hive-site.xml


<?xmlversion="1.0"?>

<?xml-stylesheettype="text/xsl" href="configuration.xsl"?>

<configuration>

<property>

<name>hive.metastore.warehouse.dir</name>

<value>/bdp/hive/metastore/warehouse</value>

</property>

<property>

<name>hive.cli.print.header</name>

<value>true</value>

</property>

<property>

<name>hive.cli.print.current.db</name>

<value>true</value>

</property>

<property>

<name>hive.metastore.schema.verification</name>

<value>false</value>

</property>

<property>

<name>datanucleus.schema.autoCreateAll</name>

<value>true</value>

</property>

<!--指定hive.metastore.uris的port.為了啟動metastore服務(wù)的時候不用指定端口hive 雙杠)service metastore -p 9083 & | hive (雙杠)service metastore-->

<property>

<name>hive.metastore.uris</name>

<value>thrift://bd1603:9083</value>

</property>

</configuration>


scp /opt/bdp/hadoop-2.6.5/etc/hadoop/core-site.xml bd1602:/opt/bdp/hadoop-2.6.5/etc/hadoop/

scp /opt/bdp/hadoop-2.6.5/etc/hadoop/core-site.xml bd1603:/opt/bdp/hadoop-2.6.5/etc/hadoop/

?

rm-rf/opt/bdp/hadoop-2.6.5/share/hadoop/yarn/lib/jline-0.9.94.jar

?

cp ./jline-2.12.jar /opt/bdp/hadoop-2.6.5/share/hadoop/yarn/lib/


驗證,以下為腳本文件的命令

#!/bin/sh

echo"=======================START==========================="

zkServer.sh start

sshroot@bd1601"/opt/bdp/apache-zookeeper-3.5.6-bin/bin/zkServer.sh start"

sshroot@bd1602"/opt/bdp/apache-zookeeper-3.5.6-bin/bin/zkServer.sh start"

echo"=======================休息一下,讓zookeeper飛一會==========================="

sleep10

jps

echo"=======================啟動hadoop集群==========================="

sshroot@bd1601"/opt/bdp/hadoop-2.6.5/sbin/start-all.sh"

echo"=======================啟動resourcemanager==========================="

yarn-daemon.shstart resource manager

#ssh root@bd1602 "/opt/bdp/hadoop-2.6.5/sbin/yarn-daemon.sh start resourcemanager"

echo"=======================啟動metastore==========================="

nohup hive--servicemetastore > /dev/null2>&1 &

jps

echo"=======================休息一小會,再讓metastore飛一會==========================="

sleep5

jps

echo"=======================啟動hiveserver2==========================="

nohup hiveserver2 > /dev/null2>&1 &

sleep5

jps


nohup hiveserver2 > /dev/null2>&1 &


8353 DataNode

8882 Jps

8245 QuorumPeerMain

8550 NodeManager

8631 RunJar

8603 ResourceManager

8444 JournalNode


#!/bin/sh

hbase-daemon.sh stop master

sshroot@bd1601"/opt/bdp/hbase-1.4.13/bin/hbase-daemon.sh stop master"

sshroot@bd1602"/opt/bdp/hbase-1.4.13/bin/hbase-daemon.sh stop master"

hbase-daemon.sh stop regionserver

sshroot@bd1601"/opt/bdp/hbase-1.4.13/bin/hbase-daemon.sh stop regionserver"

sshroot@bd1602"/opt/bdp/hbase-1.4.13/bin/hbase-daemon.sh stop regionserver"

yarn-daemon.sh stop resource manager

sshroot@bd1602"/opt/bdp/hadoop-2.6.5/sbin/yarn-daemon.sh stop resourcemanager"

sshroot@bd1601"/opt/bdp/hadoop-2.6.5/sbin/stop-all.sh"

zkServer.sh stop

sshroot@bd1601"/opt/bdp/apache-zookeeper-3.5.6-bin/bin/zkServer.sh stop"

sshroot@bd1602"/opt/bdp/apache-zookeeper-3.5.6-bin/bin/zkServer.sh stop"

?

?

啟動matestore

nohup hive --service metastore > /dev/null 2>&1 &

啟動hivesever2

nohup hiveserver2 > /dev/null 2>&1 &

查看matestore線程

netstat? -lnp|grep 9083

查看hivesever2線程

netstat? -lnp|grep 10000


6,Hive交互方式

1.hive cli

2.beeline -u jdbc:hive2://bd1603:10000 -n root

3.hive -e|f? beeline -e|f

7,Hive元數(shù)據(jù)

DBS,SDS,TBLS

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容