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是两个完全不兼容的版本。