Hive部署

什么是 Hive
        Hive 是一个翻译器,它可以将SQL语句翻译成一个 MapReduce 程序
        
        常见的数据分析引擎: Hive, Pig,  Impala,  Spark SQL
        Hive 是一个基于Hadoop 之上的数据分析引擎(数据仓库)

        Hives               HDFS
         表      --------> 目录
        数据    --------> 文件
        分区    --------> 目录


环境部署:

    部署前准备:

    环境变量:vi ~/.bash_profile
        HIVE_HOME=/root/training/apache-hive-2.3.0-bin
        export HIVE_HOME

        PATH=$HIVE_HOME/bin:$PATH
        export PATH


     嵌入式部署:
        (1)使用Hive自带的Derby数据库来存储元信息
        (2)Hive只支持一个连接
             创建 conf/hive-site.xml
                <?xml version="1.0" encoding="UTF-8" standalone="no"?>
                <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
                <configuration>             
                    <property>
                      <name>javax.jdo.option.ConnectionURL</name>
                      <value>jdbc:derby:;databaseName=metastore_db;create=true</value>
                    </property>    

                    <property>
                      <name>javax.jdo.option.ConnectionDriverName</name>
                      <value>org.apache.derby.jdbc.EmbeddedDriver</value>
                    </property>    

                    <property>
                      <name>hive.metastore.local</name>
                      <value>true</value>
                    </property>    

                    <property>
                      <name>hive.metastore.warehouse.dir</name>
                      <value>file:///root/training/apache-hive-2.3.0-bin/warehouse</value>
                    </property>        
                </configuration>    

            初始化MetaStore:
            schematool -dbType derby -initSchema



     远程模式(需要MySQL数据库):

            1. 安装 MySQL数据库(此处省略)

            2. 配置 hive-site.xml  (JDBC的参数)

                <?xml version="1.0" encoding="UTF-8" standalone="no"?>
                <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
                <configuration>             
                    <property>
                      <name>javax.jdo.option.ConnectionURL</name>
                      <value>jdbc:mysql://localhost:3306/hive?useSSL=false</value>
                    </property>    

                    <property>
                      <name>javax.jdo.option.ConnectionDriverName</name>
                      <value>com.mysql.jdbc.Driver</value>
                    </property>    
                    
                    <property>
                      <name>javax.jdo.option.ConnectionUserName</name>
                      <value>hiveowner</value>
                    </property>    
                    
                    <property>
                      <name>javax.jdo.option.ConnectionPassword</name>
                      <value>Welcome_1</value>
                    </property>    
                    
                </configuration>

            3. 把MySQL 数据库的驱动放到: Hive/lib 下

            4. 初始化 MySQL数据库

                老版本的hive 在第一次运行时自动初始化 MySQL数据库

                新版本的hive 需要执行命令:

                    schematool   -dbType  mysql  -initSchema




本文转自 菜鸟的征程 51CTO博客,原文链接:http://blog.51cto.com/songqinglong/2055914


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值