2015-07-04 3 views
0


Я попытался создать источник данных с помощью boto для машинного обучения, но в итоге с ошибкой.
Вот мой код:Amazon S3 - Не удалось создать источник данных

import boto 

bucketname = 'mybucket' 
filename = 'myfile.csv' 
schema = 'myfile.csv.schema' 
conn = boto.connect_s3() 
datasource = 'my_datasource' 

ml = boto.connect_machinelearning() 

#create a data source 
ds = ml.create_data_source_from_s3(
data_source_id = datasource, 
data_spec ={ 
    'DataLocationS3':'s3://'+bucketname+'/'+filename, 
    'DataSchemaLocationS3':'s3://'+bucketname+'/'+schema}, 
data_source_name=None, 
compute_statistics = True) 

print ml.get_data_source(datasource,verbose=None) 

Я получаю эту ошибку в результате get_data_source вызова:

Не удалось получить доступ к "s3: //mybucket/myfile.csv. Либо файл в этом месте отсутствует, либо файл пуст, либо вы не предоставили нам разрешение на чтение.

Я проверил и у меня есть FULL_CONTROL в качестве моих прав. Ведро, файл и схема все присутствуют и не являются пустыми. Как это решить?

ответ

1

Возможно, у вас есть FULL_CONTROL над этим ресурсом S3, но для этого вам необходимо предоставить службе машинного обучения соответствующий доступ к этому ресурсу S3.

Я знаю, что ссылки на ответы не одобряются, но в этом случае я считаю, что лучше всего ссылаться на definitive documentation from the Machine Learning Service, поскольку фактические шаги сложны и могут измениться в будущем.

+0

Спасибо человек. Вы знаете, как предоставить эти разрешения не из пользовательского интерфейса, а из кода. – user2496965

Смежные вопросы