Kafka Streams, wprowadzenie i zagadnienia zaawansowane

Tytuł: Kafka Streams, wprowadzenie i zagadnienia zaawansowane
Kod: kafka-streams
Kategoria: Kafka
Forma: 50% wykłady / 50% warsztaty
Czas trwania: 3 dni
Odbiorcy: developerzy, architekci
Zapisy: Indywidualne zamówienie i dopasowanie dla grupy.
Logistyka: W siedzibie klienta lub w innym dowolnym miejscu.

Szkolenie "Budowanie Aplikacji z Wykorzystaniem Kafka Streams" to intensywny kurs, który prowadzi uczestników przez wszystkie kluczowe aspekty związane z wykorzystaniem biblioteki Kafka Streams do tworzenia zaawansowanych aplikacji przetwarzających strumienie danych.

W trakcie tego szkolenia uczestnicy zdobędą głęboką wiedzę na temat tej biblioteki oraz nauczą się jak efektywnie wykorzystywać ją w praktyce.

Dla kogo jest to szkolenie:

Szkolenie jest przeznaczone dla programistów, inżynierów danych, architektów systemów oraz wszystkich, którzy chcą zgłębić wiedzę na temat Apache Kafka i Kafka Streams i nauczyć się tworzyć zaawansowane aplikacje przetwarzające strumienie danych. Szkolenie jest naturalną kontynuacją i rozszerzeniem wiedzy zdobytej podczas szkolenia Apache Kafka - niezbędnik programisty.

Główne tematy szkolenia:

  • Wprowadzenie do Kafka Streams: Kurs rozpocznie się od omówienia czym jest Kafka Streams i jakie korzyści niesie ze sobą ta biblioteka. Uczestnicy dowiedzą się, jak Kafka Streams integruje się z Kafka oraz jakie są jej główne cechy i możliwości.
  • Podstawy API Kafka Streams: Uczestnicy otrzymają wprowadzenie do specyfikacji API Kafka Streams. Będą mieli okazję nauczyć się, jak tworzyć strumienie danych, przeprowadzać przekształcenia na danych oraz jak łączyć różne strumienie.
  • Konfiguracja i skalowanie: Kolejny etap szkolenia skupi się na parametrach konfiguracyjnych, które pozwalają dostosować działanie aplikacji do potrzeb. Uczestnicy dowiedzą się także, jak skalować aplikacje Kafka Streams w zależności od obciążenia.
  • Wewnętrzne mechanizmy Kafka Streams: Szkolenie pójdzie dalej i zagłębi się w wewnętrzne mechanizmy działania Kafka Streams, takie jak zarządzanie stanem, przetwarzanie okienkowe, mechanizmy replikacji i odzyskiwania danych.
  • Praktyczne zastosowania: Uczestnicy poznają liczne praktyczne zastosowania Kafka Streams, takie jak przetwarzanie strumieni danych w czasie rzeczywistym, analiza danych, monitorowanie i wiele innych.
  • Dodatkowe tematy: Szkolenie będzie elastyczne, pozwalając na uwzględnienie indywidualnych potrzeb uczestników. Jeśli istnieją konkretne zagadnienia związane z Apache Kafka, które interesują uczestników, instruktorzy dostosują program szkolenia.

Korzyści:

Po ukończeniu tego szkolenia uczestnicy będą w stanie:

  • Budować aplikacje przetwarzające strumienie danych w oparciu o Kafka Streams.
  • Skutecznie konfigurować i skalować aplikacje Kafka Streams.
  • Wykorzystywać wewnętrzne mechanizmy Kafka Streams do zaawansowanego przetwarzania danych.
  • Rozumieć praktyczne zastosowania Kafka Streams w różnych scenariuszach biznesowych.

To szkolenie stanowi solidną podstawę dla każdego, kto chce stać się ekspertem w dziedzinie przetwarzania strumieni danych przy użyciu Apache Kafka i Kafka Streams.

Program Szkolenia

