我目前有一个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
...
我遇到的问题是,作业完成时没有任何错误,但我在数据库中看不到数据。有人发现我做错了什么吗?
暂无答案!
目前还没有任何答案,快来回答吧!