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

  • Apache Hive Essentials
  • Dayong Du
  • 444字
  • 2021-07-23 20:25:29

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.

主站蜘蛛池模板: 和硕县| 金坛市| 宁国市| 剑河县| 信丰县| 江北区| 天峻县| 遂昌县| 阜南县| 静海县| 长岛县| 江门市| 大足县| 黄骅市| 临沧市| 饶河县| 桓仁| 东宁县| 车险| 玉山县| 鲁山县| 治多县| 长武县| 遵化市| 侯马市| 泾源县| 修文县| 五家渠市| 邯郸市| 阳朔县| 鱼台县| 永州市| 土默特左旗| 上饶县| 航空| 叶城县| 咸丰县| 牙克石市| 昆明市| 报价| 昭觉县|