Компания хранит данные о продажах в таблице DynamoDB с включенными DynamoDB Streams. Каждый элемент имеет атрибут TransactionStatus со значениями failed, pending или completed. Компания хочет получать уведомления о неудачных продажах, где Price превышает пороговое значение. Какой подход требует наименьших усилий по разработке для настройки этого уведомления?
Выберите ответ
Нажмите на вариант, чтобы проверить свой ответ.
Правильный ответ: Создать сопоставление источника событий (event source mapping) из DynamoDB Streams с функцией Lambda и использовать фильтрацию событий Lambda, чтобы функция вызывалась только для неудачных продаж, Price которых выше порогового значения. Настроить функцию для публикации в топик Amazon SNS..
Почему это правильный ответ
Правильный ответ — использование сопоставления источника событий DynamoDB Streams с функцией Lambda и фильтрацией событий Lambda. Это позволяет Lambda вызываться только для релевантных записей (неудачные продажи с ценой выше порога), минимизируя количество вызовов Lambda и, следовательно, затраты и сложность кода. Lambda затем публикует сообщение в Amazon SNS. Другие варианты менее оптимальны: Реализация логики фильтрации внутри Lambda (второй вариант) увеличивает сложность кода и приводит к вызову Lambda для всех записей потока, что дороже. Прямое сопоставление DynamoDB Streams с SNS (третий вариант) невозможно, так как SNS не может напрямую потреблять данные из DynamoDB Streams и выполнять сложную фильтрацию на основе атрибутов элементов. CloudWatch Alarms (четвертый вариант) не предназначены для мониторинга содержимого DynamoDB Streams на уровне отдельных элементов и их атрибутов. CloudWatch Alarms отслеживают метрики, а не данные потока.
Сдайте экзамен — без бесконечного поиска ответов
Получите все проверенные вопросы и объяснения для этого экзамена в одном месте и сэкономьте часы подготовки. 1000+ сертификаций · 20+ языков · начните бесплатно.
Сдайте экзамен быстрее → Карта не требуется