Sqoop - Tüm Tabloları İçe Aktar
Bu bölümde, tüm tabloların RDBMS veritabanı sunucusundan HDFS'ye nasıl alınacağı açıklanmaktadır. Her tablo verisi ayrı bir dizinde saklanır ve dizin adı tablo adıyla aynıdır.
Sözdizimi
Tüm tabloları içe aktarmak için aşağıdaki sözdizimi kullanılır.
$ sqoop import-all-tables (generic-args) (import-args)
$ sqoop-import-all-tables (generic-args) (import-args)
Misal
Tüm tabloları, userdbveri tabanı. Veritabanının sakladığı tabloların listesiuserdb aşağıdaki gibidir.
+--------------------+
| Tables |
+--------------------+
| emp |
| emp_add |
| emp_contact |
+--------------------+
Aşağıdaki komut, tüm tabloları bilgisayardan içe aktarmak için kullanılır. userdb veri tabanı.
$ sqoop import-all-tables \
--connect jdbc:mysql://localhost/userdb \
--username root
Note - Tüm tabloları içe aktar kullanıyorsanız, bu veritabanındaki her tablonun bir birincil anahtar alanına sahip olması zorunludur.
Aşağıdaki komut, tüm tablo verilerini HDFS'deki userdb veritabanına doğrulamak için kullanılır.
$ $HADOOP_HOME/bin/hadoop fs -ls
Size userdb veritabanındaki tablo isimlerinin listesini dizinler olarak gösterecektir.
Çıktı
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