Сжатие журнала в Центры событий Azure

Сжатие журналов — это способ хранения данных в Центрах событий с использованием хранения на основе ключей событий. По умолчанию каждый раздел концентратора событий или Kafka создается с хранением на основе времени или политикой очистки удаления , где события удаляются по истечении срока хранения. Вместо того чтобы использовать более детальное хранение на основе времени, можно использовать механизм хранения на основе ключей событий, в котором Центры событий повторно обучают последнее известное значение для каждого ключа события концентратора событий или раздела Kafka.

Примечание

Функция сжатия журналов не поддерживается на уровне * Базовый .

Как показано на следующем рисунке, журнал событий (секции концентратора событий) может содержать несколько событий с одним ключом. Если вы используете сжатый концентратор событий, служба Центров событий выполняет очистку старых событий и сохранение только последних событий заданного ключа события.

Схема, показывающая, как сжимается раздел.

Клавиша сжатия

Ключ секции, заданный с каждым событием, используется в качестве ключа сжатия.

Надгробий

Клиентское приложение может помечать существующие события концентратора событий, которые будут удалены во время задания сжатия. Эти маркеры называются надгробными камнями. Клиентские приложения устанавливают надгробия, отправляя новое событие с существующим ключом и полезными данными null события.

Как работает сжатие журнала

Сжатие журналов можно включить на каждом уровне концентратора событий или раздела Kafka. Вы можете принимать события в сжатой статье из любого протокола поддержки. Центры событий Azure служба выполняет задание сжатия для каждого сжатого концентратора событий. Задание сжатия очищает каждый журнал секций концентратора событий, сохраняя только последнее событие заданного ключа события.

Схема, показывающая, как работает сжатие журнала.

В любой момент времени журнал событий сжатого концентратора событий может содержать очищенную часть и грязное часть. Чистая часть содержит события, которые сжаты заданием сжатия, а грязное часть состоит из событий, которые еще не сжаты.

Служба Центров событий управляет выполнением задания сжатия, и пользователь не может управлять им. Таким образом, служба Центров событий определяет, когда следует начать сжатие и как быстро оно сжимает данный сжатый концентратор событий.

Гарантии сжатия

Функция сжатия журналов в Центрах событий обеспечивает следующие гарантии:

  • Порядок сообщений всегда поддерживается на уровне ключа и раздела. Задание сжатия не изменяет порядок сообщений, но просто удаляет старые события того же ключа.
  • Порядковый номер и смещение сообщения никогда не изменяются.
  • Любой потребитель, продвигающийся с начала журнала событий, видит по крайней мере окончательное состояние всех событий в том порядке, в каком они были записаны.
  • Потребители по-прежнему могут видеть события, которые помечаются для удаления в течение времени, определенного временем хранения надгробия (часы) .

Варианты использования сжатия журналов

Сжатие журнала может быть полезно в сценариях, в которых выполняется потоковая передача одного и того же набора обновляемых событий. Так как сжатые центры событий хранят только последние события, пользователям не нужно беспокоиться о росте хранилища событий. Поэтому сжатие журнала обычно используется в таких сценариях, как отслеживание измененных данных (CDC), обслуживание событий в таблицах для приложений обработки потоковой обработки и кэширования событий.

Квоты и ограничения

Ограничение Basic Standard Premium Выделенные
Размер сжатого концентратора событий Н/Д 1 ГБ на секцию 250 ГБ на секцию 250 ГБ на секцию

Другие квоты и ограничения см. в разделе Квоты и ограничения Центров событий.

Дальнейшие действия

Инструкции по использованию сжатия журналов в Центрах событий см. в статье Использование сжатия журналов.