Вы собираете телеметрию со 100 000 устройств в Azure Event Hub. Вам необходимо сохранить порядок сообщений для каждого устройства, поддерживая при этом высокую пропускную способность в нескольких разделах. Что следует сделать при отправке событий?
Выберите ответ
Нажмите на вариант, чтобы проверить свой ответ.
Правильный ответ: Установите PartitionKey для каждого события в deviceId, чтобы все события с одного устройства попадали в один и тот же раздел и сохраняли порядок..
Почему это правильный ответ
Правильный ответ — установить PartitionKey для каждого события в deviceId. Azure Event Hubs гарантирует, что все события с одним и тем же PartitionKey будут отправлены в один и тот же раздел. Это обеспечивает сохранение порядка сообщений для каждого отдельного устройства, что является ключевым требованием. Использование нескольких разделов позволяет достичь высокой пропускной способности, поскольку обработка может быть распараллелена. Уменьшение количества разделов до 1 приведет к глобальному порядку, но значительно снизит пропускную способность, так как все события будут проходить через один раздел, что не соответствует требованию высокой пропускной способности. Указание PartitionId поочередно (round-robin) распределит события по разделам, но не гарантирует порядок для конкретного устройства, поскольку события от одного устройства могут попасть в разные разделы. Использование отдельных групп потребителей для каждого устройства не решает проблему сохранения порядка при отправке событий; группы потребителей влияют на то, как события читаются, а не на то, как они записываются и упорядочиваются в разделах. Контроль порядка на потребителе неэффективен и не гарантирует порядок на стороне производителя, что является основной целью.
Сдайте экзамен — без бесконечного поиска ответов
Получите все проверенные вопросы и объяснения для этого экзамена в одном месте и сэкономьте часы подготовки. 1000+ сертификаций · 20+ языков · начните бесплатно.
Сдайте экзамен быстрее → Карта не требуется