#python #google-app-engine #mapreduce
#python #google-app-engine #mapreduce
Вопрос:
Как или где мне указать имя файла output_writer и тип содержимого для задания GAE mapreduce? Эта конфигурация ниже работает нормально для меня, но она создает новую запись blobstore с новым именем файла каждый раз, когда я запускаю задание. Я хотел бы иметь возможность указывать имя файла и тип содержимого, которые будут перезаписываться / заменяться каждый раз, когда я запускаю задание mapreduce.
Мой обработчик записывает строки текста для файла csv.
mapreduce:
- name: Export a model
mapper:
input_reader: mapreduce.input_readers.DatastoreInputReader
output_writer: mapreduce.output_writers.BlobstoreOutputWriter
handler: export_model
params:
- name: entity_kind
default: models.MyModel
Ответ №1:
Материал output_writer все еще экспериментальный. Пока не предусмотрено указание имен выходных файлов. Вы можете последовать примеру в демонстрационном приложении и использовать косвенное обращение: прикрепите BlobKey выходного блога к объекту по вашему выбору, который содержит желаемое имя).
Ищите
yield StoreOutput("WordCount", filekey, output)
в main.py
Комментарии:
1. Кроме того, обратите внимание, что установка имени файла не приведет к перезаписи старых заданий новыми: большие двоичные объекты blobstore неизменяемы и устраняются с помощью ключа blob, а не filename .