Hive - Instalación
Todos los subproyectos de Hadoop, como Hive, Pig y HBase, son compatibles con el sistema operativo Linux. Por lo tanto, debe instalar cualquier sistema operativo con sabor a Linux. Los siguientes pasos simples se ejecutan para la instalación de Hive:
Paso 1: Verificación de la instalación de JAVA
Java debe estar instalado en su sistema antes de instalar Hive. Verifiquemos la instalación de Java usando el siguiente comando:
$ java –version
Si Java ya está instalado en su sistema, verá la siguiente respuesta:
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b13)
Java HotSpot(TM) Client VM (build 25.0-b02, mixed mode)
Si java no está instalado en su sistema, siga los pasos que se indican a continuación para instalar java.
Instalación de Java
Paso I:
Descargue java (JDK <última versión> - X64.tar.gz) visitando el siguiente enlace http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html.
Luego, jdk-7u71-linux-x64.tar.gz se descargará en su sistema.
Paso II:
Generalmente, encontrará el archivo java descargado en la carpeta Descargas. Verifíquelo y extraiga el archivo jdk-7u71-linux-x64.gz usando los siguientes comandos.
$ cd Downloads/
$ ls
jdk-7u71-linux-x64.gz
$ tar zxf jdk-7u71-linux-x64.gz
$ ls
jdk1.7.0_71 jdk-7u71-linux-x64.gz
Paso III:
Para que Java esté disponible para todos los usuarios, debe moverlo a la ubicación “/ usr / local /”. Abra root y escriba los siguientes comandos.
$ su
password:
# mv jdk1.7.0_71 /usr/local/
# exit
Paso IV:
Para configurar las variables PATH y JAVA_HOME, agregue los siguientes comandos al archivo ~ / .bashrc.
export JAVA_HOME=/usr/local/jdk1.7.0_71
export PATH=$PATH:$JAVA_HOME/bin
Ahora aplique todos los cambios en el sistema en ejecución actual.
$ source ~/.bashrc
Paso V:
Utilice los siguientes comandos para configurar alternativas de Java:
# alternatives --install /usr/bin/java/java/usr/local/java/bin/java 2
# alternatives --install /usr/bin/javac/javac/usr/local/java/bin/javac 2
# alternatives --install /usr/bin/jar/jar/usr/local/java/bin/jar 2
# alternatives --set java/usr/local/java/bin/java
# alternatives --set javac/usr/local/java/bin/javac
# alternatives --set jar/usr/local/java/bin/jar
Ahora verifique la instalación usando el comando java -version desde el terminal como se explicó anteriormente.
Paso 2: verificar la instalación de Hadoop
Hadoop debe estar instalado en su sistema antes de instalar Hive. Verifiquemos la instalación de Hadoop usando el siguiente comando:
$ hadoop version
Si Hadoop ya está instalado en su sistema, obtendrá la siguiente respuesta:
Hadoop 2.4.1 Subversion https://svn.apache.org/repos/asf/hadoop/common -r 1529768
Compiled by hortonmu on 2013-10-07T06:28Z
Compiled with protoc 2.5.0
From source with checksum 79e53ce7994d1628b240f09af91e1af4
Si Hadoop no está instalado en su sistema, continúe con los siguientes pasos:
Descargando Hadoop
Descargue y extraiga Hadoop 2.4.1 de Apache Software Foundation usando los siguientes comandos.
$ su
password:
# cd /usr/local
# wget http://apache.claz.org/hadoop/common/hadoop-2.4.1/
hadoop-2.4.1.tar.gz
# tar xzf hadoop-2.4.1.tar.gz
# mv hadoop-2.4.1/* to hadoop/
# exit
Instalación de Hadoop en modo pseudo distribuido
Los siguientes pasos se utilizan para instalar Hadoop 2.4.1 en modo pseudodistribuido.
Paso I: configurar Hadoop
Puede configurar las variables de entorno de Hadoop agregando los siguientes comandos a ~/.bashrc archivo.
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export
PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
Ahora aplique todos los cambios en el sistema en ejecución actual.
$ source ~/.bashrc
Paso II: Configuración de Hadoop
Puede encontrar todos los archivos de configuración de Hadoop en la ubicación "$ HADOOP_HOME / etc / hadoop". Debe realizar los cambios adecuados en esos archivos de configuración de acuerdo con su infraestructura de Hadoop.
$ cd $HADOOP_HOME/etc/hadoop
Para desarrollar programas de Hadoop usando java, debe restablecer las variables de entorno de java en hadoop-env.sh archivo reemplazando JAVA_HOME value con la ubicación de java en su sistema.
export JAVA_HOME=/usr/local/jdk1.7.0_71
A continuación se muestra la lista de archivos que debe editar para configurar Hadoop.
core-site.xml
los core-site.xml El archivo contiene información como el número de puerto utilizado para la instancia de Hadoop, la memoria asignada para el sistema de archivos, el límite de memoria para almacenar los datos y el tamaño de los búferes de lectura / escritura.
Abra core-site.xml y agregue las siguientes propiedades entre las etiquetas <configuration> y </configuration>.
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
hdfs-site.xml
los hdfs-site.xmlEl archivo contiene información como el valor de los datos de replicación, la ruta del nodo de nombre y la ruta del nodo de datos de sus sistemas de archivos locales. Significa el lugar donde desea almacenar la infraestructura de Hadoop.
Asumamos los siguientes datos.
dfs.replication (data replication value) = 1
(In the following path /hadoop/ is the user name.
hadoopinfra/hdfs/namenode is the directory created by hdfs file system.)
namenode path = //home/hadoop/hadoopinfra/hdfs/namenode
(hadoopinfra/hdfs/datanode is the directory created by hdfs file system.)
datanode path = //home/hadoop/hadoopinfra/hdfs/datanode
Abra este archivo y agregue las siguientes propiedades entre las etiquetas <configuration>, </configuration> en este archivo.
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>file:///home/hadoop/hadoopinfra/hdfs/namenode </value>
</property>
<property>
<name>dfs.data.dir</name>
<value>file:///home/hadoop/hadoopinfra/hdfs/datanode </value >
</property>
</configuration>
Note: En el archivo anterior, todos los valores de propiedad están definidos por el usuario y puede realizar cambios de acuerdo con su infraestructura de Hadoop.
yarn-site.xml
Este archivo se utiliza para configurar hilo en Hadoop. Abra el archivo yarn-site.xml y agregue las siguientes propiedades entre las etiquetas <configuration>, </configuration> en este archivo.
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
mapred-site.xml
Este archivo se utiliza para especificar qué marco MapReduce estamos usando. De forma predeterminada, Hadoop contiene una plantilla de yarn-site.xml. En primer lugar, debe copiar el archivo de mapred-site, xml.template al archivo mapred-site.xml usando el siguiente comando.
$ cp mapred-site.xml.template mapred-site.xml
Abierto mapred-site.xml y agregue las siguientes propiedades entre las etiquetas <configuration>, </configuration> en este archivo.
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
Verificación de la instalación de Hadoop
Los siguientes pasos se utilizan para verificar la instalación de Hadoop.
Paso I: Configuración del nodo de nombre
Configure el nodo de nombre utilizando el comando "hdfs namenode -format" de la siguiente manera.
$ cd ~
$ hdfs namenode -format
El resultado esperado es el siguiente.
10/24/14 21:30:55 INFO namenode.NameNode: STARTUP_MSG:
/************************************************************
STARTUP_MSG: Starting NameNode
STARTUP_MSG: host = localhost/192.168.1.11
STARTUP_MSG: args = [-format]
STARTUP_MSG: version = 2.4.1
...
...
10/24/14 21:30:56 INFO common.Storage: Storage directory
/home/hadoop/hadoopinfra/hdfs/namenode has been successfully formatted.
10/24/14 21:30:56 INFO namenode.NNStorageRetentionManager: Going to
retain 1 images with txid >= 0
10/24/14 21:30:56 INFO util.ExitUtil: Exiting with status 0
10/24/14 21:30:56 INFO namenode.NameNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at localhost/192.168.1.11
************************************************************/
Paso II: verificar Hadoop dfs
El siguiente comando se usa para iniciar dfs. La ejecución de este comando iniciará su sistema de archivos Hadoop.
$ start-dfs.sh
El resultado esperado es el siguiente:
10/24/14 21:37:56
Starting namenodes on [localhost]
localhost: starting namenode, logging to /home/hadoop/hadoop-2.4.1/logs/hadoop-hadoop-namenode-localhost.out
localhost: starting datanode, logging to /home/hadoop/hadoop-2.4.1/logs/hadoop-hadoop-datanode-localhost.out
Starting secondary namenodes [0.0.0.0]
Paso III: Verificación del guión de hilo
El siguiente comando se utiliza para iniciar el guión de hilo. La ejecución de este comando iniciará sus demonios de hilo.
$ start-yarn.sh
El resultado esperado es el siguiente:
starting yarn daemons
starting resourcemanager, logging to /home/hadoop/hadoop-2.4.1/logs/yarn-hadoop-resourcemanager-localhost.out
localhost: starting nodemanager, logging to /home/hadoop/hadoop-2.4.1/logs/yarn-hadoop-nodemanager-localhost.out
Paso IV: Acceder a Hadoop en el navegador
El número de puerto predeterminado para acceder a Hadoop es 50070. Utilice la siguiente URL para obtener los servicios de Hadoop en su navegador.
http://localhost:50070/
Paso V: verificar todas las aplicaciones para el clúster
El número de puerto predeterminado para acceder a todas las aplicaciones del clúster es 8088. Utilice la siguiente URL para visitar este servicio.
http://localhost:8088/
Paso 3: descarga de Hive
Usamos hive-0.14.0 en este tutorial. Puedes descargarlo visitando el siguiente enlacehttp://apache.petsads.us/hive/hive-0.14.0/.Supongamos que se descarga en el directorio / Downloads. Aquí, descargamos el archivo Hive llamado "apache-hive-0.14.0-bin.tar.gz" para este tutorial. El siguiente comando se utiliza para verificar la descarga:
$ cd Downloads
$ ls
En la descarga exitosa, puede ver la siguiente respuesta:
apache-hive-0.14.0-bin.tar.gz
Paso 4: Instalación de Hive
Los siguientes pasos son necesarios para instalar Hive en su sistema. Supongamos que el archivo de Hive se descarga en el directorio / Downloads.
Extraer y verificar Hive Archive
El siguiente comando se utiliza para verificar la descarga y extraer el archivo de colmena:
$ tar zxvf apache-hive-0.14.0-bin.tar.gz
$ ls
En la descarga exitosa, puede ver la siguiente respuesta:
apache-hive-0.14.0-bin apache-hive-0.14.0-bin.tar.gz
Copiando archivos al directorio / usr / local / hive
Necesitamos copiar los archivos del superusuario "su -". Los siguientes comandos se utilizan para copiar los archivos del directorio extraído al directorio / usr / local / hive ”.
$ su -
passwd:
# cd /home/user/Download
# mv apache-hive-0.14.0-bin /usr/local/hive
# exit
Configuración del entorno para Hive
Puede configurar el entorno de Hive agregando las siguientes líneas a ~/.bashrc archivo:
export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
export CLASSPATH=$CLASSPATH:/usr/local/Hadoop/lib/*:.
export CLASSPATH=$CLASSPATH:/usr/local/hive/lib/*:.
El siguiente comando se usa para ejecutar el archivo ~ / .bashrc.
$ source ~/.bashrc
Paso 5: configurar Hive
Para configurar Hive con Hadoop, debe editar el hive-env.sh archivo, que se coloca en el $HIVE_HOME/confdirectorio. Los siguientes comandos redirigen a Hiveconfig carpeta y copie el archivo de plantilla:
$ cd $HIVE_HOME/conf
$ cp hive-env.sh.template hive-env.sh
Edite el hive-env.sh archivo agregando la siguiente línea:
export HADOOP_HOME=/usr/local/hadoop
La instalación de Hive se completó correctamente. Ahora necesita un servidor de base de datos externo para configurar Metastore. Usamos la base de datos Apache Derby.
Paso 6: descarga e instalación de Apache Derby
Siga los pasos que se indican a continuación para descargar e instalar Apache Derby:
Descargando Apache Derby
El siguiente comando se usa para descargar Apache Derby. La descarga lleva algún tiempo.
$ cd ~
$ wget http://archive.apache.org/dist/db/derby/db-derby-10.4.2.0/db-derby-10.4.2.0-bin.tar.gz
El siguiente comando se utiliza para verificar la descarga:
$ ls
En la descarga exitosa, puede ver la siguiente respuesta:
db-derby-10.4.2.0-bin.tar.gz
Extraer y verificar el archivo Derby
Los siguientes comandos se utilizan para extraer y verificar el archivo Derby:
$ tar zxvf db-derby-10.4.2.0-bin.tar.gz
$ ls
En la descarga exitosa, puede ver la siguiente respuesta:
db-derby-10.4.2.0-bin db-derby-10.4.2.0-bin.tar.gz
Copiar archivos al directorio / usr / local / derby
Necesitamos copiar del superusuario "su -". Los siguientes comandos se utilizan para copiar los archivos del directorio extraído al directorio / usr / local / derby:
$ su -
passwd:
# cd /home/user
# mv db-derby-10.4.2.0-bin /usr/local/derby
# exit
Configuración del entorno para Derby
Puede configurar el entorno Derby añadiendo las siguientes líneas a ~/.bashrc archivo:
export DERBY_HOME=/usr/local/derby
export PATH=$PATH:$DERBY_HOME/bin
Apache Hive
18
export CLASSPATH=$CLASSPATH:$DERBY_HOME/lib/derby.jar:$DERBY_HOME/lib/derbytools.jar
El siguiente comando se usa para ejecutar ~/.bashrc archivo:
$ source ~/.bashrc
Crea un directorio para almacenar Metastore
Cree un directorio llamado data en el directorio $ DERBY_HOME para almacenar datos de Metastore.
$ mkdir $DERBY_HOME/data
La instalación de Derby y la configuración ambiental ahora están completas.
Paso 7: configurar Metastore de Hive
Configurar Metastore significa especificar a Hive dónde se almacena la base de datos. Puede hacerlo editando el archivo hive-site.xml, que se encuentra en el directorio $ HIVE_HOME / conf. En primer lugar, copie el archivo de plantilla con el siguiente comando:
$ cd $HIVE_HOME/conf
$ cp hive-default.xml.template hive-site.xml
Editar hive-site.xml y agregue las siguientes líneas entre las etiquetas <configuration> y </configuration>:
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:derby://localhost:1527/metastore_db;create=true </value>
<description>JDBC connect string for a JDBC metastore </description>
</property>
Cree un archivo llamado jpox.properties y agregue las siguientes líneas en él:
javax.jdo.PersistenceManagerFactoryClass =
org.jpox.PersistenceManagerFactoryImpl
org.jpox.autoCreateSchema = false
org.jpox.validateTables = false
org.jpox.validateColumns = false
org.jpox.validateConstraints = false
org.jpox.storeManagerType = rdbms
org.jpox.autoCreateSchema = true
org.jpox.autoStartMechanismMode = checked
org.jpox.transactionIsolation = read_committed
javax.jdo.option.DetachAllOnCommit = true
javax.jdo.option.NontransactionalRead = true
javax.jdo.option.ConnectionDriverName = org.apache.derby.jdbc.ClientDriver
javax.jdo.option.ConnectionURL = jdbc:derby://hadoop1:1527/metastore_db;create = true
javax.jdo.option.ConnectionUserName = APP
javax.jdo.option.ConnectionPassword = mine
Paso 8: verificar la instalación de Hive
Antes de ejecutar Hive, debe crear el /tmpcarpeta y una carpeta de Hive separada en HDFS. Aquí usamos el/user/hive/warehousecarpeta. Debe establecer el permiso de escritura para estas carpetas recién creadas como se muestra a continuación:
chmod g+w
Ahora configúrelos en HDFS antes de verificar Hive. Utilice los siguientes comandos:
$ $HADOOP_HOME/bin/hadoop fs -mkdir /tmp
$ $HADOOP_HOME/bin/hadoop fs -mkdir /user/hive/warehouse
$ $HADOOP_HOME/bin/hadoop fs -chmod g+w /tmp
$ $HADOOP_HOME/bin/hadoop fs -chmod g+w /user/hive/warehouse
Los siguientes comandos se utilizan para verificar la instalación de Hive:
$ cd $HIVE_HOME
$ bin/hive
Tras la instalación correcta de Hive, verá la siguiente respuesta:
Logging initialized using configuration in jar:file:/home/hadoop/hive-0.9.0/lib/hive-common-0.9.0.jar!/hive-log4j.properties
Hive history file=/tmp/hadoop/hive_job_log_hadoop_201312121621_1494929084.txt
………………….
hive>
Se ejecuta el siguiente comando de muestra para mostrar todas las tablas:
hive> show tables;
OK
Time taken: 2.798 seconds
hive>