Возможности Amazon ElastiCache

Преимущества Amazon ElastiCache

Amazon ElastiCache – это полностью управляемый сервис, совместимый с Redis OSS и Memcached и обеспечивающий оптимизированную по затратам производительность в режиме реального времени с высокой доступностью (до 99,99 %). Сервис ElastiCache идеально подходит для таких высокопроизводительных примеров использования, как кэширование данных, веб-страницы, мобильные, финансовые, игровые и рекламные приложения, приложения для здравоохранения, Интернет вещей, потоковая передача мультимедиа, хранилища сеансов, таблицы лидеров, машинное обучение и приложения на базе микросервисов. Ознакомьтесь с примерами использования Amazon ElastiCache, чтобы узнать, как ElastiCache может вам помочь.

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

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

С помощью бессерверной конфигурации Amazon ElastiCache можно создать кэш высокой доступности менее чем за минуту без выделения или настройки инфраструктуры. Кэш бессерверной конфигурации ElastiCache можно создать за несколько шагов, указав его имя в Консоли управления AWS, Пакете средств разработки ПО от AWS (AWS SDK) или Интерфейсе командной строки AWS (AWS CLI).

Краткий обзор см. в разделе Знакомство с Бессерверным Amazon ElastiCache.

Бессерверная конфигурация ElastiCache устраняет необходимость в сложном и трудоемком планировании ресурсов за счет постоянного мониторинга использования вычислительных ресурсов, памяти и сети кэша, а также мгновенного вертикального и горизонтального масштабирования в соответствии с потребностями.

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

Простота использования

Благодаря бессерверной конфигурации Elasticache можно просто создать бессерверный кэш менее чем за минуту с помощью консоли, AWS CLI или AWS SDK без необходимости управлять инфраструктурой или выделением ресурсов. Если вы создадите собственный кластер, то для ресурсов будут предварительно заданы подходящие параметры и настройки, а группы параметров кэша вы сможете применить для детального управления и точной настройки среды.

Подробнее о быстром начале работы с ElastiCache см. в нашей документации.

Elasticache – это полностью управляемый сервис. Мы автоматизировали трудоемкие задачи управления, например планирование ресурсов, управление исправлениями, обнаружение сбоев и восстановление, позволяя клиентам сосредоточиться на разработке более эффективных и прибыльных приложений. Вы получаете встроенный доступ к среде базы данных в памяти, что упрощает использование Elasticache с существующими инструментами, а также приложениями OSS Redis и Memcached. Благодаря бессерверной конфигурации Elasticache все незначительные обновления версий, улучшения производительности и исправления безопасности применяются автоматически без необходимости настройки и прерывания работы приложений.

С помощью консоли Amazon Relational Database Service (Amazon RDS) и Amazon Aurora можно создать кластер ElastiCache и подключить его к вашей реляционной базе данных. Это позволяет повысить производительность приложений за счет более быстрого чтения и сократить расходы. Изучите дополнительные сведения о создании и подключении кластера ElastiCache в Amazon RDS и в Aurora.

Метрики Amazon CloudWatch позволяют анализировать ресурсы ElastiCache без дополнительной платы. Консоль можно использовать для просмотра более 40 ключевых эксплуатационных метрик инстансов, включая использование вычислительных ресурсов и памяти, коэффициент попадания в кэш, активные соединения, репликацию и команды. Подробнее о мониторинге кластера кэша см. в нашей документации по мониторингу метрик CloudWatch для ElastiCache.

Сервис Elasticache публикует сообщения о важных событиях. Бессерверные события ElastiCache, включая создание, удаление и обновление конфигурации кэша, отправляются в Amazon EventBridge. При работе с пользовательскими кластерами кэша ElastiCache отправляет события в Простой сервис уведомлений Amazon (Amazon SNS).

Воспользуйтесь преимуществами назначения тегов для ресурсов Elasticache и снимков состояния в целях отслеживания ресурсов и выставления счетов. Для привязки значений расходов к ресурсам и их группам можно использовать инструмент Обозреватель затрат AWS, который позволяет создавать и поддерживать наборы ресурсов на основе общего списка тегов. Подробнее о тегировании ресурсов ElastiCache см. в документации о тегированию ElastiCache.

Сервис ElastiCache обеспечивает встроенную поддержку текстового формата обмена данными, основанного на языке JavaScript (JSON), а также структур данных, включенных в Redis OSS. Вы можете упростить разработку приложений с помощью встроенных команд, созданных и оптимизированных для документов JSON. Сервис ElastiCache поддерживает частичное обновление документов JSON и эффективные возможности поиска и миграции с помощью языка запросов JSONPath. Поддержка JSON доступна при использовании Elasticache (OSS Redis) для Redis версии 6.2 и более новых версий.

Производительность и масштабируемость

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