Program jest ramą w jakiej możemy się poruszać merytorycznie - program dla konkretnego szkolenia dedykowanego ustalamy z grupą na podstawie analizy przed-szkoleniowej.

  1. Koncepcja zastosowania biblioteki Kafka Streams
  2. Kluczowe koncepcje architektoniczne zastosowane w Kafka Streams
    1. Topologia przetwarzania
      1. Source vs Sink
    2. Interpretacja czasu
    3. Dualizm strumień-tablica
    4. Topiki kompaktowe
    5. Agregacja danych
    6. Okna czasowe
    7. Błędy wynikające z niepoprawnej kolejności przetwarzania
  3. Wewnętrzne mechanizmy Kafka Streams
    1. Jak ilość partycji wpływa na ilość zadań zdefiniowanych w topologii
    2. Wielowątkowość w Kafka Streams
    3. Lokalna baza danych RocksDB
    4. Changelog topic
    5. Repartition topic
    6. Odporność na błędy
    7. Reset tool
    8. Analiza topologii strumieni
  4. Tworzenie podstawowej aplikacji opartej o Kafka Streams
  5. Parametry konfiguracyjne
  6. Kafka Streams DSL
    1. Tworzenie strumienia
    2. Operacje bezstanowe
    3. Operacje stanowe
      1. Agregacje danych
      2. Łączenie danych
        1. Zmiany klucza wiadomości przed łączeniem danych
        2. KStream-KStream join
        3. KTable-KTable join
        4. KTable-KTable Foreign-Key join
        5. KStream-KTable join
        6. KStream-GlobalKTable join
      3. Windowing
        1. Hopping time windows
        2. Tumbling time windows
        3. Sliding time windows
        4. Session Windows
        5. Przekazywanie wyników operacji
    4. Processor API
    5. Nazywanie operacji w topologii przetwarzania
    6. Monitorowanie częstotliwość aktualizacji stanu
    7. Przetwarzanie w oparciu o offset lub timestamp
    8. Przekazywanie wyników operacji
  7. Typy danych, serializacji i deserializacja
  8. Testowanie aplikacji Kafka Streams
    1. Biblioteka kafka-streams-test-utils
    2. Testowanie integracyjne
  9. Odczyt danych w aplikacji Kafka Streams
    1. Odczyt lokalnych danych
    2. Odczyt danych z zewnętrznych instancji
    3. Konfiguracja Standby Replicas
  10. Transformers
    1. Przetwarzanie zgodnie z podejściem Stateful Record-By-Record
  11. Exactly once processing
  12. Testowanie aplikacji opartych o Kafka Streams
    1. Testy jednostkowe z wykorzystaniem kafka-streams-test-utils
    2. Testy integracyjne z wykorzystaniem Testcontainers
  13. Implementacja popularnych wzorców aplikacji biznesowych
    1. Saga
    2. Read-Process-Write
    3. Sortowanie i deduplikacja zdarzeń
  14. Wsparcie do Kafka Streams w Spring Boot
    1. Konfiguracja i uruchomienie aplikacji
    2. Sposoby skalowania


Pobierz program w formacie PDF

Trenerzy

Poznaj ekspertów, którzy mogą poprowadzić Twoje szkolenie.

Zamów szkolenie

Imię i nazwisko:
Firma:
E-mail:
Nr tel:
Temat:
Wiadomość:

Jeżeli preferujesz osobisty kontakt to zawsze możesz zadzwonić.

Iwona Sobótka

Koordynatorka szkoleń


Twoje dane osobowe przetwarzamy, aby udzielić odpowiedzi na Twoje pytanie. Administratorem Twoich danych osobowych jest Bottega It Minds Sławomir Sobótka. Przysługuje Ci prawo wniesienia sprzeciwu wobec przetwarzania, prawo dostępu do danych, prawo żądania ich sprostowania, usunięcia lub ograniczenia ich przetwarzania. Szczegółowe informacje dotyczące przetwarzania Twoich danych osobowych znajdują się TUTAJ.