Primeros pasos con sqoop

Instalación o configuración

Sqoop se envía como un paquete binario, sin embargo, está compuesto por dos partes separadas, cliente y servidor. You need to install server on single node in your cluster. This node will then serve as an entry point for all connecting Sqoop clients. Server acts as a mapreduce client and therefore Hadoop must be installed and configured on machine hosting Sqoop server. Clients can be installed on any arbitrary number of machines. Client is not acting as a mapreduce client and thus you do not need to install Hadoop on nodes that will act only as a Sqoop client.

Copie el artefacto Sqoop en la máquina donde desea ejecutar el servidor Sqoop. This machine must have installed and configured Hadoop. You don’t need to run any Hadoop related services there, however the machine must be able to act as an Hadoop client.

# Extract Sqoop  tar
tar -xf sqoop-<version>-bin-hadoop<hadoop-version>.tar.gz

# Move decompressed content to any location 
  (you can also setup soft links to sqoop directory)
mv sqoop-<version>-bin-hadoop<hadoop version>.tar.gz /opt/apache/sqoop

# Change working directory
cd /opt/apache/sqoop

Instalar dependencias para SQOOP

Debe instalar las bibliotecas de Hadoop en el archivo de guerra del servidor Sqoop. Sqoop proporciona el script de conveniencia addtowar.sh para hacerlo.

Si ha instalado Hadoop en la ubicación habitual en /usr/lib y el ejecutable hadoop está en su camino, puede usar el procedimiento de instalación automática de Hadoop:

./bin/addtowar.sh -hadoop-auto

En caso de que tenga Hadoop instalado en una ubicación diferente, deberá especificar manualmente la versión de Hadoop y la ruta a las bibliotecas de Hadoop. Puede usar el parámetro -hadoop-version para especificar la versión principal de Hadoop,

./bin/addtowar.sh -hadoop-version 2.0 -hadoop-path /usr/lib/hadoop-common:/usr/lib/hadoop-hdfs:/usr/lib/hadoop-yarn
  • Se instalaron los archivos JDBC necesarios para que sqoop se conecte a la base de datos.

./bin/addtowar.sh -jars /ruta/al/jar/mysql-connector-java-*-bin.jar

Iniciar y detener los servicios del servidor Sqoop

./bin/sqoop.sh server start
./bin/sqoop.sh server stop

Pasos de configuración del cliente Sqoop

Copie el artefacto de distribución de Sqoop en la máquina de destino y descomprímalo en la ubicación deseada. Puede iniciar el cliente con el siguiente comando:

bin/sqoop.sh client

El cliente Sqoop 2 tiene la capacidad de cargar archivos de recursos de manera similar a otras herramientas de línea de comandos. Al comienzo de la ejecución, el cliente Sqoop verificará la existencia del archivo .sqoop2rc en el directorio de inicio del usuario registrado actualmente. Si dicho archivo existe, será interpretado antes de cualquier acción adicional. Este archivo se carga tanto en modo interactivo como por lotes. Se puede utilizar para ejecutar cualquier comando compatible por lotes.

Ejemplo de archivo de recursos:

# Configure our Sqoop 2 server automatically
set server --host sqoop2.company.net

# Run in verbose mode by default
set option --name verbose --value true