Sqoop - Importuj wszystkie tabele
W tym rozdziale opisano sposób importowania wszystkich tabel z serwera bazy danych RDBMS do systemu plików HDFS. Dane każdej tabeli są przechowywane w oddzielnym katalogu, a nazwa katalogu jest taka sama jak nazwa tabeli.
Składnia
Poniższa składnia służy do importowania wszystkich tabel.
$ sqoop import-all-tables (generic-args) (import-args) $ sqoop-import-all-tables (generic-args) (import-args)
Przykład
Weźmy przykład importowania wszystkich tabel z pliku userdbBaza danych. Lista tabel, które zawiera baza danychuserdb zawiera jest następujący.
+--------------------+
| Tables |
+--------------------+
| emp |
| emp_add |
| emp_contact |
+--------------------+
Poniższe polecenie służy do importowania wszystkich tabel z pliku userdb Baza danych.
$ sqoop import-all-tables \
--connect jdbc:mysql://localhost/userdb \
--username root
Note - Jeśli korzystasz z importu wszystkich tabel, obowiązkowe jest, aby każda tabela w tej bazie danych miała pole klucza podstawowego.
Następujące polecenie służy do weryfikacji wszystkich danych tabeli w bazie danych userdb w systemie plików HDFS.
$ $HADOOP_HOME/bin/hadoop fs -ls
Wyświetli listę nazw tabel w bazie danych userdb jako katalogi.
Wynik
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