Вопросы и ответы по Amazon Redshift

Общие вопросы

Десятки тысяч клиентов ежедневно применяют возможности SQL-аналитики Amazon Redshift в облаке, обрабатывая эксабайты данных для получения ценной информации. Независимо от того, где хранятся ваши данные (в операционном хранилище данных, в сервисах потоковой обработки данных или в сторонних наборах данных), Amazon Redshift помогает вам получать безопасный доступ к данным, комбинировать и совместно использовать их при минимальном перемещении и копировании. Сервис Amazon Redshift глубоко интегрирован в сервисы баз данных, аналитики и машинного обучения AWS, чтобы применять подходы без извлечения, преобразования и загрузки данных или помочь вам обращаться к данным на месте для их анализа в режиме реального времени, построения моделей машинного обучения на SQL и применения аналитических функций Apache Spark к данным в Redshift. Amazon Redshift Serverless позволяет вашим инженерам, разработчикам, специалистам по обработке данных и аналитикам с легкостью приступить к работе и быстро масштабировать аналитику в среде, которой не требуется администрирование. Благодаря своему движку массово-параллельной обработки (MPP) и архитектуре, которая отделяет вычислительные ресурсы от ресурсов хранилищ для эффективного масштабирования, а также инновациям в области повышения производительности с использованием машинного обучения (например, AutoMaterialized Views), Amazon Redshift имеет все возможности для масштабирования и обеспечивает соотношение цены и производительности в 5 раз лучшее, чем другие облачные хранилища данных.

Тысячи клиентов выбирают Amazon Redshift, чтобы ускорить получение результатов, потому что это эффективная аналитическая система, которая тесно интегрируется с сервисами баз данных и машинного обучения, проста в использовании и может стать центральным сервисом, который удовлетворяет все их требования к аналитике. Amazon Redshift Serverless автоматически распределяет и масштабирует мощности хранилища данных, позволяя обеспечить высокую производительность для рабочих нагрузок с высокими и непредсказуемыми требованиями к ресурсам. Amazon Redshift отличается наилучшим соотношением цены и производительности при работе с разнообразными аналитическими рабочими нагрузками: панелями управления, разработкой приложений, совместным использованием данных, заданиями ETL (извлечение, преобразование, нагрузка) и некоторыми другими нагрузками. Учитывая то, что десятки тысяч клиентов используют аналитику для обработки от терабайтов до петабайтов данных, Amazon Redshift повышает производительность реальных рабочих нагрузок клиентов на основании телеметрии производительности парка и обеспечивает производительность, которая масштабируется в линейном соотношении с рабочей нагрузкой, не требуя при этом больших затрат. Инновации в области повышения производительности доступны клиентам без дополнительной платы. Amazon Redshift позволяет получить ценные сведения, выполняя интерактивный и прогностический анализ по всем данным во всех корпоративных базах данных, озерах данных, хранилищах данных, по потоковым данным и наборам данных сторонних организаций. Amazon Redshift поддерживает лучшую в отрасли систему безопасности с интеграцией управления идентификацией и федерацией для единого входа (SSO), многофакторной аутентификацией, контролем доступа на уровне столбцов, контролем доступа на основе ролей, Виртуальным частным облаком Amazon (Amazon VPC) и более быстрым изменением размера кластера.

Управление Amazon Redshift полностью осуществляется платформой AWS, так что вам не придется беспокоиться о таких задачах по управлению хранилищем данных, как распределение оборудования, применение исправлений, настройка, конфигурирование, мониторинг узлов и дисков для восстановления после сбоев, а также резервное копирование. AWS управляет работами по настройке, эксплуатации и масштабированию хранилища данных от вашего имени, позволяя сосредоточиться на создании приложений. Amazon Redshift Serverless автоматически распределяет и масштабирует мощности хранилища данных, позволяя обеспечить высокую производительность для рабочих нагрузок с высокими и непредсказуемыми требованиями к ресурсам, а также оплачивать только реально используемые ресурсы. Amazon Redshift также поддерживает функцию автоматической настройки и дает рекомендации по управлению складом в Redshift Advisor. Чтобы обеспечить работу Redshift Spectrum, сервис Amazon Redshift управляет всей вычислительной инфраструктурой, балансировкой нагрузки, планированием, разработкой графика запросов к данным, хранящимся в Amazon S3, и выполнением этих запросов. Amazon Redshift обеспечивает аналитику всех ваших данных благодаря тесной интеграции с сервисами баз данных, обладающими такими характеристиками, как работа Amazon Aurora с Amazon Redshift без извлечения, преобразования и загрузки данных и федеративные запросы для доступа к данным на месте из таких операционных баз данных, как Amazon RDS и ваше озеро данных Amazon S3. Redshift обеспечивает ускоренное получение данных за счет автоматизированных конвейеров данных без кода, автоматизированных конвейеров данных, которые автоматически принимают потоковые данные или файлы Amazon S3. Кроме того, Redshift интегрирован с Обменом данными AWS, что позволяет пользователям находить сторонние наборы данных, подписываться на них и отправлять к ним запросы, а также комбинировать их со своими данными, чтобы получать комплексную аналитическую информацию. Благодаря встроенной интеграции с Amazon SageMaker клиенты могут прямо в своем хранилище данных создавать, обучать и компоновать модели машинного обучения на SQL. Amazon Redshift обеспечивает в 5 раз лучшее соотношение цены и производительности использования аналитических возможностей SQL, чем другие облачные хранилища данных.

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

Вы можете всего за несколько действий в Консоли управления AWS начать отправлять запросы к данным. Вы можете использовать предварительно загруженные примеры данных, в том числе наборы данных для сравнительного тестирования TPC-H, TPC-DS и другие примеры запросов, которые позволят почти мгновенно начать работу. Чтобы начать работу с Amazon Redshift Serverless, щелкните «Начало работы с Amazon Redshift» и создайте запрос к данным. Начать работу можно здесь.

