hive ——HPLSQL安裝


一、簡要介紹

        目前版本的Hive中沒有提供類似存儲過程的功能,使用Hive做數據開發時候,一般是將一段一段的HQL語句封裝在Shell或者其他腳本中,然后以命令行的方式調用,完成一個業務或者一張報表的統計分析。好消息是,現在已經有了Hive存儲過程的解決方案(HPL/SQL –Procedural SQL on Hadoop),並且在未來的Hive的版本(2.0)中,會將該模塊集成進來。該解決方案不僅支持Hive,還支持在SparkSQL,其他NoSQL,甚至是RDBMS中使用類似於Oracle PL/SQL的功能,這將極大的方便數據開發者的工作,Hive中很多之前比較難實現的功能,現在可以很方便的實現,比如自定義變量、基於一個結果集的游標、循環等等。

二、安裝包下載地址

        從http://www.hplsql.org/download下載最新版本HPL/SQL 0.3.11安裝包。

三、安裝配置

#tar -zxvf hplsql-0.3.31.tar.gz -C /home/hadoop/bigdataApp
#cd /home/hadoop/bigdataApp/hplsql-0.3.31
#修改hplsql啟動腳本
vim hplsql
#根據自己的機器實際的安裝情況配置如下:(我的配置如下)
export "HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HADOOP_HOME/hadoop/*"
export "HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HADOOP_HOME/lib/*"
export "HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HADOOP_HOME/etc/hadoop"

export "HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HADOOP_HOME/share/hadoop/mapreduce/*"
export "HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HADOOP_HOME/share/hadoop/mapreduce/lib/*"

export "HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HADOOP_HOME/share/hadoop/hdfs/*"
export "HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HADOOP_HOME/share/hadoop/hdfs/lib/*"
          
export "HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HADOOP_HOME/share/hadoop/yarn/*"
export "HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HADOOP_HOME/share/hadoop/yarn/lib/*"
         
export "HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HIVE_HOME/lib/*"
export "HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HIVE_HOME/conf"
             
export HADOOP_OPTS="$HADOOP_OPTS -Djava.library.path=$HADOOP_HOME/lib/native"

SCRIPTPATH=${0%/*} 
    
java -cp $SCRIPTPATH:$HADOOP_CLASSPATH:$SCRIPTPATH/hplsql-0.3.31.jar:$SCRIPTPATH/antlr-runtime-4.5.jar $HADOOP_OPTS org.apache.hive.hplsql.Hplsql "$@"
#配置環境變量,hplsqlq的運行依賴於自己的兩個jar包,所以要把jar配置到hadoop_classpath下,也就是在現有的環境變量配置文件下添加如下配置:(我的配置如下)
#vim ~/.bash_profile
#set for hplsql
HPLSQL_HOME=/home/hadoop/bigdataApp/hplsql-0.3.31
export HPLSQL_HOME
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HPLSQL_HOME/antlr-runtime-4.5.jar:$HPLSQL_HOME/hplsql-0.3.31.jar
#source ~/.bash_profile
#修改配置文件,主要修改hive-site.xml ,hplsql-site.xml 這兩個文件
cd $HIVE_HOME/conf
vim hive-site.xml 
#添加如下內容
<property>
        <name>hive.server2.thrift.bind.host</name>
        <value>172.17.101.12</value>
</property>
<property>
        <name>hive.server2.thrift.port</name>
        <value>10000</value>
</property>

<property>
        <name>hive.metastore.schema.verification</name>
        <value>true</value>
</property>

# cd $HPLSQL_HOME
#vim hplsql-site.xml
#修改如下內容
<property>
  <name>hplsql.conn.default</name>
  <value>hive2conn</value>
  <description>The default connection profile</description>
</property>
<property>
  <name>hplsql.conn.hiveconn</name>
  <value>org.apache.hive.jdbc.HiveDriver;jdbc:hive2://172.17.101.12:1000</value>
  <description>HiveServer2 JDBC connection (embedded mode)</description>
</property>

  #創建連接到HIVE_HOME/bin
  #ln -s /home/hadoop/bigdataApp/hplsql-0.3.31/hplsql /home/hadoop/hive-1.1.0-cdh5.5.2/bin/hplsql

#啟動hiveServer2
#$HIVE_HOME/bin/hiveserver2 &
#測試是否安裝成功
# cd $HPLSQL_HOME
#./hplsql -e "CURRENT_DATE + 1"
#./hplsql -e "FOR i IN 1 .. 10 LOOP PRINT i; END LOOP;"
#在測試過程中我出現如下問題
Error: Could not find or load main class org.apache.hive.hplsql.Hplsql --這是由於配置的hplsql的兩個依賴jar包配置有問題,以上安裝已經是經驗證后的正確安裝步驟,完全可以解決該問題了

 

最后預祝你安裝成功,每天學習一點點,日積月累,相信你會發生質的改變,在學的道路上,貴在堅持。。。。。。學習我一直在路上,終生只做一枚學生。。。。

參考文章:http://lxw1234.com/archives/2015/09/492.htm


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM