Сжатые данные в S3, которые необходимо использовать для машинного обучения в EMR или Redshift - PullRequest
0 голосов
/ 18 марта 2019

У меня есть огромные CSV-файлы в сжатом формате в хранилище S3. Мне нужно только подмножество столбцов из данных для целей машинного обучения. Как извлечь эти столбцы в EMR, а затем в Redshift, не передавая целые файлы?

Моя идея состоит в том, чтобы обработать все файлы в EMR, затем извлечь подмножество и вставить необходимые столбцы в Redshift. Но это занимает много времени. Пожалуйста, дайте мне знать, если есть оптимизированный способ обработки этих данных.

Редактировать: я пытаюсь автоматизировать этот конвейер, используя Кафку. Допустим, добавлена ​​новая папка в S3, она должна обрабатываться в EMR с использованием spark и сохраняться в красном смещении без какого-либо ручного вмешательства.

Редактировать 2: Спасибо за вводные ребята, я смог создать конвейер от S3 до Redshift, используя Pyspark в EMR. В настоящее время я пытаюсь интегрировать Kafka в этот конвейер.

Ответы [ 2 ]

0 голосов
/ 19 марта 2019

Если цель состоит в том, чтобы материализовать подмножество файловых столбцов в таблице в Redshift, тогда у вас есть один вариант - Redshift Spectrum, который позволит вам определить «внешнюю таблицу» поверх файлов CSV в S3.

Затем вы можете выбрать соответствующие столбцы из внешних таблиц и вставить их в фактические таблицы Redshift.

У вас будет начальный удар по стоимости, когда Spectrum просканирует CSV-файлы, чтобы запросить их, чтобудет зависеть от размера файлов, но это будет значительно меньше, чем раскрутка кластера EMR для обработки данных.

Начало работы с Amazon Redshift Spectrum

0 голосов
/ 19 марта 2019

Я бы предложил:

  • Создать внешнюю таблицу в Amazon Athena (сканер AWS Glue может сделать это за вас), которая указывает, где хранятся ваши данные
  • Используйте CREATE TABLE AS, чтобы выбрать нужные столбцы и сохранить их в новой таблице (данные будут автоматически сохранены в Amazon S3)

Amazon Athena может обрабатывать формат gzip, но вынеобходимо проверить, включает ли это формат zip.

См .:

...