Como ya hemos comentado en un post anterior, Sqoop es un framework open source que permite exportar e importar datos desde cualquier RDBMS y HDFS, y como no, el origen puede ser SQL Server o SQL Azure.
Estas acciones se puede realizar desde línea de comandos, conectándose directamente a la máquina de Hadoop por RDP.
Una vez conectados podemos abrir la consola de Hadoop para lanzar los comandos necesarios para importar datos desde una base de datos de SQL Azure.
Se establece la variable HIVE_HOME y se lanzan los comandos que queramos, ya está!
Importar desde SQL Azure a HDFS
binsqoop.cmd import –connect "jdbc:sqlserver://<servername>.database.windows.net:1433;database=<dbname>;user=<username>@<servername>;password=<password>" –table <from_table> –target-dir <to_hdfs_folder> –split-by <from_table_column>
Exportar desde HDFS a SQL Azure
binsqoop.cmd export –connect "jdbc:sqlserver://<servername>.database.windows.net:1433;database=<dbname>;user=<username>@<servername>;password=<password>" –table <to_table> –export-dir <from_hdfs_folder> –input-fields-terminated-by "<delimiter>"