AWS Data Lake Ingest
Нужно ли вам использовать Excel и другие проприетарные форматы, используя клей, или позволить клею работать, сканировать ваше хранилище s3, чтобы использовать эти форматы данных в вашем озере данных?
Я ознакомился с документом " Основание озера данных в облаке AWS", и у меня остаётся ломать голову над получением данных в озере. У меня есть провайдер данных с большим набором данных, хранящихся в их системе как Excel и доступ к файлам.
Основываясь на потоке процесса, они будут загружать данные в корзину представления s3, которая будет запускать серию действий, но нет данных в формате, который работал бы с другими инструментами.
Требует ли использование этих файлов склеивания данных, представленных в корзине, или есть ли другой способ сделать эти данные доступными для других инструментов, таких как Athena и спектр красного смещения?
Спасибо за любой свет, который вы можете пролить на эту тему.
-Guido
1 ответ
Я не вижу, чтобы можно было передавать данные Excel непосредственно в Data Lake. Возможно, вам придется конвертировать в CSV / TSV / Json или другие форматы перед загрузкой в Data Lake.
Форматы, поддерживаемые Redshift Spectrum:
http://docs.aws.amazon.com/redshift/latest/dg/c-spectrum-data-files.html - опять же, я не вижу Excel на данный момент.
Афина Поддерживаемые форматы файлов:
http://docs.aws.amazon.com/athena/latest/ug/supported-formats.html - Excel также не поддерживается здесь.
Вам необходимо загрузить файлы на S3, чтобы использовать Athena или Redshift Spectrum или даже само хранилище Redshift.
Загрузка файлов на S3:
Если у вас есть файлы большего размера, вам нужно использовать S3 multipart upload для более быстрой загрузки. Если вы хотите больше скорости, вам нужно использовать S3 ускоритель для загрузки ваших файлов.
Запрос больших данных с Афиной:
С помощью Athena вы можете создавать внешние таблицы из S3 локаций. После создания внешних таблиц используйте ссылку Athena Sql для запроса ваших данных.
http://docs.aws.amazon.com/athena/latest/ug/language-reference.html
Запрос больших данных с помощью Redshift Spectrum:
Как и в Athena, вы можете создавать внешние таблицы с помощью Redshift. Начните запрашивать эти таблицы и получите результаты на Redshift.
Redshift имеет много коммерческих инструментов, я использую SQL Workbench. Это бесплатный открытый исходный код и отличная поддержка, поддерживаемая AWS.
SQL WorkBench: http://www.sql-workbench.net/
Подключение вашего WorkBench к Redshift: http://docs.aws.amazon.com/redshift/latest/mgmt/connecting-using-workbench.html
Копирование данных в Redshift:
Также, если вы хотите перенести хранилище данных в Redshift, вы можете использовать команду копирования, чтобы извлечь данные из S3 и загрузить их в Redshift.
Примеры команд копирования:
http://docs.aws.amazon.com/redshift/latest/dg/r_COPY_command_examples.html
Размер кластера Redshift и количество узлов:
Перед созданием Redshift Cluster проверьте необходимый размер и количество необходимых узлов. Большее количество узлов получает запрос параллельно. Еще один важный фактор - насколько хорошо распределяются ваши данные. (Ключ распределения и ключи сортировки)
У меня есть очень хороший опыт работы с Redshift, чтобы подняться на скорость может потребоваться некоторое время.
Надеюсь, поможет.