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

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.

主站蜘蛛池模板: 祁门县| 泸州市| 错那县| 墨竹工卡县| 六枝特区| 刚察县| 麦盖提县| 海安县| 平邑县| 江陵县| 府谷县| 江孜县| 洛宁县| 林州市| 桂阳县| 长沙市| 句容市| 盐山县| 凤庆县| 镇江市| 鸡西市| 镇宁| 嘉禾县| 铜陵市| 和政县| 荆州市| 金山区| 富源县| 界首市| 民勤县| 商水县| 辛集市| 沅陵县| 临洮县| 伊通| 溧水县| 上林县| 贵南县| 玉屏| 定襄县| 双柏县|