Что лучше: несколько запросов на несколько файлов или один запрос на один файл S3? - PullRequest
0 голосов
/ 26 марта 2020

У меня есть файл CSV 10 ГБ. Я могу поместить файл в S3 двумя способами.

1) Загрузить весь файл в один объект CSV.

2) Разделить файл на несколько частей (скажем, 200 МБ) и загрузить.

Теперь мне нужно собрать все данные в объекте во фрейм данных pandas, который выполняется на экземпляре EC2.

1) Один из способов - сделать один запрос и получить файл, если он должен быть одним большим файлом и поместить данные в фрейм данных.

2) Другой способ - сделать несколько запросов для каждого объекта и продолжать добавлять данные в фрейм данных.

Какой лучший способ сделать это?

1 Ответ

0 голосов
/ 26 марта 2020

При наличии нескольких файлов у вас будет возможность загружать их одновременно в параллельных потоках. Но у этого есть 2 недостатка:

  1. Эти операции являются интенсивными операциями ввода-вывода (в основном для сети), поэтому в зависимости от типа вашего экземпляра производительность может быть в целом ниже

  2. Многопоточные приложения включают некоторые накладные расходы при обработке ошибок, агрегировании результатов и тому подобное.

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

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