- 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:
- JDK 1.7.0_51
- Hadoop 0.20.x, 0.23.x.y, 1.x.y, or 2.x.y
- Ubuntu 14.04/CentOS 6.2
Note
Since we focus on Hive in this book, the installation steps for Java and Hadoop are not provided here. For steps on installing them, please refer to https://www.java.com/en/download/help/download_options.xml and http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/ClusterSetup.html.
The following steps describe how to install Hive from Apache through the Linux command line:
- 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
- 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
- Enable the settings immediately:
bash-4.1$ source /etc/profile
- 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
- 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
- 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
.
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.
- C++程序設計教程
- PWA入門與實踐
- C#編程入門指南(上下冊)
- Web Application Development with R Using Shiny(Second Edition)
- jQuery開發基礎教程
- Spring Boot進階:原理、實戰與面試題分析
- Getting Started with Laravel 4
- Yii Project Blueprints
- 新一代SDN:VMware NSX 網絡原理與實踐
- 寫給程序員的Python教程
- QGIS 2 Cookbook
- 自學Python:編程基礎、科學計算及數據分析(第2版)
- Android Studio Cookbook
- Java并發編程:核心方法與框架
- PyQt編程快速上手