Udostępnij za pośrednictwem


Kompaktowanie dzienników w usłudze Azure Event Hubs

Kompaktowanie dzienników to sposób przechowywania danych w usłudze Event Hubs przy użyciu przechowywania opartego na kluczach zdarzeń. Domyślnie każdy temat centrum zdarzeń/platformy Kafka jest tworzony przy użyciu przechowywania na podstawie czasu lub zasad oczyszczania usuwania , w których zdarzenia są czyszczone po wygaśnięciu czasu przechowywania. Zamiast tego używać coarser-grained czasu przechowywania opartego na kluczach, można użyć mechanizmu przechowywania opartego na kluczach zdarzeń, w którym usługa Event Hubs ponownie szkoli ostatnią znaną wartość dla każdego klucza zdarzenia centrum zdarzeń lub tematu platformy Kafka.

Uwaga

Funkcja kompaktowania dzienników nie jest obsługiwana w warstwie podstawowej * .

Jak pokazano na poniższej ilustracji, dziennik zdarzeń (partycji centrum zdarzeń) może mieć wiele zdarzeń o tym samym kluczu. Jeśli używasz zwartego centrum zdarzeń, usługa Event Hubs zajmuje się przeczyszczanie starych zdarzeń i przechowywanie tylko najnowszych zdarzeń danego klucza zdarzenia.

Diagram przedstawiający sposób kompaktowania tematu.

Klucz kompaktowania

Klucz partycji ustawiony za pomocą każdego zdarzenia jest używany jako klucz kompaktowania.

Nagrobków

Aplikacja kliencka może oznaczać istniejące zdarzenia centrum zdarzeń do usunięcia podczas zadania kompaktowania. Te znaczniki są nazywane grobowcami. Aplikacje klienckie ustawiają grobowce, wysyłając nowe zdarzenie przy użyciu istniejącego klucza i ładunku null zdarzenia.

Jak działa kompaktowanie dzienników

Kompaktowanie dzienników można włączyć na poziomie każdego centrum zdarzeń/tematu platformy Kafka. Zdarzenia można pozyskiwać do zwartego artykułu z dowolnego protokołu pomocy technicznej. Usługa Azure Event Hubs uruchamia zadanie kompaktowania dla każdego zwartego centrum zdarzeń. Zadanie kompaktowania czyści każdy dziennik partycji centrum zdarzeń, zachowując tylko najnowsze zdarzenie danego klucza zdarzenia.

Diagram przedstawiający sposób działania kompaktowania dzienników.

W dowolnym momencie dziennik zdarzeń kompaktowego centrum zdarzeń może mieć oczyszczoną część i brudną część. Czysta część zawiera zdarzenia, które są kompaktowane przez zadanie kompaktowania, podczas gdy brudna część składa się z zdarzeń, które nie zostały jeszcze zwarte.

Usługa Event Hubs zarządza wykonywaniem zadania kompaktowania i użytkownik nie może go kontrolować. W związku z tym usługa Event Hubs określa, kiedy rozpocząć kompaktowanie i jak szybko skompaktować dane kompaktowane centrum zdarzeń.

Gwarancje kompaktowania

Funkcja kompaktowania dzienników usługi Event Hubs zapewnia następującą gwarancję:

  • Kolejność komunikatów jest zawsze zachowywana na poziomie klucza i partycji. Zadanie kompaktowania nie zmienia kolejności komunikatów, ale po prostu odrzuca stare zdarzenia tego samego klucza.
  • Numer sekwencji i przesunięcie komunikatu nigdy się nie zmienia.
  • Każdy użytkownik postępu od początku dziennika zdarzeń widzi co najmniej ostateczny stan wszystkich zdarzeń w kolejności, w jakiej zostały zapisane.
  • Użytkownicy nadal widzą zdarzenia, które są oznaczone do usunięcia przez czas zdefiniowany przez czas przechowywania grobowca (godziny).

Przypadki użycia kompaktowania dzienników

Kompaktowanie dzienników może być przydatne w scenariuszach, w których przesyłasz strumieniowo ten sam zestaw zdarzeń, które można aktualizować. Ponieważ kompaktowane centra zdarzeń przechowują tylko najnowsze zdarzenia, użytkownicy nie muszą martwić się o wzrost magazynu zdarzeń. W związku z tym kompaktowanie dzienników jest często używane w scenariuszach, takich jak Przechwytywanie zmian danych (CDC), utrzymywanie zdarzeń w tabelach na potrzeby aplikacji przetwarzania strumieniowego i buforowania zdarzeń.

Limity przydziału i ograniczenia

Limit Podstawowa Standardowa (Standard) Premium Dedykowane
Rozmiar kompaktowanego centrum zdarzeń Nie dotyczy 1 GB na partycję 250 GB na partycję 250 GB na partycję

Aby uzyskać informacje o innych limitach przydziału i limitach, zobacz Event Hubs quotas and limits (Limity i limity usługi Event Hubs).

Następne kroki

Aby uzyskać instrukcje dotyczące używania kompaktowania dzienników w usłudze Event Hubs, zobacz Używanie kompaktowania dzienników