Sqoop(SQL to Hadoop)是一個用來將 Hadoop 和關系型數據庫中的數據相互轉移的工具 ,可以將一個關系型數據庫(例如 : MySQL、 Oracle 、 PostgreSQL 等)中的數據導入到 Hadoop 的 HDFS 中,也可以將HDFS 的數據導入到關系型數據庫中。
Sqoop 工作機制利用 MapReduce 分布式批處理,加快了數據傳輸速度,保證了容錯性。
選擇 Sqoop 的理由通常基于三個方面的考慮:
(1)它可以高效地利用資源,可以通過調整任務數來控制任務的并發度。
(2)它可以自動地完成數據類型映射與轉換。
(3)它支持多種數據庫,比如 MySQL 、 Oracle 和 PostgreSQL 等數據庫。
Sqoop發展至今主要演化了兩大版本,Sqoop1和 Sqoop2。 Sqoop1的最高版本為 1.4.7,如圖所示。而Sqoop1.99.7 屬于 Sqoop2。 Sqoop1和Sqoop2是兩個完全不兼容的版本。