ElastiCache предлагает Соглашение об уровне обслуживания (SLA) с доступностью 99,99 % при использовании нескольких зон доступности или бессерверной конфигурации. Бессерверная конфигурация ElastiCache автоматически хранит данные с обеспечением избыточности в нескольких зонах доступности, и для этого не нужна дополнительная настройка. При разработке собственного кластера кэша вы можете воспользоваться преимуществами нескольких зон доступности AWS, создав реплики в нескольких зонах для обеспечения высокой доступности и масштабирования операций чтения. В случае потери первичного узла сервис AWS автоматически обнаруживает сбой и вводит в действие реплику чтения, обеспечивая доступность ресурсов без вмешательства со стороны пользователя. Узнайте больше о высокой доступности с использованием групп репликации и о том, как минимизировать время простоя в ElastiCache с помощью нескольких зон доступности.

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

Во время создания собственного кэша автомасштабирование ElastiCache позволяет автоматически увеличивать или уменьшать количество требуемых сегментов или реплик, чтобы поддерживать стабильную и предсказуемую производительность при минимально возможных затратах. ElastiCache использует Автоматическое масштабирование AWS для управления масштабированием и метриками CloudWatch, чтобы определять время для масштабирования.

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

ElastiCache предлагает Соглашение об уровне обслуживания (SLA) с доступностью 99,99 % при использовании нескольких зон доступности или бессерверной конфигурации. Бессерверная конфигурация ElastiCache автоматически хранит данные с обеспечением избыточности в нескольких зонах доступности, и для этого не нужна дополнительная настройка. При разработке собственного кластера кэша вы можете воспользоваться преимуществами нескольких зон доступности AWS, создав реплики в нескольких зонах для обеспечения высокой доступности и масштабирования операций чтения. В случае потери первичного узла сервис AWS автоматически обнаруживает сбой и вводит в действие реплику чтения, обеспечивая доступность ресурсов без вмешательства со стороны пользователя. Узнайте больше о высокой доступности с использованием групп репликации и о том, как минимизировать время простоя в ElastiCache с помощью нескольких зон доступности.

Глобальное хранилище данных в ElastiCache обеспечивает полностью управляемую, быструю, надежную и безопасную репликацию между регионами AWS. Глобальное хранилище данных позволяет записывать данные в кластер Elasticache в одном регионе и считывать их из двух других межрегиональных кластеров репликации, благодаря чему чтение и аварийное восстановление между регионами AWS осуществляются с низкой задержкой. В маловероятном случае снижения производительности во всем регионе один из работоспособных кластеров репликации в другом регионе может быть превращен в основной кластер с полными возможностями чтения и записи. 

ElastiCache постоянно следит за состоянием используемых инстансов. В случае отказа узла или длительного снижения производительности ElastiCache автоматически перезапустит или заменит узел и связанные с ним процессы.

Сервис Elasticache защищает ваши данные с помощью снимков состояния кластеров. Можно настроить автоматическое создание снимков состояния или вручную инициировать формирование резервных копий за несколько действий в консоли или с помощью простых вызовов API. На основе этих снимков состояния или любого снимка состояния OSS Redis, совместимого с RDB и расположенного в Простом сервисе хранения данных Amazon (Amazon S3), можно создать новый основной узел Elasticache для кластера.

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

Безопасность и соответствие требованиям

ElastiCache позволяет запускать ресурсы в Amazon Virtual Private Cloud (Amazon VPC). Облако Amazon VPC можно использовать для изоляции ресурсов ElastiCache, настроив ограниченный диапазон IP‑адресов для узлов и для подключения к другим приложениям внутри того же облака Amazon VPC. Также сервис позволяет настроить параметры брандмауэра, управляющего сетевым доступом к ресурсам. Подробнее о безопасности Amazon VPC и ElastiCache.

ElastiCache поддерживает шифрование при передаче, что позволяет кодировать все данные, пересылаемые между клиентами и сервером ElastiCache, а также в пределах границ сервиса ElastiCache. Сервис Elasticache обеспечивает также возможность шифрования данных в местах хранения, благодаря чему можно кодировать данные об использовании диска и резервные копии в Amazon S3. Подробнее о шифровании и безопасности данных в ElastiCache. Бессерверная конфигурация ElastiCache всегда шифрует данные в местах хранения и при передаче с использованием протокола TLS. 

Кроме того, ElastiCache поддерживает интеграцию с Сервисом управления ключами AWS (AWS KMS), что позволяет использовать собственный ключ AWS KMS для шифрования. Также можно использовать команду OSS Redis AUTH для организации дополнительного уровня аутентификации. Пользователям не приходится управлять жизненным циклом сертификатов, так как ElastiCache управляет их выпуском, обновлением и окончанием срока действия автоматически.

Elasticache поддерживает аутентификацию с помощью удостоверений сервиса управления идентификацией и доступом AWS (AWS IAM), команды OSS Redis AUTH и управления доступом на основе ролей (RBAC).

С помощью аутентификации IAM можно применять удостоверения AWS IAM для авторизации подключения к ElastiCache, что позволяет укрепить модель безопасности и упростить многие административные задачи по защите. Токены аутентификации или пароли Redis OSS позволяют этому сервису запрашивать пароль, прежде чем разрешить клиентам выполнять команды, тем самым повышая безопасность данных.

