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

posted @ 2017-12-15 10:16  一醉方休  阅读(3620)  评论(0编辑  收藏  举报