Почему я не могу получить доступ к файлам в S3, загруженным через PySpark? - PullRequest
0 голосов
/ 09 мая 2020

У меня есть задание PySpark, которое выгружает несколько файлов данных в мою корзину S3. Мне нужно использовать эти файлы данных для построения модели машинного обучения с использованием AWS Sagemaker. Но я не могу получить доступ к этим файлам данных в S3 через sagemaker или boto3.

Например,

S3 address: 
s3://my-bucket-name/dataset/account_1/examples.csv
s3://my-bucket-name/dataset/account_2/examples.csv
...
...

У меня есть несколько каталогов и файлов в каталоге 'dataset', и все эти файлы необходимы для работы sagemaker. Sagemaker использует роль AWS с S3FullAccess, и если я создам этот 'examples.csv' вручную, задание sagemaker будет работать отлично.

Команда PySpark для сброса этого файла в s3:

df.write.partitionBy(ACCOUNT_ID).csv("s3a://my-bucket-name/dataset", header=True, sep=";")

Но моя работа sagemaker не может получить доступ к этим файлам в S3 и приводит к следующей ошибке:

Error for Processing job sagemaker-scikit-learn-2020-05-09-08-32-50-724: Failed. Reason: ClientError: Failed to download data. 403 Forbidden (403): Forbidden

Даже при попытке загрузить этот файл с помощью библиотеки Boto3 я получаю ту же ошибку. Когда я пытаюсь вручную переместить этот файл на консоли AWS в другой каталог, я все равно получаю ту же ошибку. разрешения изменены. Пожалуйста, дайте мне знать, в чем проблема и как ее решить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...