Sqoop - นำเข้าตารางทั้งหมด
บทนี้อธิบายวิธีการนำเข้าตารางทั้งหมดจากเซิร์ฟเวอร์ฐานข้อมูล RDBMS ไปยัง HDFS ข้อมูลตารางแต่ละรายการจะถูกเก็บไว้ในไดเร็กทอรีแยกต่างหากและชื่อไดเร็กทอรีจะเหมือนกับชื่อตาราง
ไวยากรณ์
ไวยากรณ์ต่อไปนี้ใช้เพื่อนำเข้าตารางทั้งหมด
$ sqoop import-all-tables (generic-args) (import-args)
$ sqoop-import-all-tables (generic-args) (import-args)
ตัวอย่าง
ให้เรายกตัวอย่างการนำเข้าตารางทั้งหมดจากไฟล์ userdbฐานข้อมูล. รายการตารางที่ฐานข้อมูลuserdb มีดังนี้
+--------------------+
| Tables |
+--------------------+
| emp |
| emp_add |
| emp_contact |
+--------------------+
คำสั่งต่อไปนี้ใช้เพื่อนำเข้าตารางทั้งหมดจากไฟล์ userdb ฐานข้อมูล.
$ sqoop import-all-tables \
--connect jdbc:mysql://localhost/userdb \
--username root
Note - หากคุณใช้ import-all-tables จำเป็นต้องมีทุกตารางในฐานข้อมูลนั้นต้องมีฟิลด์คีย์หลัก
คำสั่งต่อไปนี้ใช้เพื่อตรวจสอบข้อมูลตารางทั้งหมดกับฐานข้อมูล userdb ใน HDFS
$ $HADOOP_HOME/bin/hadoop fs -ls
มันจะแสดงรายการชื่อตารางในฐานข้อมูล userdb เป็นไดเร็กทอรี
เอาต์พุต
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