Невозможно подключиться к s3 buckets из pyspark - PullRequest
0 голосов
/ 16 июня 2019

Я пытаюсь подключиться к своим корзинам s3, используя мой Spark, следующим образом:

rdd=sc.textFile("s3n://bucketname/objectname")
rdd=sc.textFile(""s3a://bucketname/objectname") 

и изменил мой cores-site.xml на pers s3a или s3n, но я получаю ошибку следующим образом.Пробовал различные изменения в моем hadoop core-site.xml.Я получаю ошибки, такие как «загрузить учетные данные AWS от любого поставщика в цепочке».{/.aws файл учетных данных находится там с правильными учетными данными}

ResponseStatus: неверный запрос, сообщение об ошибке XML: AuthorizationHeaderMalformed неверный заголовок авторизации;в полномочиях должен быть указан непустой ключ доступа (AKID)

   <configuration>
    <property>
      <name>fs.defaultFS</name>
      <value>hdfs://********.compute-1.amazonaws.com:9000</value>
    </property>
    <property>
      <name>fs.s3a.impl</name>
      <value>org.apache.hadoop.fs.s3a.S3AFileSystem</value>
    </property>
    <property>
      <name>fs.s3a.access.key</name>
      <value>ACCESSKEYID</value>
    </property>
    <property>
      <name>fs.s3a.secret.key</name>
      <value>SECRETKEY</value>
    </property>
    </configuration>

Я добавил aws-sdk-s3 в мой файл JAR.Пожалуйста, дайте мне указания, чтобы вывести меня на правильный путь.

Полное сообщение об ошибке:

Bad Request, XML Error Message: <?xml version="1.0" encoding="UTF-8"?><Error><Code>AuthorizationHeaderMalformed</Code><Message>The authorization header is malformed; a non-empty Access Key (AKID) must be provided in the credential.</Message><RequestId>E64EEB94923F0FF7</RequestId><HostId>cmAiSUGZo7w7IgK3gJ+ubuWdlXwffEhpnpdnkoJQ2hLP8EHBXZDau0mFCKCC3eWBtfL9V1Le4Mw=</HostId></Error>
...