Con la irrupción del Big Data y las Business Analytics, han surgido nuevas tecnologías que nos permiten realizar esas tareas de manera sencilla y eficaz. Una de esas tecnologías es Apache Hive, un programa para almacenar datos construida para su utilización en Hadoop, facilitando la consulta y la gestión (resumen, análisis, etc.) de grandes volúmenes de datos almacenados de forma distribuida. A continuación veremos cómo instalar Apache Hive.
Apache Hive permite el análisis de grandes conjuntos de datos almacenados en los sitemas de ficheros HDFS de Hadoop y en otros sitemas de ficheros compatibles como el de Amazon S3, utilizados para el BigData. Además, Hive ofrece un mecanismo para estructurar los datos y consultarlos utilizando un lenguaje similar a SQL llamado HiveQL. Este lenguaje permite realizar operaciones MapReduce de forma transparente, facilitando el trabajo de map/reduce a los programadores. Para agilizar las consultas, permite la creación de índices, tales como índices de mapa de bits.
Para más información sobre Apache Hive se pueden visitar las siguientes páginas web: Wikipedia (Inglés), Apache Hive (Página Oficial – Inglés).
Requisitos Previos
Puesto que Apache Hive funciona sobre Apache Hadoop, antes de instalar Apache Hive, debemos instalar primero Apache Hadoop (si no está ya instalado en el equipo).
Puedes ir a la página donde se explica cómo instalar Apache Hadoop.
Instalar Apache Hive
Para comenzar a instalar Apache Hive, hay que descargar el paquete desde la página oficial de Apache Hive (https://hive.apache.org/) y seleccionar la versión que se quiere descargar. En este caso, vamos a instalar Apache Hive 0.14.0, por lo que hay que descargar esta versión del paquete.
Desde el siguiente enlace se puede descargar el fichero: apache-hive-0.14.0-bin.tar.gz
Una vez descargado el fichero, descomprimir el fichero apache-hive-0.14.0-bin.tar.gz
. Para ello, ejecutar el siguiente comando desde un terminal:
tar -xzf apache-hive-0.14.0-bin.tar.gz
Una vez descomprimido, hay que mover los archivos a su ubicación en /usr/local
:
sudo mv apache-hive-0.14.0-bin/ /usr/local/hive-0.14.0/
Si queremos hacer referencia directamente a hive
sin necesidad de tener que hacer referencia a la versión utilizada, tiene que crear un enlace simbólico a la carpeta que contiene los ficheros:
cd /usr/local/
sudo ln -s hive-0.14.0/ hive
Cambiar el usuario propietario de los archivos instalados.
sudo chown -R hduser:hadoop /usr/local/hive-0.14.0
Actualizar $HOME/.bashrc
Añadir las siguientes líneas al final del fichero $HOME/.bashrc
para el usuario hduser
.
Establecer la variable de entorno HIVE_HOME
:
# Set Hive-related environment variables
export HIVE_HOME=/usr/local/hive
# Add Hive bin/ directory to PATH
export PATH=$PATH:$HIVE_HOME/bin
Si utiliza un shell diferente a bash
, tendrá que editar el fichero correspondiente para añadir estas líneas.
Hay que copiar estas líneas en el fichero .bashrc
de todos aquellos usuarios que vayan a utilizar Hive.
Para aplicar los cambios, ejecutar este comando.
source ~/.bashrc
Arrancar Hadoop
Para arrancar Hadoop hay que seguir los siguientes pasos.
Primero que hay que hacer es conectarse como el usuario hduser
, ejecutando el siguiente comando.
su - hduser
Lo siguiente que hay que hacer es arrancar el dfs (distributed file system), para lo cual basta con ejecutar el siguiente comando.
/usr/local/hadoop/sbin/start-dfs.sh
En caso de que pregunte si queremos continuar conectando al nodo, indicarle que sí (yes
).
A continuación, arrancar los yarn daemons. Para ello, ejecutar el siguiente comando.
/usr/local/hadoop/sbin/start-yarn.sh
También se puede ejecutar solamente este comando, que realiza todas las operaciones necesarias para arrancar el cluster.
/usr/local/hadoop/sbin/start-all.sh
Entrar en la consola de Hive
Para entrar en la consola de Hive, basta con ejecutar este comando.
hive
Esto hará que nos cambie el prompt de la consola por este.
hive>
Si todo ha ido bien, ya hemos instalado Apache Hive. Para probar que todo funciona correctamente podemos ejecutar la siguiente sentencia HiveQL.
show databases;
Esto hace que nos salga por pantalla algo parecido a lo siguiente.
OK
default
Time taken: 0.027 seconds, Fetched: 1 row(s)
Para salir de la consola, basta con ejecutar esta sentencia.
exit;
Para más información sobre el lenguaje HiveQL, puede visitar el siguiente enlace: HiveQL Commands (Inglés).