Sqoop - Importar todas as tabelas
Este capítulo descreve como importar todas as tabelas do servidor de banco de dados RDBMS para o HDFS. Cada dado da tabela é armazenado em um diretório separado e o nome do diretório é igual ao nome da tabela.
Sintaxe
A seguinte sintaxe é usada para importar todas as tabelas.
$ sqoop import-all-tables (generic-args) (import-args)
$ sqoop-import-all-tables (generic-args) (import-args)
Exemplo
Vamos dar um exemplo de importação de todas as tabelas do userdbbase de dados. A lista de tabelas que o banco de dadosuserdb contém é o seguinte.
+--------------------+
| Tables |
+--------------------+
| emp |
| emp_add |
| emp_contact |
+--------------------+
O seguinte comando é usado para importar todas as tabelas do userdb base de dados.
$ sqoop import-all-tables \
--connect jdbc:mysql://localhost/userdb \
--username root
Note - Se você estiver usando import-all-tables, é obrigatório que todas as tabelas desse banco de dados tenham um campo de chave primária.
O comando a seguir é usado para verificar todos os dados da tabela no banco de dados userdb no HDFS.
$ $HADOOP_HOME/bin/hadoop fs -ls
Ele irá mostrar a você a lista de nomes de tabelas no banco de dados userdb como diretórios.
Resultado
drwxr-xr-x - hadoop supergroup 0 2014-12-22 22:50 _sqoop
drwxr-xr-x - hadoop supergroup 0 2014-12-23 01:46 emp
drwxr-xr-x - hadoop supergroup 0 2014-12-23 01:50 emp_add
drwxr-xr-x - hadoop supergroup 0 2014-12-23 01:52 emp_contact