Apache Sqoop
Apache Sqoop(TM) 是一个用于在Apache Hadoop和结构化存储比如关系型数据库之间高效的批量传输数据工具。
Sqoop在2012年3月成功的从孵化器毕业,现在已经是顶级Apache项目。
最新的稳定版本是 1.4.7 (download, documentation)。Sqoop2 的最新版本是 1.99.7 (download, documentation)。注意,1.99.7 和 1.4.7 不兼容,并且功能不完善,不适合部署于生产环境。
Sqoop1 vs Sqoop2
注意: Sqoop 2 已经被弃用。Cloudera 推荐使用Sqoop 1。
| Feature | Sqoop 1 | Sqoop 2 |
|---|---|---|
| Connectors for all major RDBMS | 支持 | 不支持 解决办法:使用已经在如下数据库测试过的通用 JDBC Connector: Microsoft SQL Server, PostgreSQL, MySQL and Oracle。这些 connector 应该可以在JDBC兼容的数据库上工作。但是,性能应该不能与Sqoop专门优化的connectors媲美。 |
| Kerberos Security Integration | 支持 | 支持 |
| Data transfer from RDBMS to Hive or HBase | 支持 | 不支持 解决办法:如下两步操作 1、从RDBMS导入数据到HDFS 2、使用工具或者命令行,比如Hive的 LOAD DATA语句,手动导入数据到Hive或HBase。 |
| Data transfer from Hive or HBase to RDBMS | 不支持 解决办法:如下两步操作 1、将数据从Hive或HBase提取到HDFS(以 text 或 Avro 文件方式) 2、使用Sqoop将先前的输出导出到RDBMS。 |
不支持 解决办法同Sqoop 1。 |