Результаты теста производительности TPC-DS показывают, что Amazon Redshift обеспечивает наилучшую производительность в стандартной конфигурации, даже для сравнительно небольшого набора данных размером 3 ТБ. Amazon Redshift обеспечивает в 5 раз лучшее соотношение цены и производительности, чем другие облачные хранилища данных. Это позволяет вам сразу же получить преимущество благодаря лучшему соотношению цены и производительности Amazon Redshift, причем без дополнительной настройки вручную. На основании телеметрии парка производительности мы также знаем, что большинство рабочих нагрузок используют краткие запросы (рабочие нагрузки, которые выполняются менее чем за секунду). Последние оценочные тестирования показали, что при этих рабочих нагрузках Amazon Redshift демонстрирует в 7 раз лучшее соотношение цены и производительности рабочих нагрузок с высоким уровнем параллельного выполнения и низкой задержкой, чем другие облачные хранилища данных. Подробнее см. здесь.

Да, специалисты Amazon Redshift готовы ответить на вопросы и обеспечить поддержку. Напишите нам, и мы свяжемся с вами в течение одного рабочего дня, чтобы рассказать, как AWS может помочь вашей организации.

Управляемое хранилище Amazon Redshift доступно с типами узлов RA3 и в бессерверной конфигурации. Оно позволяет масштабировать и оплачивать вычислительные ресурсы и хранилище независимо друг от друга. Поэтому размер кластера можно устанавливать в соответствии с потребностями задачи вычисления. Оно автоматически использует высокопроизводительное локальное хранилище на твердотельном накопителе в качестве кэша первого уровня 1 и использует такие средства оптимизации, как температура блока данных, время создания блоков данных и шаблоны рабочей нагрузки. Это обеспечивает высокую производительность при возможном автоматическом масштабировании хранилища в Amazon S3 без необходимости каких-либо действий.

Если вы уже используете узлы Amazon Redshift Dense Storage или Dense Compute, с помощью эластичного изменения размера вы можете обновить существующие кластеры до нового вычислительного инстанса RA3. Amazon Redshift Serverless и кластеры на основе инстансов RA3 автоматически используют для хранения данных хранилище под управлением Redshift. Для использования этой возможности не требуется никаких действий, кроме применения Amazon Redshift Serverless или инстансов RA3.

Amazon Redshift Spectrum – это возможность сервиса Amazon Redshift, которая позволяет выполнять запросы к вашему озеру данных в Amazon S3 без загрузки или выполнения ETL-операций. При отправке SQL-запроса он поступает на адрес Amazon Redshift, и этот сервис генерирует и оптимизирует план запроса. Amazon Redshift определяет, какие данные являются локальными, а какие находятся в Amazon S3, генерирует план минимизации объема данных S3, которые необходимо прочитать, и запрашивает исполнителей Amazon Redshift Spectrum из общего пула ресурсов, чтобы прочитать и обработать данные из Amazon S3.

Выбор типов узлов RA3 может быть правильным в следующих случаях.

  • Если вам требуется гибко масштабировать и оплачивать вычислительные ресурсы отдельно от хранилища.
  • Если вы используете запросы по малой части от общего объема данных.
  • Если объем данных быстро растет или будет быстро расти.
  • Если сам нужно гибко изменять размер кластера с учетом текущих потребностей.

По мере роста объема данных (до петабайтов) параллельно растет и объем принимаемых в Amazon Redshift данных. Возможно, вам уже нужен более экономичный способ анализа огромных данных.

Новые инстансы Amazon Redshift RA3 с управляемым хранилищем позволяют выбирать число узлов в зависимости от потребностей в производительности и оплачивать только реально используемый объем управляемого хранилища. Это позволяет вам гибко выбирать размер кластера RA3 в зависимости от объема ежедневно обрабатываемых данных, не повышая затраты на хранилище. Инстансы RA3 основаны на AWS Nitro System, используют высокопрозиводительные диски SSD для данных горячего уровня и Amazon S3 для данных холодного уровня, что позволяет получить простое в использовании экономичное хранилище с огромной производительностью для запросов.

Amazon Redshift Spatial предоставляет возможности аналитики на основе местоположения для глубокого анализа ваших данных. Он без проблем интегрирует пространственные и деловые данные, позволяя выполнять по ним аналитику и принимать решения. Amazon Redshift получил в ноябре 2019 года встроенную поддержку обработки пространственных данных, для которой применяются полиморфный тип данных GEOMETRY и несколько важнейших пространственных функций SQL. Теперь мы поддерживаем тип данных GEOGRAPHY, а библиотека пространственных функций SQL выросла в размере до 80 функций. Мы поддерживаем все самые распространенные пространственные типы данных и стандарты, в том числе Shapefiles, GeoJSON, WKT, WKB, eWKT и eWKB. Подробную информацию вы найдете на странице документации или в учебном пособии по пространственным вычислениям в Amazon Redshift.

Сервис Amazon Athena и бессерверный сервис Amazon Redshift решают разные задачи и предназначены для разных сценариев, хотя являются бессерверными и подходят для пользователей SQL.

Благодаря архитектуре массово-параллельной обработки (MPP), которая отделяет ресурсы хранилища от вычислительных ресурсов, и возможностям автоматической оптимизации на основе машинного обучения, хранилище данных, такое как Amazon Redshift, независимо от того, является ли оно серверным или выделенным, – это отличный выбор для клиентов, которым нужно наилучшее соотношение цены и производительности в любых масштабах для комплексных аналитических рабочих нагрузок, в том числе для бизнес-аналитики. Клиенты могут использовать Amazon Redshift как центральный компонент своей архитектуры данных с тесной интеграцией, чтобы получать доступ к данным на месте, либо получать или перемещать их в хранилище данных для высокопроизводительной аналитики, делая это без труда благодаря отсутствию необходимости извлекать, преобразовывать и загружать данные и применению методов, не требующих написания кода. Клиенты могут обращаться к данным, которые хранятся в Amazon S3, операционных базах данных, например Aurora и Amazon RDS, сторонних хранилищах данных за счет интеграции с Обменом данными AWS, а также комбинировать их с данными, которые находятся в хранилище данных Amazon Redshift для аналитики. Они могут легко приступить к использованию хранилищ данных и тренировать модели машинного обучения с использованием всех этих данных.

