如何使用 Sqoop 从 RDBMS 将数据导入本地文件系统,而不是 HDFS?
Posted
技术标签:
【中文标题】如何使用 Sqoop 从 RDBMS 将数据导入本地文件系统,而不是 HDFS?【英文标题】:How to import data using Sqoop from RDBMS into local file system, not HDFS? 【发布时间】:2014-11-19 18:42:35 【问题描述】:我看到 Sqoop 允许将数据从 RDBMS 数据库导入 HDFS。但是,我想将数据导入 Linux 中的 本地文件系统文件夹,而不是导入 HDFS 文件系统。
有没有办法做到这一点?
【问题讨论】:
【参考方案1】:在 Sqoop1 中,您可以使用 documentation 中详述的“-fs”选项。这是一个简单的例子:
sqoop import -fs local -jt local --connect jdbc:mysql://<host>/sqoop --username sqoop --password sqoop --table tbl
在 Sqoop2 中,您将可以在创建链接时choose your file system:
HDFS URI: file:///
【讨论】:
【参考方案2】:如果要将表存储在调用 sqoop 的目录中:
sqoop import -fs file:/// -jt local --connect jdbc://<host>/<database_name> --username <user_name> --password <password> --table <table_name>
表格将存储为 ./ 中的 csv 文件
【讨论】:
以上是关于如何使用 Sqoop 从 RDBMS 将数据导入本地文件系统,而不是 HDFS?的主要内容,如果未能解决你的问题,请参考以下文章
使用 SQOOP 和 FLUME 将数据从 RDBMS 移动到 Hadoop
我们如何使用 SQoop 对从 RDBMS 迁移到 HDFS 的数据进行测试?