Базы данных AWS

Специально разработанные базы данных для любых потребностей приложения

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

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

Специально разработанные базы данных AWS

Сервисы баз данных

Relational Databases
Реляционные БД

Реляционные базы данных хранят данные с заданными схемами и отношениями между ними; они предназначены для проведения транзакций ACID, поддержания целостности ссылочных данных и единообразия данных.

Сферы применения: традиционные приложения, ERP, CRM и интернет-коммерция.

In-Memory Databases
БД в памяти

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

Сферы применения: кэширование, турнирные таблицы в играх и аналитика в режиме реального времени.

LD
Реестр

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

Сферы применения: системы записи, цепочки поставок, регистрация и банковские транзакции.

Предложение AWS:

 
 
Key-Value Databases
БД на основе пар «ключ-значение»

Базы данных «ключ – значение» оптимизированы для хранения и извлечения пар ключей и значений в больших объемах за миллисекунды, при этом они избавлены от присущих реляционным базам данных ограничений по масштабированию и чрезмерных затрат вычислительных ресурсов.

Сферы применения: приложения интернет-масштаба, ставки в режиме реального времени, корзины покупателей и настройки пользователей.

Предложение AWS

 
Graph Databases
Графовые БД

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

Сферы применения: обнаружение мошенничества, социальные сети и системы рекомендаций

Предложение AWS:

 
 
Document Databases
Документ

Документные базы данных предназначены для хранения полуструктурированных данных, таких как документы, и интуитивно понятны разработчикам, поскольку данные обычно представлены в виде читабельных документов.

Сферы применения: управление контентом, персонализация и мобильные приложения.

TS
БД временных рядов

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

Сферы применения: приложения IoT, DevOps и промышленная телеметрия.

Предложение AWS:

 
 

Чем удобны базы данных AWS?

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

Специализация

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

Масштабируемость

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

Полностью управляемые или бессерверные

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

Корпоративный класс

Базы данных AWS предназначены для критически важных для бизнеса корпоративных рабочих нагрузок и обеспечивают высокую надежность и доступность. Вам предоставляется полный контроль над множеством уровней безопасности ваших данных, включая сетевую изоляцию с помощью Amazon VPC и шифрование данных при хранении с помощью ключей, создаваемых и управляемых через AWS Key Management Service (KMS), а также шифрование при передаче.

Сотни тысяч клиентов полагаются на базы данных AWS

21st Century Fox 8up logo
yelp 8up logo
Samsung 8up logo
Adobe 8up logo
Hilton 8up logo
McD 8up logo
Dow Jones 8up logo
Comcast 8up logo
lyft 8up logo
hulu 8up logo
Netflix 8up logo
intuit 8up logo
Autodesk 8up logo
Alexa 8up logo
Siemens 8up logo
ASU 8up logo

Типичные примеры использования

В режиме реального времени

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

Пример кэширования в памяти.

Real Time Applications - Caching
Tapjoy-logo
«Сеть мобильных приложений Tapjoy охватывает более 9000 приложений и 250 миллионов потребителей, использующих смартфоны и планшеты, в международном масштабе. В целях ускорения доступа мы выполняем кэширование статистики и метаданных, связанных с мобильными приложениями, в режиме реального времени. Сервис Amazon ElastiCache позволил значительно снизить количество сбоев в узлах кэша за счет непрерывного мониторинга состояния кластера кэша и автоматической замены отказавших узлов. «Мы высоко оценили возможности управления Amazon ElastiCache и используем этот сервис в рабочей среде для выполнения критически важных приложений, требующих высокой пропускной способности», –

говорит Райан Джонс (Ryan Johns), вице-президент по технологиям компании Tapjoy.

Примеры использования в интернет-масштабах

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

 

Пример игрового приложения.