Amazon Athena хорошо подходит для интерактивной аналитики и исследования данных в вашем озере данных или в любом другом источнике данных с использованием расширяемой сети коннекторов (включает в себя более 30 готовых коннекторов для приложений и локальных или других облачных аналитических систем) без необходимости заботиться о получении или обработке данных. Сервис Amazon Athena создан на основе движков и платформ с открытым исходным кодом, таких как Spark, Presto и Apache Iceberg, что дает клиентам гибкость, так как они могут использовать либо Python, либо SQL, либо работать над открытыми форматами данных. Если клиентам требуется интерактивная аналитика на основе платформ и форматов данных с открытым исходным кодом, то Amazon Athena – это отличная стартовая точка.

Конфигурация Serverless

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

Всего несколько действий в Консоли управления AWS позволяют выбрать действие «настройка Amazon Redshift Serverless» и немедленно начать обработку запросов. Вы получите заранее подготовленные примеры наборов данных, например с данными о погоде, о переписи населения и с данными для сравнительного тестирования производительности, а также примеры запросов для немедленного получения аналитических данных. Вы можете создавать базы данных, схемы, таблицы, а также загружать данные из общих хранилищ данных Amazon S3 и Amazon Redshift или восстанавливать состояние из уже существующего снимка состояние подготовленного кластера Redshift. Вы также можете создавать прямые запросы к данным в озере данных Amazon S3, используя Parquet, ORC и другие открытые форматы, или обращаться к данным в операционных базах данных Amazon Aurora, Amazon RDS PostgreSQL и MySQL. См. «Руководство по началу работы».

Если у вас нет опыта управления хранилищем данных, можно не изучать особенности установки, настройки, администрирования кластеров или тонкой настройки хранилища данных. Вместо этого сразу займитесь получением важных аналитических выводов по вашим данным или улучшением характеристик основного бизнеса на основе этих данных. Вы оплачиваете только то, что реально используете, сохраняя контроль над расходами. Вы сохраняете все преимущества непревзойденной производительности Amazon Redshift, богатых возможностей SQL, беспроблемной интеграции с озерами данных и операционными хранилищами данных, и даже встроенных возможностей прогнозной аналитики и совместного использования данных. Если вам потребуется тонкая настройка работы хранилища данных, вы можете самостоятельно распределить кластеры Redshift.

Вы можете сохранить все богатые аналитические возможности Amazon Redshift, такие как сложные объединения, прямые запросы к данным в озере данных Amazon S3 и в операционных базах данных, материализованные представления, хранимые процедуры, поддержка частично структурированных данных и машинное обучение, а также высокую производительность в большом масштабе. Все связанные сервисы, с которыми интегрируется Amazon Redshift (такие как Amazon Kinesis, AWS Lambda, Amazon QuickSight, Amazon SageMaker, Amazon EMR, AWS Lake Formation и AWS Glue), продолжат работать с Amazon Redshift Serverless.

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

Получение и загрузка данных

В Amazon Redshift можно загрузить данные из целого ряда источников, в том числе из Amazon S3, Amazon RDSAmazon DynamoDB, Amazon EMR, AWS Glue, Контейнер данных AWS, а также с любого хоста Amazon EC2 или локального хоста, если они поддерживают SSH‑подключение. Amazon Redshift параллельно загружает данные на каждый из вычислительных узлов, чтобы обеспечить максимальную скорость загрузки данных в кластер хранилища. Клиенты могут подключиться к Amazon Redshift с помощью ODBC или JDBC и использовать SQL‑команды INSERT для вставки данных. Обратите внимание: этот способ медленнее, чем загрузка из хранилища S3 или DynamoDB, так как последняя выполняется параллельно на каждый из вычислительных узлов, а загрузка с помощью операторов SQL INSERT происходит посредством единственного ведущего узла. Подробнее о загрузке данных в Amazon Redshift см. в Руководстве по началу работы.

Автоматическое копирование Redshift предоставляет возможность автоматизировать инструкции копирования, отслеживая папки Amazon S3 и получая новые файлы без участия клиента. Без автоматизации копирования инструкция копирования сразу не начинает регистрировать процесс получения файлов для существующих файлов. Автоматическое копирование расширяет существующую команду копирования и позволяет: 1) автоматизировать процесс получения за счет отслеживания указанных путей Amazon S3 на предмет появления новых файлов; 2) повторно использовать конфигурации копирования, уменьшая необходимость в создании и запуске новых инструкций копирования при повторяющихся задачах получения; 3) отслеживать загруженные файлы, чтобы избежать дублирования данных.

Для начала работы клиентам нужна папка Amazon S3, доступ к которой можно получить с помощью адреса кластера или бессерверного адреса с использованием связанных ролей IAM. Также нужно создать таблицу Redshift для использования в качестве цели. Когда путь Amazon S3 и таблица Redshift будут готовы, клиенты смогут создать задание копирования с помощью команды копирования. После создания задания копирования Redshift «за кулисами» запускает отслеживание определенного пути Amazon S3 и инициирует выполнение пользовательских инструкций копирования для автоматического копирования новых файлов в целевую таблицу.

Основные примеры использования таковы: 1) клиенты используют Amazon EMR и AWS Glue для запуска заданий Apache Spark, которые обращаются к данным и загружают их в Amazon Redshift в конвейерах получения и преобразования данных (пакетных и потоковых); 2) клиенты используют Amazon SageMaker для машинного обучения с применением Apache Spark и должны получать доступ к данным, хранящимся в Amazon Redshift, для последующего инжиниринга и трансформации; 3) клиенты Amazon Athena используют Apache Spark для интерактивного анализа данных в Amazon Redshift.

