Python, Flask: загрузка файла большого объема по частям

Задача: с помощью REST API обработать большой файл с данными -- сделать из сырых данных фичи и обучить на них ML-модели.

Я обратабываю загруженный (например, через postman) файл по чанкам с помочью библиотеки pandas (read_csv, chunksize) и дальше генерю фичи, обучаю модели и т.п.

Проблема: при загрузке на сервер файла >10ГБ убиваются все активные процессы: postman, docker. Иногда postman не падает, но выдает ошибку Error: socket hang up.

Что нагуглил и проверил: max_buffer_size = 100ГБ, MAX_CONTENT_LENGTH тоже + все настройки postman по этому вопросу + https://stackoverflow.com/questions/44727052/handling-large-file-uploads-with-flask/53001103

Вопрос: 1.) идейный -- правильно ли я делаю, с точки зрения best practice, что пробую залить огромный файл на сервер, и там уже его обрабатываю по кусочкам? 2.) практический -- можно ли загружать (например, внутрь докер контейнера с апишкой) сам файл чанками, если речь идет о csv файле, где нам важен порядок следования его "кусочков"?


Ответы (0 шт):