DynamoDB – это быстрый и гибкий сервис для создания нереляционных баз данных любого масштаба. DynamoDB дает клиентам возможность переложить на AWS административную нагрузку, связанную с управлением распределенными базами данных и их масштабированием, а значит, избавиться от необходимости выделения оборудования, его настройки и конфигурирования, решения вопросов репликации, обновления ПО, планирования ресурсов для поддержания необходимой пропускной способности и масштабирования кластеров.
DynamoDB позволяет решить основные проблемы при масштабировании баз данных: проблему управления ПО баз данных и подготовки аппаратного обеспечения, необходимого для его работы. Теперь развертывать нереляционные базы данных можно за считаные минуты. Сервис DynamoDB автоматически масштабирует пропускную способность для соответствия текущей рабочей нагрузке и способен многократно разбивать данные по мере расширения таблиц. DynamoDB также выполняет синхронную репликацию данных в трех ЦОД региона AWS, обеспечивая высокую доступность и сохранность данных.
После создания таблицы с помощью консоли DynamoDB или API CreateTable для вставки элементов можно использовать API PutItem или BatchWriteItem. Для извлечения элементов, добавленных в таблицу, можно использовать такие API, как GetItem и BatchGetItem, а также API Query, если в таблице включены и используются составные первичные ключи.
Максимальная пропускная способность для таблиц DynamoDB практически ничем не ограничена. Подробнее о том, какие ограничения действуют, см. в разделе Limits in DynamoDB. Если требуется увеличить действующий лимит, свяжитесь с Amazon.
Минимальный объем выделенной пропускной способности, который можно запросить, – одна единица ресурса чтения и одна единица ресурса записи (как при использовании автомасштабирования, так и при выделении пропускной способности вручную). Такие значения входят в уровень бесплатного пользования, который включает 25 единиц ресурса записи и 25 единиц ресурса чтения. Уровень бесплатного пользования применяется ко всему аккаунту, а не к отдельной таблице. Иными словами, если вы увеличили выделенные ресурсы для всех своих таблиц, и общий объем этих ресурсов не превышает 25 единиц ресурса записи и 25 единиц ресурса чтения, то вы будете пользоваться ими в рамках уровня бесплатного пользования.
Класс DynamoDB стандарт-IA помогает снизить общие затраты DynamoDB при наличии таблиц, хранящих редко запрашиваемые данные, например журналы приложений, старые публикации социальных сетей, историю заказов интернет-коммерции и старые игровые достижения. Если на хранение приходится основная часть затрат (стоимость хранения постоянно превышает 50 процентов затрат на пропускную способность для операций чтения и записи), тогда самым экономичным вариантом будет класс таблиц DynamoDB стандарт-IA. Подробную информацию о ценах на DynamoDB стандарт – редкий доступ см. на этой странице.
Таблицы DynamoDB стандарт-IA ничем не отличаются от таблиц DynamoDB Standard – они поддерживают все имеющиеся возможности DynamoDB, включая глобальные таблицы, вторичные индексы, резервное копирование по требованию и восстановление на момент времени (PITR). Как и таблицы DynamoDB Standard, таблицы DynamoDB стандарт-IA имеют встроенную интеграцию с другими сервисами AWS. Например, можно следить за производительностью таблиц DynamoDB стандарт-IA с помощью Amazon CloudWatch, использовать шаблоны AWS CloudFormation для распределения таблиц DynamoDB стандарт-IA и управления ими, добавлять кэш с помощью Ускорителя DynamoDB (DAX) для повышения производительности, осуществлять потоковую передачу записей об изменениях в Потоках данных Amazon Kinesis и экспортировать данные таблиц DynamoDB стандарт-IA в Простой сервис хранения данных Amazon (Amazon S3).
Подробнее о моделях данных и API см. в разделе Amazon DynamoDB: как это работает.
Подробнее о масштабируемости, доступности и надежности см. в разделе Amazon DynamoDB Product Details.
Подробнее о возможности автоматического масштабирования для DynamoDB см. в разделе Managing Throughput Capacity Automatically with DynamoDB Auto Scaling.
Информацию о безопасности и контроле доступа в рамках сервиса DynamoDB см. в разделе Identity and Access Management в Amazon DynamoDB.