Скорость импорта данных из Amazon S3 в решение Redshift / Redshift

Кто-нибудь знает, насколько велика скорость копирования с Amazon S3 на Redshift?

Я хочу использовать RedShift только около часа в день, чтобы обновлять отчеты Табелау. Выполняемые запросы всегда находятся в одной и той же базе данных, но мне нужно запускать их каждую ночь, чтобы учитывать новые данные, поступающие в этот день.

Я не хочу, чтобы кластер работал круглосуточно, просто чтобы использовать его в течение одного часа в день, но единственный способ, который я вижу для этого, - каждую ночь импортировать всю базу данных в Redshift (я не думаю, что вы можете не приостанавливать или приостанавливать кластер). Я понятия не имею, какова скорость копирования, поэтому я понятия не имею, будет ли относительно быстро копировать файл размером 10 ГБ в Redshift каждую ночь.

Предполагая, что это возможно, я думаю, что инкрементные изменения базы данных SQL Server будут перенесены на S3. Используя Cloud Formation, я автоматизирую подготовку кластера Redshift в 01:00 в течение 1 часа, импортирую базу данных из S3 и планирую Tableau для выполнения своих запросов между этим временем и получения результатов. Я слежу за тем, сколько времени занимают запросы, и если мне нужно больше часа, я просто изменяю формирование облака.

Таким образом, я надеюсь сохранить действительно «экономичный» сервер Tableau, передав весь ETL на аутсорсинг Redshift и покупая только то, что я потребляю на Redshift.

Пожалуйста, не стесняйтесь критиковать мое решение или выдувать его прямо из воды. В противном случае, если консенсус состоит в том, что импорт достаточно быстрый, это дает мне большие пальцы, и я двигаюсь в правильном направлении с этим решением.

Спасибо за любую помощь!


person Insomniac    schedule 21.05.2014    source источник


Ответы (4)


Загрузка Redshift из S3 происходит очень быстро, однако кластеры Redshift не поднимаются / отключаются очень быстро. В приведенном выше примере большая часть вашего времени (и денег) будет потрачена на ожидание загрузки кластера, загрузки существующих данных, выгрузки обновленных данных и повторного разрушения кластера.

На мой взгляд, для ночной обработки было бы лучше использовать другой подход. Я бы предложил либо:

  • За пару ТБ InfiniDB на большом экземпляре EC2 с базой данных, хранящейся на томе EBS.
  • Для многих ТБ используется Amazon EMR с данными, хранящимися на S3. Если вы не хотите слишком углубляться в Hadoop, вы можете использовать Xplenty / Syncsort Ironcluster / etc. для оркестровки элемента Hadoop.
person Joe Harris    schedule 23.05.2014
comment
Согласитесь, вы можете сохранить свои данные в EBS, отключить для них экземпляры DB и EC2 и активировать их, когда вам потребуется пакетная загрузка новых данных и запуск отчетов. Я архитектор InfiniDB, не стесняйтесь писать мне, и я был бы рад помочь вам с InfiniDB в этом. У нас есть кластеры, которые мы переводим в автономный режим и вызываем по мере необходимости для внутреннего использования для тестирования и тестирования производительности, так что аналогичный вариант использования. Даже если вы вырастете до десятков ТБ, это наше пространство, многие будут работать с этими нагрузками как в HDFS, так и вне ее. Мы пользуемся GPLv2 с открытым исходным кодом, так что можете попробовать :) - person mhoglan; 29.05.2014
comment
@mhoglan У меня есть несколько вопросов по InfiniDB, и я наткнулся на этот ваш пост. Как я могу с вами связаться? - person GGGforce; 29.06.2016

Хотя этот вопрос был написан три года назад и в то время он не был доступен, подходящим решением для этого сейчас было бы использование Amazon Athena, которое позволяет выполнять запросы SQL по запросу к данным, хранящимся в S3. Это работает по модели с оплатой за запрос и предназначено для специальных и «быстрых» рабочих нагрузок, подобных этой.

За кулисами Athena использует Presto и Elastic MapReduce, но на практике единственные необходимые знания для разработчика / аналитика - это SQL.

Tableau также теперь имеет встроенный коннектор Athena (начиная с версии 10.3).

Подробнее об Афине здесь: https://aws.amazon.com/athena/

person GShenanigan    schedule 18.06.2017

Вы можете предварительно отсортировать данные, которые хранятся на S3. Это сделает Vacuum намного быстрее.

person Alex B    schedule 20.05.2016

Это классическая проблема Redshift ... если вы посмотрите по-другому ... Microsoft недавно анонсировала новую службу под названием Хранилище данных SQL (используется PDW Engine) Я думаю, они хотят напрямую конкурировать с Redshift .... Самая интересная концепция здесь ... Знакомый язык запросов SQL Server и набор инструментов (включая поддержку Stored proc). Они также разделили хранилище и вычислительные ресурсы, поэтому у вас может быть 1 ГБ хранилища, но 10 вычислительных узлов для интенсивных запросов, и наоборот .... они утверждают, что вычислительный узел запускается через несколько секунд, и когда вы изменяете размер кластера, вам не нужно его брать. не в сети. Битва облачных хранилищ данных становится горячей :)

person Bobby    schedule 15.07.2015