Baikal предоставляет следующие преимущества:

  • Простота начала работы и запуска приложений Apache Spark на данных в Amazon Redshift без необходимости вручную настраивать и поддерживать несертифицированные версии Spark
  • Удобство использования Apache Spark в различных сервисах AWS, таких как Amazon EMR, AWS Glue, Amazon Athena и Amazon SageMaker, с Amazon Redshift при минимальной настройке
  • Повышенная производительность при запуске приложений Apache Spark в Amazon Redshift

Amazon Aurora без извлечения, преобразования и загрузки данных в Amazon Redshift позволяет клиентам Amazon Aurora и Amazon Redshift проводить анализ и машинное обучение в режиме, приближенном к реальному времени, с использованием петабайтов данных. Это полностью управляемое решение, которое делает транзакционные данные из Amazon Aurora доступными в Amazon Redshift за считанные секунды после их записи. С помощью Amazon Aurora без извлечения, преобразования и загрузки данных в Amazon Redshift клиенты просто выбирают таблицы Amazon Aurora, содержащие данные, которые они хотят проанализировать с использованием Amazon Redshift, и эта возможность без проблем реплицирует схему и данные в Amazon Redshift. Благодаря этому клиентам все меньше требуется самостоятельно создавать сложные конвейеры данных и управлять ими. Вместо этого они могут уделить все внимание улучшению приложений. С помощью Amazon Aurora без извлечения, преобразования и загрузки данных в Amazon Redshift клиенты могут реплицировать данные из нескольких кластеров баз данных Amazon Aurora в один и тот же инстанс Amazon Redshift, чтобы получать комплексную аналитическую информацию в нескольких приложениях и при этом консолидировать свои основные аналитические ресурсы, достигая значительного снижения затрат и повышения эксплуатационной эффективности. С помощью Amazon Aurora без извлечения, преобразования и загрузки данных в Amazon Redshift клиенты могут также использовать базовые возможности аналитики и машинного обучения Amazon Redshift, такие как материализованные представления, совместное использование данных и федеративный доступ к нескольким хранилищам и озерам данных. Это позволяет клиентам сочетать возможности работы в режиме, приближенному к реальному времени, с базовой аналитикой для эффективного формирования чувствительной ко времени аналитической информации, на которой основываются экономические решения. Кроме того, клиенты используют Amazon Aurora для транзакций, а Amazon Redshift – для аналитики, поэтому вычислительные ресурсы не используются совместно, что обеспечивает производительность и стабильность решения.

Интеграция Amazon Aurora с Amazon Redshift с нулевым использованием ETL обеспечивает беспрепятственную интеграцию двух сервисов для транзакционной аналитики.

Потоковые данные отличаются от традиционных таблиц баз данных тем, что когда вы отправляете запрос к потоку, вы захватываете эволюцию отношения, меняющегося со временем. С другой стороны, таблицы захватывают моментальный снимок этого меняющегося со временем отношения. Клиенты Amazon Redshift знакомы с работой с обычными таблицами и проводят последующую обработку (то есть преобразование) данных с помощью обычной пакетной модели, например ELT. Мы предоставляем способ использования материализованных представлений (MV) Redshift, чтобы клиенты могли с легкостью материализовать представление потока в определенном моменте времени, накопленное вплоть до момента выполнения запроса, насколько возможно быстро, чтобы обеспечить поддержку рабочих потоков ELT.

Совместное использование данных

Ниже приведены основные примеры использования.

  • Центральный кластер ETL предоставляет общий доступ к данным в кластерах бизнес-аналитики, чтобы обеспечить изоляцию рабочих нагрузок чтения и возможность взимать с них плату за доступ.
  • Поставщик данных предоставляет общий доступ к данным внешним потребителям.
  • Единые наборы данных (о клиентах, продуктах и так далее) совместно используются несколькими бизнес-подразделениями и участвуют в подготовке аналитики и исследованиях данных в пределах всей организации.
  • Децентрализация управления хранилищем данных для упрощения процессов.
  • Совместное использование данных в средах разработки, тестирования и в рабочей среде.
  • Доступ к данным Redshift из другого аналитического сервиса AWS.

С помощью запросов между базами данных вы можете легко получать и объединять данные из любой базы данных Redshift, к которой имеете доступ, независимо от того, к какой именно базе данных вы подключены. Вы можете собирать данные из локальных баз в кластере и общих наборов данных, доступных через удаленные кластеры. Запросы между базами данных позволяют гибко организовывать данные в виде отдельных баз данных для поддержки многопользовательских систем.

Обмен данными AWS упрощает для всех клиентов AWS безопасный обмен данными и использование данных сторонних организаций на платформе AWS. Аналитики данных, специалисты по работе с данными, менеджеры продуктов, менеджеры портфелей, количественные аналитики, специалисты по клиническим исследованиям и разработчики из любой отрасли всегда ищут возможности применить новые данные для анализа, обучения моделей машинного обучения и принятия решений на основе данных. Но пока не существует единого расположения для поиска данных от разных поставщиков, а также единых стандартов предоставления таких данных. Это означает, что всем приходится мириться с разрозненным набором физических носителей, учетных данных для доступа к FTP и обращений к узкоспециализированным API. С другой стороны, многие организации готовы предоставить доступ к своим данным для исследований и коммерческих целей, но не могут себе позволить создание и поддержку систем и технологий предоставления данных, управления правами и платежами. Все это дополнительно затрудняет получение ценной информации.

Масштабируемость и параллельное выполнение

