【问题标题】:Loading data from Amazon redshift to HDFS将数据从 Amazon redshift 加载到 HDFS
【发布时间】:2018-11-18 13:20:52
【问题描述】:

我正在尝试将数据从 Amazon Redshift 加载到 HDFS。

val df = spark.read.format("com.databricks.spark.redshift")
    > .option("forward_spark_s3_credentials", "true").option("url",
    > "jdbc:redshift://xxx1").option("user","xxx2").option("password",
    > "xxx3") .option("query", "xxx4") .option("driver",
    > "com.amazon.redshift.jdbc.Driver") .option("tempdir", "s3n://xxx5")
    > .load()

这是我正在使用的 Scala 代码。当我做df.count()df.printSchema() 时,它给了我正确的模式和计数。但是,当我这样做 df.show() 或尝试将其写入 hdfs 时,它会说

S3ServiceException:我们的记录中不存在您提供的 AWS Access Key Id。,状态 403,错误 InvalidAccessKeyId

【问题讨论】:

    标签: scala amazon-web-services apache-spark amazon-s3 amazon-redshift


    【解决方案1】:

    您需要导出以下环境变量以写入 s3。

    导出 AWS_SECRET_ACCESS_KEY=XXX

    导出 AWS_ACCESS_KEY_ID=XXX

    【讨论】:

      猜你喜欢
      • 2015-07-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多