ElastiCache поддерживает такие программы соответствия требованиям, как SOC 1, SOC 2, SOC 3, ISO, MTCS, C5, PCI, HIPAA и FedRAMP. Актуальный перечень поддерживаемых программ соответствия требованиям см. на странице Сервисы AWS в программе обеспечения соответствия требованиям.

Экономичность

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

Можно оптимизировать затраты на реляционную базу данных с помощью кэширования в памяти ElastiCache. Вы можете сэкономить до 55 % и повысить скорость чтения в 80 раз при одновременном использовании Amazon ElastiCache и Amazon RDS для MySQL (по сравнению с применением исключительно Amazon RDS для MySQL).

Вы можете использовать многоуровневое хранение данных в ElastiCache в качестве недорогого способа масштабирования кластеров до сотен терабайт емкости. Многоуровневое хранение данных улучшает соотношение цены и производительности за счет использования более дешевых твердотельных накопителей (SSD) в каждом узле кластера в дополнение к хранению данных в памяти.

Оно идеально подходит для рабочих нагрузок, в которых регулярный доступ охватывает не более 20 % общего объема данных, и для приложений, которым не навредит дополнительная задержка при обращении к данным на твердотельном накопителе. Многоуровневое хранение данных ElastiCache доступно при использовании ElastiCache (Redis OSS) версии 6.2 и выше на узлах R6gd на базе AWS Graviton2. Общая емкость узлов R6gd (память и SSD) почти в 5 раз выше, что позволяет сэкономить более 60 % при работе с максимальной загрузкой по сравнению с узлами R6g (только память).

Зарезервированные узлы ElastiCache позволяют получить значительную скидку по сравнению с использованием по требованию при подтверждении обязательств на один год или три года. При использовании зарезервированных узлов вы можете внести предоплату частично или полностью либо не вносить ее вообще, чтобы зарезервировать узел для запуска в определенном регионе. Резервируемые узлы доступны с интервалом в один год или три года и обеспечивают значительную скидку на текущую почасовую плату за пользование. Зарезервированные узлы ElastiCache обеспечивают гибкость размера в пределах узла и региона AWS. Таким образом, скидка на зарезервированные узлы будет автоматически применена к использованию узлов всех размеров из одного семейства. Подробнее о зарезервированных узлах ElastiCache.

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

ElastiCache – это веб‑сервис, облегчающий развертывание и запуск в облаке серверных узлов, совместимых с протоколами Redis OSS или Memcached. ElastiCache повышает производительность интернет‑приложений, позволяя получать информацию из быстрых, полностью управляемых систем хранения данных в памяти вместо более медленных систем, размещенных на дисках.

ElastiCache упрощает и берет на себя мониторинг, решение операционных вопросов, а также управление средами в памяти, позволяя клиентам сосредоточить усилия технических специалистов на разработке приложений. Используя ElastiCache, можно улучшить время загрузки и отклика на действия и запросы пользователя, а также сократить расходы, связанные с масштабированием интернет-приложений.

Да. Бессерверная конфигурация ElastiCache позволяет клиентам добавлять кэш менее чем за минуту и мгновенно масштабировать емкость в зависимости от структуры трафика приложений. Вы можете легко начать работу с сервисом, указав имя кэша с помощью Консоли управления AWS, SDK или AWS CLI. Чтобы узнать больше, ознакомьтесь с нашей документацией по ElastiCache.

Полностью управляемый сервис ElastiCache позволяет автоматизировать стандартные административные задачи по обеспечению работы распределенной среды хранения в памяти данных типа «ключ‑значение».

С помощью бессерверной конфигурации ElastiCache можно создать высокодоступный и масштабируемый кэш менее чем за минуту, избавив себя от необходимости выделять и планировать емкость кластера кэша, а также управлять ею. Бессерверная конфигурация ElastiCache автоматически хранит данные с обеспечением избыточности в трех зонах доступности и предоставляет Соглашение об уровне обслуживания (SLA), гарантирующее доступность на уровне 99,99 %. Благодаря интеграции со средствами мониторинга CloudWatch сервис ElastiCache предлагает расширенные возможности наблюдения за метриками производительности ваших ресурсов кэша.

Протоколы, используемые Elasticache, совместимы с OSS Redis и Memcached, поэтому код, приложения и популярные инструменты, используемые в существующих средах OSS Redis и Memcached, будут эффективно работать с этим сервисом. Поддержка кластерной конфигурации в ElastiCache дает клиентам преимущества быстрого, масштабируемого и простого в использовании сервиса, отвечающего требованиям самых ресурсоемких приложений. Работая с ElastiCache, вы платите только за то, что используете, без минимальных взносов, авансовых платежей или долгосрочных обязательств.

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

Кэширование в памяти позволяет увеличить производительность приложений за счет сохранения критически важных блоков данных в памяти для последующего доступа к ним с минимальными задержками. Информация в кэше может включать результаты запросов к базам данных с большим количеством операций ввода‑вывода или результаты ресурсоемких расчетов.