запрос большого количества (300 КБ) CSV-файлов, хранящихся на S3 - PullRequest
0 голосов
/ 23 апреля 2020

Я выполняю некоторые операции очистки на EC2 и планирую сохранить свои данные на S3, как только они будут получены. Это будут:

  1. 300K отдельных файлов .csv
  2. каждый файл csv содержит около 3000 строк и 60 столбцов. В основном str.
  3. каждый CSV-файл имеет размер около 3 м.
  4. Они хранятся на AWS S3.

Я буду анализировать эти данные в подробности позже. Должен отметить, что:

  1. Это не для производственных целей, а для академического c исследовательского проекта;
  2. Мы заботимся больше об эффективности запросов, чем о стоимости;
  3. Мы, вероятно, не будем постоянно запрашивать данные. Вероятно, несколько сотен раз за следующие пару месяцев;

Я думаю, мне, вероятно, придется использовать некоторые службы на AWS (Афина, или записать их в DynamoDB или RDS?). Из этих трех служб у меня нет практического опыта, поэтому я ищу совет.

Еще одна мысль заключается в следующем: я должен сохранить данные в .parquet? Я читал о его эффективности по сравнению с другими форматами.

Большое спасибо.

1 Ответ

2 голосов
/ 24 апреля 2020

Без дополнительной информации трудно понять, какое решение является правильным, но если данные уже находятся в S3, я сначала попробую использовать Athena. Если это делает то, что вы хотите или стоит слишком дорого, я бы тогда посмотрел на RDS Aurora MySQL или Postegre SQL или Amazon DocumentDB.

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

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

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