Бессерверный сервис Amazon Redshift автоматически предоставляет ресурсы хранилища данных и проводит интеллектуальное масштабирование базовых ресурсов. Бессерверный сервис Amazon Redshift регулирует объем ресурсов за считанные секунды, чтобы обеспечить стабильно высокую производительность и упростить операции даже для самых требовательных и изменчивых рабочих нагрузок. С возможностью параллельного масштабирования можно обслуживать неограниченное количество одновременно работающих пользователей и выполняемых запросов, не теряя производительности при действиях с запросами. При включенной возможности параллельного масштабирования Amazon Redshift автоматически увеличивает объем ресурсов кластера, когда увеличивается очередь запросов.

Чтобы повысить производительность запросов или скорость отклика процессора, памяти или операций ввода‑вывода при ручном масштабировании, можно увеличить количество узлов в кластере хранилища данных. Для этого используйте возможность эластичного изменения размера кластера в Консоли управления AWS или API ModifyCluster. Изменения параметров кластера вступают в действие мгновенно. Метрики использования вычислительных ресурсов, хранилища и трафика чтения и записи данных в кластере хранилища Redshift доступны для бесплатного просмотра посредством Консоли управления AWS или Amazon CloudWatch API. Можно также создать собственные метрики с помощью возможностей Amazon CloudWatch по созданию пользовательских метрик.

С помощью Amazon Redshift Spectrum можно запускать несколько кластеров Redshift, имеющих доступ к одним и тем же данным в Amazon S3. Можно применять разные кластеры для разных примеров использования. Например, один кластер можно использовать для стандартных отчетов, а другой – для исследовательских запросов. Отдел маркетинга может использовать собственные кластеры, которые отличаются от кластеров операционной группы. Redshift Spectrum автоматически распределяет выполнение запроса нескольким исполнителям Redshift Spectrum из общего пула ресурсов для считывания и обработки данных из Amazon S3 и возвращает результаты в кластер Redshift для дальнейшей обработки.

Это зависит от ряда факторов. При использовании функции параллельного масштабирования кластер может выполнять операции считывания и записи в полном объеме. При использовании функции эластичного изменения размера кластер становится недоступным в течение 4–8 минут (времени, необходимом для изменения размера). При использовании функции эластичности управляемого хранилища Redshift RA3 кластер остается полностью доступным, а данные автоматически перемещаются между управляемым хранилищем и вычислительными узлами.

Эластичное изменение размера позволяет управлять производительностью отдельного кластера Redshift, в считаные минуты добавляя или удаляя узлы. Например, повышение ETL‑нагрузок в определенные часы в конце дня или месяца, связанные с подготовкой отчетов, может потребовать выделения дополнительных ресурсов Amazon Redshift для своевременного выполнение работы. В отличие от эластичного изменения размера, возможность параллельного масштабирования выделяет дополнительные кластерные ресурсы для увеличения общего количества параллельно выполняемых операций.

Нет. Кластеры параллельного масштабирования представляют собой большой пул масштабируемых ресурсов Amazon Redshift, к которым клиенты не имеют прямого доступа.

Безопасность

Amazon Redshift поддерживает лучшую в отрасли систему безопасности с интеграцией управления идентификацией и федерацией для единого входа (SSO), многофакторной аутентификацией, контролем доступа на уровне столбцов, контролем доступа на основе ролей и Виртуальным частным облаком Amazon (Amazon VPC). При использовании Amazon Redshift ваши данные зашифрованы как при передаче, так и при хранении. Все возможности Amazon Redshift по обеспечению безопасности предлагаются в готовом виде без дополнительной платы для удовлетворения самых строгих требований безопасности, конфиденциальности и соответствию нормативным требованиям. Ваше преимущество в том, что AWS соответствует большему количеству стандартов и имеет больше сертификатов соответствия, чем какой-либо другой поставщик, в том числе ISO 27001, SOC, HIPAA/HITECH и FedRAMP.

Да, Amazon Redshift поддерживает управление доступом на основе ролей. Управление доступом на уровне строк позволяет назначать пользователю одну или несколько ролей, а также назначать системные и объектные разрешения по ролям. Можно использовать предопределенные системные роли: пользователь root, администратор баз данных, оператор и администраторы безопасности. Или можно создать свои собственные роли.

Определяемые пользователем функции (UDF) в AWS Lambda позволяют использовать функцию AWS Lambda в качестве определяемой пользователем функции в Amazon Redshift и вызывать ее в запросах Redshift SQL. Эта возможность позволяет создавать собственные расширения для SQL-запроса, чтобы обеспечить более тесную интеграцию с другими службами и продуктами сторонних производителей. Вы можете создавать UDF Lambda для включения внешней токенизации, маскировки данных, сохранения и удаления идентификационных данных за счет интеграции с такими поставщиками, как Protegrity, а также для организации или снятия защиты конфиденциальных данных на основе разрешений и групп пользователя в ходе обработки запроса.

С помощью динамической маскировки данных клиенты с легкостью могут защитить свои конфиденциальные данные и обеспечить точное управление доступом, управляя политиками маскировки данных. Предположим, у вас есть многопользовательские приложения, и в этих приложениях пользователи и объекты имеют конфиденциальные данные, которые нельзя разглашать всем пользователям. У вас есть требования по предоставлению различных уровней детализации безопасности, которые будут назначаться для различных групп пользователей. Динамическая маскировка данных Redshift может настраиваться и предоставляет пользователям возможность определить непротиворечивые и необратимые замаскированные значения данных с сохранением формата. Когда возможность становится общедоступной, вы сразу же начинаете ее использовать. Администраторы безопасности могут создать и применить политики с помощью всего лишь нескольких команд.

Да. Клиенты, которые хотят использовать своих поставщиков корпоративных удостоверений, таких как Microsoft Azure Active Directory, службы федерации Active Directory, Okta, Ping Federate или других поставщиков удостоверений, совместимых с SAML, могут настроить Amazon Redshift для обеспечения единого входа. В кластер Amazon Redshift можно войти, используя удостоверения Microsoft Azure Active Directory (AD). Это позволяет войти в Redshift без дублирования удостоверений Azure Active Directory в Redshift.

Да. Многофакторную аутентификацию (MFA) можно использовать для дополнительной безопасности при аутентификации в кластере Amazon Redshift.

