Да, Amazon Redshift использует собственное хранилище.
Основной вариант использования Amazon Redshift - выполнение сложных запросов к огромным объемам данных. Это предназначение «хранилища данных».
В то время как нормальные базы данных начинают терять производительность при наличии более 1 миллиона строк, Amazon Redshift может обрабатывать миллиарды строк . Это связано с тем, что данные распределены по множеству узлов и хранятся в столбцовом формате , что делает их пригодными для обработки «широких» таблиц (которые типичны для хранилищ данных). Это то, что дает Redshift его скорость. Фактически, именно выделенное хранилище и способ хранения данных обеспечивают Redshift потрясающую скорость.
Однако компромисс означает, что хотя Redshift великолепен для запрашивает большие объемы данных, он не предназначен для частого обновления данных . Таким образом, его не следует заменять обычной базой данных, которая используется приложением для транзакций. Скорее, Redshift часто используется для получения этих транзакционных данных, объединения их с другой информацией (клиенты, заказы, транзакции, заявки в службу поддержки, данные датчиков, клики на веб-сайтах, информация для отслеживания и т. Д. c), а затем для выполнения сложных запросов, которые объединяют все это. data.
Amazon Redshift также может использовать Amazon Redshift Spectrum , который очень похож на Amazon Athena. Оба сервиса могут читать данные напрямую из Amazon S3. Такой доступ не так эффективен, как использование данных, хранящихся непосредственно в Redshift, но его можно улучшить, используя столбчатые форматы хранения (например, OR C и Parquet) и разбивая файлы на разделы. Это, конечно, подходит только для запроса данных, но не для выполнения транзакций (обновлений) данных.
Новые узлы Amazon Redshift RA3 также имеют возможность выгружать менее используемые данные в Amazon S3 и использовать кеширование для выполнения быстрых запросов. Преимущество заключается в том, что хранилище отделяется от вычислений.
Краткое описание:
- Если вам нужна база данных для приложения, используйте Amazon RDS
- Если вы создаете хранилище данных, используйте Amazon Redshift
- Если у вас много исторических данных, которые редко запрашиваются, сохраните их в Amazon S3 и запросить его через Amazon Athena или Amazon Redshift Spectrum