使用sqoop导出spark作业中的数据

kq4fsx7k  于 2021-05-16  发布在  Spark
关注(0)|答案(0)|浏览(285)

我目前有一个spark工作(用scala编写),它涉及到将数据写入postgresawsrds数据库。从这个答案(链接)看来,我应该使用copy实用程序或sqoop。我正在尝试使用sqoop,但是遇到了一些问题。
在我的emr集群(v6.1.0)上,我选择安装sqoop。然后在scala代码中,我尝试将信息从s3移动到rds。

...
import scala.sys.process.Process
import scala.sys.process.ProcessLogger

...

val logger = ProcessLogger(
  successLine => println(s"Success: ${successLine}"),
  errorLine => println(s"Error: ${errorLine}")
)

val command = Seq(
  "sqoop", "export",
  "--connect", "<dbEndpoint>",
  "--table", "<dbTable>",
  "--export-dir", "s3://myBucket/path/to/foler/with/csvs/",
  "--username", "<username>",
  "--password", "<password>",
  "--input-fields-terminated-by", "','",
  "--input-lines-terminated-by", "'\n'",
  "-batch",
  "-m", "4"
)

Process(command) ! logger

...

我遇到的问题是,作业完成时没有任何错误,但我在数据库中看不到数据。有人发现我做错了什么吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题