Банк собирает большой объем транзакционных данных и передает их в Amazon Kinesis Data Streams с помощью PutRecord. В определенное время происходят сбои в сети, и инженеру данных требуется семантика доставки «точно один раз» (exactly-once) по всему конвейеру обработки. Какой подход позволит этого добиться?
Выберите ответ
Нажмите на вариант, чтобы проверить свой ответ.
Правильный ответ: Разработать приложение таким образом, чтобы оно могло удалять дубликаты во время обработки, встраивая уникальный ID в каждую запись на источнике..
Почему это правильный ответ
Семантика доставки "точно один раз" (exactly-once) в распределенных системах, таких как Kinesis Data Streams, обычно достигается путем идемпотентной обработки. Встраивание уникального идентификатора в каждую запись на источнике позволяет приложению-потребителю обнаруживать и отбрасывать дубликаты, если запись была обработана ранее. Это наиболее надежный способ обеспечить семантику "точно один раз" на уровне обработки данных. Обновление конфигурации контрольных точек Amazon Managed Service for Apache Flink помогает восстанавливать состояние, но само по себе не гарантирует "точно один раз" при повторной обработке. Источник данных не может полностью гарантировать отсутствие дубликатов при сетевых сбоях (например, при повторных попытках отправки). Использование Amazon EMR вместо Kinesis Data Streams меняет технологию, но не решает проблему "точно один раз" без аналогичных механизмов идемпотентности.
Сдайте экзамен — без бесконечного поиска ответов
Получите все проверенные вопросы и объяснения для этого экзамена в одном месте и сэкономьте часы подготовки. 1000+ сертификаций · 20+ языков · начните бесплатно.
Сдайте экзамен быстрее → Карта не требуется