Надежность и доступность

Amazon Redshift автоматически обнаружит и заменит отказавший узел кластера хранилища данных. В кластерах Dense Compute (DC) и Dense Storage (DS2) данные хранятся прямо на вычислительных узлах, чтобы гарантировать высокую надежность данных. При замене такого узла все данные обновляются из зеркальной копии, сохраненной на другом узле. Кластеры RA3 и бессерверный вариант Redshift такая проблема вовсе не затрагивает, так как все данные хранятся в Amazon S3 и попадают на локальный диск только в качестве элементов кэша. Кластер хранилища станет доступен для запросов и обновлений, как только новый узел будет выделен и добавлен к базе данных. Amazon Redshift сразу же обеспечит его доступность и в первую очередь направит на него из хранилища Amazon S3 наиболее часто запрашиваемые данные, что позволит быстро возобновить выполнение запросов. Кластеры, состоящие из одного узла, не поддерживают репликацию данных. Для них в случае сбоя накопителя требуется восстановление кластера из снимка состояния в хранилище S3. В кластерах рабочей среды рекомендуется использовать не менее двух узлов.

Если зона доступности вашего кластера хранилища данных Amazon Redshift развернута в одной зоне доступности и становится недоступной, Amazon Redshift автоматически перемещает кластер в другую зону доступности (AZ) AWS без потери данных и изменения приложений. Чтобы пользоваться этой функцией, необходимо разрешить перемещение данных в настройках кластера.

В отличие от развертывания в одной зоне доступности, теперь клиенты могут повысить доступность Redshift, пользуясь хранилищем данных в нескольких зонах доступности. Развертывание в нескольких зонах доступности позволяет вам использовать свое хранилище данных в нескольких зонах доступности AWS (AZ) одновременно и продолжать работать в случае непредвиденной аварии. Для обеспечения непрерывности бизнеса не требуется изменять приложения, поскольку управление развертыванием в нескольких зонах доступности осуществляется с использованием одного адреса. Развертывания в нескольких зонах доступности сокращают время восстановления, гарантируя автоматическое восстановление ресурсов и предназначены для клиентов с важнейшими для бизнеса аналитическими приложениями, которым требуются наивысшие уровни доступности и устойчивость к сбоям зон доступности. Также это позволяет клиентам реализовать решение, которое в большей степени соответствует рекомендациям принципа «Надежность» Платформы AWS Well-Architected. Подробнее о развертывании Amazon Redshift в нескольких зонах доступности здесь.

RPO – это аббревиатура от Recovery Point Objective (целевая точка восстановления). Этот термин означает гарантию актуальности данных в случае аварии. RPO – это максимальное приемлемое время с момента создания предыдущей точки восстановления данных. Эти термины определяют то, что считается приемлемой потерей данных с момента создания предыдущей точки восстановления до прерывания обслуживания. Развертывание Redshift в нескольких зонах доступности поддерживает RPO = 0. Это означает, что актуальность данных в случае сбоя гарантирована. Наши предпусковые тесты показали, что при развертывании Amazon Redshift в нескольких зонах доступности время RTO составляет до 60 секунд или меньше в маловероятном случае сбоя в зоне доступности.

Возможность Redshift Relocation по умолчанию включена на всех новых кластерах и бессерверных адресах RA3, что позволяет перезапустить хранилище данных в другой зоне доступности в случае крупномасштабного простоя без потери данных и дополнительных затрат. За использование Relocate плата не взимается, но существуют ограничения. Они заключаются в том, что это лучший подход к обеспечению доступности ресурсов в восстанавливаемой зоне доступности, а на RTO могут влиять и другие проблемы, относящиеся к запуску нового кластера. Это может привести к тому, что время восстановления составит от 10 до 60 минут. Redshift в нескольких зонах доступности отвечает требованиям высокой доступности, обеспечивая RTO в десятые доли секунды и гарантируя непрерывную работу, поскольку не подвержен влиянию ограничения ресурсов или других потенциальных проблем создания нового кластера.

Запросы и аналитика

Да. В Amazon Redshift используется стандартный язык SQL, а доступ к нему осуществляется посредством стандартных драйверов JDBC и ODBC. Драйверы JDBC и ODBC для Amazon Redshift можно загрузить на вкладке подключения клиента в консоли Redshift. Мы проверили интеграцию сервиса с широко распространенными решениями бизнес‑аналитики и ETL. Для многих из них доступны бесплатные пробные версии, с помощью которых можно приступить к загрузке и анализу данных. На Торговой площадке AWS также можно найти решения для работы с Amazon Redshift, развертывание и настройка которых выполняется за считанные минуты.

Amazon Redshift Spectrum поддерживает все клиентские инструменты Amazon Redshift. Клиентские инструменты могут продолжать подключаться к адресу кластера Amazon Redshift с использованием соединений ODBC или JDBC. Никаких изменений не требуется.

Для доступа к таблицам в Redshift Spectrum используется тот же синтаксис и предоставляются такие же возможности запросов, как для таблиц в локальном хранилище кластера Redshift. Ссылки на внешние таблицы создаются с помощью имени схемы, определенного командой CREATE EXTERNAL SCHEMA, в которой они были зарегистрированы.

В настоящее время Amazon Redshift Spectrum поддерживает множество форматов данных с открытым исходным кодом, включая Avro, CSV, Grok, Amazon Ion, JSON, ORC, Parquet, RCFile, RegexSerDe, Sequence, Text и TSV. <br>В настоящее время Amazon Redshift Spectrum поддерживает сжатие Gzip и Snappy.

Как и в случае с локальными таблицами, чтобы выбрать нужную таблицу, можно использовать имя схемы, введя параметр schema_name.table_name в запросе.

Да. Команда CREATE EXTERNAL SCHEMA поддерживает метаданные Hive Metastore. В настоящее время для Hive Metastore не поддерживается DDL.

