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