官术网_书友最值得收藏!

Installing Hive from Apache

To introduce the Hive installation, we use Hive version 1.0.0 as an example. The pre-installation requirements for this installation are as follows:

The following steps describe how to install Hive from Apache through the Linux command line:

  1. Download Hive from Apache Hive and unpack it:
    bash-4.1$ wget http://apache.mirror.rafal.ca/hive/hive-1.0.0/apache-hive-1.0.0-bin.tar.gz
    bash-4.1$ tar -zxvf apache-hive-1.0.0-bin.tar.gz
    
  2. Add Hive to the system path by opening /etc/profile or ~/.bashrc and add the following two rows:
    export HIVE_HOME=/home/hivebooks/apache-hive-1.0.0-bin
    export PATH=$PATH:$HIVE_HOME/bin:$HIVE_HOME/conf
    
  3. Enable the settings immediately:
    bash-4.1$ source /etc/profile
    
  4. Create the configuration files:
    bash-4.1$ cd apache-hive-1.0.0-bin/conf
    bash-4.1$ cp hive-default.xml.template hive-site.xml
    bash-4.1$ cp hive-env.sh.template hive-env.sh
    bash-4.1$ cp hive-exec-log4j.properties.template hive-exec-log4j.properties
    bash-4.1$ cp hive-log4j.properties.template hive-log4j.properties
    
  5. Modify the configuration file at $HIVE_HOME/conf/hive-env.sh:
    #Set HADOOP_HOME to point to a specific Hadoop install directory
    export HADOOP_HOME=/home/hivebooks/hadoop-2.2.0
    #Hive Configuration Directory can be accessed at:
    export HIVE_CONF_DIR=/home/hivebooks/apache-hive-1.0.0-bin/conf
    
  6. Modify the configuration file at $HIVE_HOME/conf/hive-site.xml. There are some important parameters that need special attention:
    • hive.metastore.warehourse.dir: This is the path for Hive warehouse storage. By default it is /user/hive/warehouse.
    • hive.exec.scratchdir: This is the temporary data file path. By default it is /tmp/hive-${user.name}.

By default, Hive uses the Derby (http://db.apache.org/derby/) database as the metadata store. Hive can also use other databases, such as PostgreSQL (http://www.postgresql.org/) or MySQL (http://www.mysql.com/) as the metadata store. To configure Hive to use other databases, the following parameters should be configured:

javax.jdo.option.ConnectionURL            // the database URL
javax.jdo.option.ConnectionDriverName     // the JDBC driver name
javax.jdo.option.ConnectionUserName       // database username
javax.jdo.option.ConnectionPassword       // database password

The following is an example setting using MySQL as the metastore database:

<property>
  <name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:mysql://myhost:3306/hive?createDatabase IfNotExist=true</value>
  <description>JDBC connect string for a JDBC metastore</description>
</property>
<property>
  <name>javax.jdo.option.ConnectionDriverName</name>
  <value>com.mysql.jdbc.Driver</value>
  <description>Driver class name for a JDBC metastore</description>
</property>
<property>
  <name>javax.jdo.option.ConnectionUserName</name>
  <value>hive</value>
  <description>username to use against metastore database</description>
</property>
<property>
  <name>javax.jdo.option.ConnectionPassword</name>
  <value>hive</value>
  <description>password to use against metastore database</description>
</property>

Make sure the MySQL JDBC driver is available at $HIVE_HOME/lib.

Note

The differences between an embed Derby database and an external database is that an external database offers a shared service so that users can share the metadata of Hive. However, an embed database is only visible to the local users.

Create folders and grant proper write permissions to the user group in the HDFS folder:

bash-4.1$ hdfs dfs –mkdir /tmp
bash-4.1$ hdfs dfs –mkdir /user/hive/warehouse
bash-4.1$ hdfs dfs -chmod g+w /tmp
bash-4.1$ hdfs dfs -chmod g+w /user/hive/warehouse

That's all about Apache Hive installation. In one of the Hive nodes installed, type hive to enter the Hive command-line environment (hive>), which verifies Hive is successfully installed.

主站蜘蛛池模板: 宽城| 双牌县| 襄城县| 江西省| 苗栗县| 金山区| 郴州市| 灵台县| 霍州市| 太原市| 滁州市| 潍坊市| 贵州省| 华阴市| 乌兰县| 美姑县| 宁陕县| 象州县| 敖汉旗| 永胜县| 綦江县| 舒城县| 彩票| 大竹县| 舟山市| 社会| 丹棱县| 明光市| 综艺| 南充市| 新乡县| 资讯 | 安溪县| 高台县| 盐山县| 沾化县| 双柏县| 河北省| 大连市| 克什克腾旗| 普定县|