Чтобы получить эту информацию, можно сделать запрос по системной таблице SVV_EXTERNAL_TABLES.

Да, функция Amazon Redshift ML позволяет пользователям SQL легко создавать, обучать и развертывать модели машинного обучения (ML) с помощью распространенных команд SQL. Amazon Redshift ML позволяет обрабатывать свои данные в Amazon Redshift с помощью полностью управляемой службы машинного обучения Amazon SageMaker. Amazon Redshift поддерживает неконтролируемое обучение (методом k-средних) и контролируемое обучение (по алгоритмам Autopilot, XGBoost и MLP). Вы также можете использовать языковые сервисы AWS на основе искусственного интеллекта для перевода, редактирования и анализа текстовых полей в SQL-запросах с помощью предварительно созданных функций Lambda UDF – см. публикацию в блоге.

Amazon Redshift предоставляет API данных, который позволяет без проблем получать доступ к данным из Amazon Redshift с помощью всех типов традиционных, оптимизированных для облака и контейнерных бессерверных приложений на основе веб-сервисов и управляемых событиями приложений. API данных упрощает доступ к Amazon Redshift, и вам не нужно настраивать драйверы и подключения к базе данных. Вместо этого можно запускать команды SQL в кластере Amazon Redshift, просто вызывая защищенный адрес API, предоставляемый API данных. API данных обеспечивает управление подключениями к базе данных и буферизацию данных. API данных является асинхронным, поэтому необходимые результаты можно получить позже. Результаты обработки запроса хранятся 24 часа.

API данных поддерживает как учетные данные IAM, так и секретный ключ от AWS Secrets Manager. API данных поддерживает учетные данные AWS Identity and Access Management (IAM), поэтому вы можете пользоваться услугами поставщиков учетных данных, например Okta или Azure Active Directory, а также учетными данными баз данных, хранящимися в Secrets Manager, без передачи таких данных через вызовы API.

Да, вы можете использовать API данных через интерфейс командной строки AWS, используя параметр aws redshift-data.

Вы можете использовать API данных с другими сервисами, например AWS Lambda, AWS Cloud9, AWS AppSync и Amazon EventBridge.

Нет, отдельная плата за использование API данных не взимается.

Интеграции с нулевым использованием ETL

Интеграцию Aurora с нулевым использованием ETL с Amazon Redshift следует использовать при необходимости доступа к транзакционным данным, близким к реальному времени. Эта интеграция позволяет использовать преимущества машинного обучения Amazon Redshift с помощью простых команд SQL.

Интеграция Aurora MySQL с нулевым использованием ETL с Amazon Redshift доступна в версии Aurora, совместимой с MySQL 3.05 (совместимой с MySQL 8.0.32) и более новых версий в следующих регионах: Восток США (Огайо), Восток США (Северная Вирджиния), Запад США (Орегон), Азиатско-Тихоокеанский регион (Сингапур), Азиатско-Тихоокеанский регион (Сидней), Азиатско-Тихоокеанский регион (Токио), Европа (Франкфурт), Европа (Ирландия) и Европа (Стокгольм). Интеграция Aurora с нулевым использованием ETL с Amazon Redshift доступна в версии Aurora, совместимой с PostgreSQL, для Aurora PostgreSQL 15.4 в регионе Восток США (Огайо).

Интеграция Aurora нулевым использованием ETL с Amazon Redshift избавляет вас от необходимости создавать и обслуживать сложные конвейеры данных. Можно консолидировать данные из одного или нескольких кластеров баз данных Aurora в один кластер баз данных Amazon Redshift и выполнять аналитику и машинное обучение в режиме, близком к реальному времени, с помощью Amazon Redshift на петабайтах транзакционных данных из Amazon Aurora.

Интеграция Aurora с нулевым использованием ETL с Amazon Redshift совместима с бессерверной конфигурацией Amazon Redshift и бессерверной конфигурацией Amazon Aurora, версия 2. При использовании бессерверной конфигурации Aurora и бессерверного Amazon Redshift, версия 2, можно генерировать аналитику транзакционных данных в режиме, близком к реальному времени, без необходимости управлять инфраструктурой конвейеров данных.

Для начала можно создать интеграцию с нулевым использованием ETL с помощью консоли Amazon RDS, указав Aurora как источник, а Amazon Redshift – как место назначения. После создания интеграции база данных Aurora будет реплицирована в Amazon Redshift, и вы сможете начать запрашивать данные после завершения первоначального заполнения. Дополнительные сведения см. в руководстве по началу работы с интеграцией Aurora с нулевым использованием ETL с Amazon Redshift.

Интеграция между Aurora и Amazon Redshift с нулевым использованием ETL предусматривает атомарную репликацию транзакций для обеспечения согласованности данных между исходной базой данных в Aurora и целевым кластером в Amazon Redshift.
Вот несколько основных аспектов, касающихся атомарности транзакций при такой интеграции:

  • В Amazon Redshift реплицируются только совершенные транзакции в Aurora. Несовершенные или отмененные транзакции не переносятся.
  • Интеграция использует двухэтапный процесс передачи для атомарного применения каждой транзакции к Amazon Redshift. Применяются либо все изменения данных в транзакции, либо не применяется ни одно из изменений, если есть ошибка.
  • Между исходной и целевой базой данных обеспечивается согласованность транзакций. После репликации данные конкретной транзакции будут согласованы как в Aurora, так и в Amazon Redshift.
  • Изменения схемы с помощью DDL или DML также применяются атомарно для поддержания целостности.
  • Атомарное применение транзакций гарантирует отсутствие частичных транзакций или противоречивых состояний данных между базами данных.
 

Интеграция между Aurora и Amazon Redshift с нулевым использованием ETL предусматривает полную согласованность транзакций между исходной базой данных в Aurora и целевым кластером в Amazon Redshift.

