DynamoDB: Basis, PK, GSI LSI Flashcards
DynamoDB Table Item (row) может занимать максимум …
400 KB
Преимущество DynamoDB back-up & recovery в том, что …
НЕ влияет на performance и доступность
выполняется ассинхронно за считанные секунды
Мигрировать данные в dynamoDb из … можно через …
MongoDB, Oracle, MySQL, S3
AWS DMS - DB Migration Service
Primary Key в DynamoDB может состоять из …
-
Partition Key
= HASH key -
Sort Key
= RANGE key (опционально)
Что делает DynamoDB с Partition Key? А с Sort Key?
DynamoDB использует значение partition ключа на вход hash функции.
Полученный ХЭШ определяет partition, в котором будет храниться item.
Sort Key только влияет на порядок элементов в рамках partition’а.
Если PK одинарный, то во всей таблице …
Если PK композинтый, то во всей таблице …
одинарный PK должен быть уникальным во всей таблице
композитный ключ должен отличаться ХОТЯ БЫ своим Sort Ключом
Суть Partition Strategies в том, чтобы … распределение записей за счёт …
выровнять
добавления рандомного суффикса к partition key
Зачем нужны индексы DynamoDB
Если индексов нет, то можно делать запросы только по primary key и sort key.
По прочим (обычным) атрибутам запрашивать данные нельзя. Для этого нужно создать secondary index.
Base table, secondary index, alternative key - что это?
-
Base table
- оригинал таблицы, в которой хранятся все данные. -
Global Secondary index
- копия оригинальной таблицы, в которой выбран другой primary key. Или -
Alternate key
- primary key, который выборан в secondary-index-таблице
Что такое Projected Attributes?
Какие опции для Projected Attributes бывают?
Неполный набор атрибутов
KEYS_ONLY, INCLUDE, ALL
В чём отличие LSI от GSI в плане дополнительной структуры данных?
Local Secondary Index - просто атрибут на оригинальной таблице.
Global Secondary Index - создаётся вторая таблица.
В чём отличие LSI от GSI в плане функциональных возможностей?
Local Secondary Index - Эта колонка становится дополнительным sort key (partition key совпадает).
Global Secondary Index - в скопированной таблице отличаются и partition key, и sort key.
Какие ограничения есть у LSI?
- Максимум
5 LSI
на каждую таблицу. -
LSI
можно создать только в момент создания самой таблицы.
Нет возможности переделать LSI, если изменилась структура данных.
Какие ограничения есть у GSI?
- Нужно указывать RCU WCU для
GSI
-
GSI
можно создать / изменить даже после создания таблицы.
Что нужно знать о Троттлинге для LSI?
- LSI использует
WCU
иRCU
, принадлежащие базовой таблице - Поэтому никакого тщательного анализа (для избежания тротлинга) НЕ нужно