Internet Scale Applications - Gaming
zynga_logo
«Для игры Zynga Poker мы перенесли пул серверов MySQL, который требовал выделение локальных ресурсов для его работы, на полностью управляемый сервис Amazon DynamoDB. Это позволило резко снизить эксплуатационные затраты… и помимо этого мы добились значительного роста производительности кластера баз данных Zynga Poker, теперь запросы, на выполнение которых раньше уходило 30 секунд, выполняются за секунду. Все это достигнуто просто путем использования преимуществ современных классов инстансов такой архитектуры, и что еще более важно, благодаря постоянным инновациям и инвестициям AWS в свои системы, а также разнообразным предлагаемым скидкам», –

Дорион Кэролл (Dorion Carroll), директор по ИТ – Zynga

Переход на полностью управляемые базы данных с открытым исходным кодом

Мобильные и интернет‑приложения генерируют миллионы запросов на запись и чтение в день, что приводит к высоким требованиям к производительности популярных баз данных с открытым исходным кодом, таких как MySQL, PostgreSQL и Redis. Путем переноса своих баз данных с открытым исходным кодом в полностью управляемые сервисы, такие как Amazon RDS и Amazon ElastiCache, можно избавиться от необходимости создания и администрирования собственных кластеров, обеспечив высокую доступность и производительность при одновременном снижении эксплуатационных затрат.

Транзакционная база данных с примером кэширования.

Managed Open Source
Aurora_logo-talentbin-nb
«Сервис TalentBin компании Monster был переведен на Aurora для уменьшения операционных расходов и затрат на администрирование базы данных MySQL, что, в свою очередь, позволило нашей команде сконцентрироваться на инновациях. Aurora обеспечивает значительно более быструю репликацию, за счет чего увеличение количества операций записи не оказывает отрицательного воздействия на подчиненные приложения. Кроме того, инструменты Aurora устраняют необходимость выделения излишнего объема хранилища для обеспечения требований по нагрузке и расширению, и это еще более повышает эффективность и способствует экономии. Сервис Aurora дал нашей команде возможность консолидировать различные базы данных, что позволило уменьшить количество инстансов баз данных примерно на 40 %. Положительные результаты дает и автоматическое создание снимков состояния с возможностью восстановления на момент времени. С учетом всех этих возможностей решение о переносе данных в Aurora было принято нами без колебаний».

Трэвис Тюн (Travis Theune), старший специалист по обеспечению надежности сайта – TalentBin

Примеры использования

Airbnb

Airbnb использует DynamoDB для хранения истории поиска пользователя из-за большого объема данных и необходимости применения быстрого просмотра (возможность индивидуально настроенного поиска), ElastiCache для хранения состояния сессии в памяти для ускоренного (до долей миллисекунды) отображения страниц сайта, а также RDS в качестве основной транзакционной базы данных.

Подробнее >>

Capital One

Capital One использует RDS для хранения транзакционных данных в целях управления состоянием, Redshift для хранения журналов веб-сервера и выполнения аналитики, требующей агрегации, и DynamoDB для хранения пользовательских данных и обеспечения клиентам быстрого доступа через мобильные приложения.

Подробнее >>

Johnson and Johnson

Johnson and Johnson использует RDS, DynamoDB и Redshift, чтобы максимально сократить время и ресурсы на сбор и предоставление данных и быстро получать аналитические результаты. С помощью сервисов баз данных AWS Johnson and Johnson улучшает соответствие требованиям для медицинских программ, оптимизирует цепочку поставок и разрабатывает новые лекарства.

Подробнее >>

Expedia

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

Подробнее >>

ВЕБ-САЙТ: миграция баз данных
Переходите на полностью управляемые базы данных, чтобы сэкономить время и средства.

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

БЛОГ: специализированная база данных
Универсальные базы данных подходят не всем.

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

ВИДЕО: специализированные базы данных
Выбор самого подходящего инструмента для конкретной задачи

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

ПОСОБИЕ: создание современного интернет-приложения
Использование бессерверных сервисов – Fargate, Lambda и DynamoDB с Python

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