Вот несколько основных аспектов, касающихся внесения изменений в схему:

  • Такие операторы DDL, как CREATE TABLE, ALTER TABLE, DROP TABLE и т. д., автоматически реплицируются из Aurora в Amazon Redshift.
  • В ходе интеграции выполняются необходимые проверки и корректировки таблиц Amazon Redshift на предмет изменений в реплицированных схемах. Например, при добавлении столбца в Aurora такой столбец добавится и в Amazon Redshift.
  • Репликация и синхронизация схем автоматически происходят в режиме реального времени с минимальной задержкой между исходной и целевой базами данных.
  • Согласованность схем сохраняется даже тогда, когда изменения в DML происходят параллельно с изменениями в DDL.

Вы можете создать материализованные представления в локальной базе данных Amazon Redshift для преобразования данных, реплицированных с помощью интеграции с нулевым использованием ETL. Подключитесь к локальной базе данных и используйте запросы между базами данных для доступа к целевым базам данных. Можно использовать полные имена объектов, состоящие из трех частей (название-целевой-базы.название-схемы.название-таблицы), либо создать внешнюю схему, ссылающуюся на целевую базу данных и пару схем, и использовать обозначение, состоящее из двух частей (название-внешней-схемы.название-таблицы).

Интеграция с нулевым использованием ETL и постоянная обработка изменений данных предлагается без дополнительной оплаты. Вы платите за существующие ресурсы Amazon RDS и Amazon Redshift, используемые для создания и обработки данных об изменениях, созданных в рамках интеграции с нулевым использованием ETL. Эти ресурсы могут включать:

  • Дополнительные операции ввода-вывода и хранилище, используемые за счет включения расширенного бинарного журнала
  • Затраты на экспорт снимков состояния при первоначальном экспорте данных для заполнения баз данных Amazon Redshift
  • Дополнительное хранилище Amazon Redshift для хранения реплицированных данных
  • Затраты на передачу данных между зонами доступности при перемещении данных от источника к целевому объекту

Дополнительную информацию см. на странице цен на Aurora.

Резервное копирование и восстановление

Кластеры Amazon Redshift RA3 и сервис Amazon Redshift Serverless используют управляемое хранилище Redshift, в котором всегда доступна самая актуальная копия данных. Кластеры DS2 и DC2 отражают данные кластера, чтобы поддерживать наиболее актуальную копию данных на случай сбоя. Резервные копии автоматически создаются на всех типов кластеров Redshift и сохраняются в течение 24 часов, а для бессерверного варианта предоставляются точки восстановления за последние 24 часа.

Вы также можете создавать дополнительные резервные копии, которые будут сохраняться неограниченно долго. Резервные копии можно создавать в любой момент, а также преобразовывать автоматически созданные резервные копии Amazon Redshift или точки восстановления Amazon Redshift Serverless в пользовательские резервные копии для длительного хранения.

Сервис Amazon Redshift может также асинхронно копировать снимки состояния или точки восстановления в хранилище Amazon S3 другого региона для аварийного восстановления.

Объем бесплатного хранилища резервных копий в кластере DS2 или DC2 ограничен и равен общему объему хранилища узлов кластера. Такое бесплатное хранилище предоставляется только для активных кластеров.

Например, если общий объем хранилища данных составляет 8 ТБ, бесплатно вам будет предоставлено не более 8 ТБ для хранения резервных копий. Чтобы продлить срок хранения резервных копий, воспользуйтесь Консолью управления AWS или Amazon Redshift API. Подробные сведения об автоматическом создании снимков состояния содержатся в Руководстве по управлению Amazon Redshift.

Amazon Redshift выполняет резервное копирование только тех данных, которые были изменены, поэтому большая часть снимков состояния занимает небольшой объем в бесплатном хранилище резервных копий. Когда требуется восстановить резервную копию, можно получить доступ ко всем автоматически созданным резервным копиям за соответствующий период хранения. Когда вы выберете резервную копию для восстановления, сервис выделит новый кластер хранилища данных и восстановит данные в него.

Для управления сроками хранения автоматизированных резервных копий измените параметр RetentionPeriod через Консоль управления AWS или ModifyCluster API. Если вы хотите полностью отключить автоматическое резервное копирование, сделайте период хранения равным нулю (не рекомендуется).

При удалении кластера хранилища данных можно создать снимок его состояния на момент удаления. Это позволит при необходимости восстановить удаленный кластер позднее. Все снимки состояния кластера хранилища данных, созданные ранее вручную, будут сохранены. Плата за их хранение до момента удаления пользователем будет начисляться в соответствии со стандартными тарифами Amazon S3.

Мониторинг и обслуживание

Метрики использования вычислительных ресурсов, хранилища и трафика чтения и записи данных в кластере хранилища данных Amazon Redshift доступны для бесплатного просмотра посредством Консоли управления AWS или Amazon CloudWatch API. Можно также создать дополнительные собственные метрики с помощью возможностей Amazon CloudWatch по созданию пользовательских метрик. В Консоли управления AWS есть панель управления мониторингом, с помощью которой можно отслеживать работоспособность и производительность всех кластеров. Информация о производительности запросов и кластеров Amazon Redshift также доступна через Консоль управления AWS. Эта информация позволяет увидеть, какие пользователи и запросы потребляют наибольшее количество системных ресурсов, и определить причины снижения производительности, просматривая планы запросов и статистику их выполнения. Кроме того, с помощью этой панели можно контролировать использование ресурсов каждого из вычислительных узлов с целью эффективного распределения данных и запросов по всем узлам.

Amazon Redshift периодически осуществляет техническое обслуживание, во время которого устанавливает в кластере пользователя исправления, дополнения и новые возможности. Изменить запланированный интервал обслуживания можно путем изменения кластера программным способом либо с помощью консоли Redshift. Во время интервала обслуживания кластер Amazon Redshift недоступен для работы в нормальном режиме. Дополнительные сведения об окнах и графиках обслуживания по регионам см. в разделе Окна обслуживания Руководства по управлению Amazon Redshift.