我正在使用spark 3.0预览版。
我使用pyspark --packages=org.apache.hadoop:hadoop-aws:2.7.3
命令开始了pyspark会话。
我在下面尝试了以下代码
hadoop_conf = spark._jsc.hadoopConfiguration()
hadoop_conf.set("fs.s3a.impl","org.apache.hadoop.fs.s3a.S3AFileSystem")
hadoop_conf.set("com.amazonaws.services.s3.enableV4", "true")
hadoop_conf.set("fs.s3a.endpoint", "s3.us-east-2.amazonaws.com") hadoop_conf.set("fs.s3a.aws.credentials.provider","org.apache.hadoop.fs.s3a.BasicAWSCredentialsProvider")
hadoop_conf.set("fs.s3a.access.key",ACCESS_KEY)
hadoop_conf.set("fs.s3a.secret.key",SECRET_KEY)
接着是对存储桶的调用,下面的行将引发错误。
sdf = spark.read.csv("s3a://aai-team/neighbourhoods.csv")
答案 0 :(得分:0)
我今天有完全一样的问题。 刚刚用setSystemProperty->
解决了spark = SparkSession.builder.appName("app").getOrCreate()
sc=spark.sparkContext
sc.setSystemProperty("com.amazonaws.services.s3.enableV4", "true")
然后像你一样的hadoop_conf。