Таблица DynamoDB для заказов продуктов использует orderId только в качестве ключа раздела (без ключа сортировки). Приложению необходимо поддерживать запросы по customerId. Какой вариант позволяет запрашивать таблицу по customerId?
Выберите ответ
Нажмите на вариант, чтобы проверить свой ответ.
Правильный ответ: Создать глобальный вторичный индекс (GSI) в таблице с customerId в качестве ключа раздела..
Почему это правильный ответ
Правильный ответ — создание глобального вторичного индекса (GSI) с customerId в качестве ключа раздела. GSI позволяет запрашивать данные, используя атрибуты, отличные от первичного ключа основной таблицы. Поскольку customerId не является частью существующего первичного ключа (который состоит только из orderId), GSI необходим для эффективного поиска по этому атрибуту. Изменение первичного ключа таблицы нецелесообразно, так как это потребует пересоздания таблицы и миграции данных, что нарушит работу приложения. Локальный вторичный индекс (LSI) не подходит, потому что он должен иметь тот же ключ раздела, что и основная таблица, а нам нужно запрашивать по customerId, который не является ключом раздела основной таблицы. LSI также не может иметь customerId в качестве ключа раздела, так как его ключ раздела всегда совпадает с ключом раздела основной таблицы.
Сдайте экзамен — без бесконечного поиска ответов
Получите все проверенные вопросы и объяснения для этого экзамена в одном месте и сэкономьте часы подготовки. 1000+ сертификаций · 20+ языков · начните бесплатно.
Сдайте экзамен быстрее → Карта не требуется