Apache Kafka, Software Development

IT Delivered: Dlaczego sama instalacja Kafki to za mało?

Rozmawiają: Michał Drabikowski, Partner zarządzający w in4mates i Tomasz Król, Business Development Manager w in4mates.

Tomasz Król: Apache Kafka to dziś standard w dużych organizacjach. Mówi się, że „największe firmy IT mają Kafkę”. Dlaczego w takim razie wciąż potrzebują wsparcia zewnętrznych ekspertów przy jej wdrażaniu i rozwijaniu opartych o nią rozwiązań?

Michał Drabikowski: To prawda, ponad 80% firm z listy Fortune 100 korzysta z Apache Kafka jako elementu swojej architektury danych, Kafka jest też przykładowo obecna w większości polskich banków. Technologia jest dojrzała, a rozwiązania o nią oparte są w stanie obsługiwać nawet miliony zdarzeń na sekundę, działać praktycznie w czasie rzeczywistym, skalować się wraz z biznesem i wykorzystywać dane w dogodnym czasie i na najróżniejsze sposoby — np. w analityce, ML czy audycie.

Kafka ma silną pozycję, ale pracując z klientami widzimy, że nawet doświadczone zespoły nie zawsze wykorzystują maksimum potencjału tej technologii.

Tomasz: Rozumiem, że samo postawienie klastra Kafki nie rozwiązuje jeszcze żadnych problemów?

Michał: Największym wyzwaniem nie jest sama instalacja (choć koszty infrastruktury wymaganej przez Kafkę są dość wysokie) i konfiguracja (nie jest prosta, ale robimy to raz). Kluczowa kwestia to takie projektowanie rozwiązań, by mimo pełnej asynchroniczności były one niezawodne, by były skalowalne i rozwijalne w przyszłości. Tylko dzięki dobraniu właściwych wzorców architektonicznych i wprowadzeniu pewnej standaryzacji, Kafka dostarczy nam długofalową wartość biznesową. Tu potrzebna jest nie tylko faktyczna wiedza o technologii, ale po prostu doświadczenie z innych projektów i specyficzne know-how o możliwościach rozwiązania. W naszych projektach zaczynamy pracę z klientem od szczegółowego wywiadu, jakie konkretnie zadania biznesowe ta technologia ma wspierać, jaki jest cel wdrożenia i dalsze plany. Bardzo ważne jest zrozumienia oczekiwań, możliwości i ograniczeń technicznych. Dopiero potem przechodzimy do szczegółowego projektowania rozwiązania oraz integrowania poszczególnych systemów i mikroserwisów.

Integracja to nasze DNA

Tomasz: Wspomniałeś o integracji. in4mates ma opinię zespołu do zadań specjalnych w tym obszarze. Skąd wzięły się te kompetencje?

Michał: Integracja to nasze DNA. Gdy firma in4mates powstawała 16 lat temu, zatrudniała najlepszych fachowców wywodzących się między innymi ze struktur firmy Infovide-Matrix – jednego z największych integratorów IT w tamtym czasie. Do zespołu in4mates weszły więc osoby budujące fundamenty polskiej integracji systemów dla największych instytucji finansowych i telekomów. W czasach SOA (Service Oriented Architecture) i EAI (Enterprise Application Integration) wykorzystywaliśmy z powodzeniem najbardziej popularne platformy takie Tuxedo, TIBCO, webMethods czy OSB. Przez lata nauczyliśmy się, jak łączyć „stare” z „nowym”. Wieloletnie doświadczenia w najbardziej złożonych projektach integracyjnych z powodzeniem przekuwamy na wiodące dziś w tym obszarze technologie takie jak Apache Kafka. Dzięki szerokiej perspektywie, nie patrzymy na Kafkę jak na odizolowaną wyspę – rozumiemy cały ekosystem IT klienta, od baz danych po systemy chmurowe, rozumiemy w jakich sytuacjach jakie wzorce się sprawdzają.

Pełny cykl życia projektu – model IT Delivered

Tomasz: Co to oznacza dla klienta w praktyce? Jak wygląda pełny cykl życia projektu Kafkowego w modelu in4mates: „IT Delivered”?

Michał: W in4mates znamy nie tylko atuty tej technologii, ale też wiemy, jak mogą z nich skorzystać nasi klienci. Staramy się przeprowadzić ich przez pełny cykl życia projektu: od wysokopoziomowych celów biznesowych i architektury, przez precyzyjne projektowanie i development, aż po kompleksowe testy, wsparcie powdrożeniowe i dalszy rozwój.

Co to oznacza w praktyce?

  1. Analiza i projektowanie.
    Zaczynamy od określenia celu, zrozumienia oczekiwań, możliwości i ograniczeń technicznych. Ważne jest poznanie zarówno aktualnego wolumenu danych, jak i planów rozwoju. Ważna jest też planowana skala użycia Kafka w przyszłości, by od razu tworzyć adekwatne wzorce i standaryzacje. Służą temu m.in. nasze warsztaty architektoniczne z klientem. Budujemy fundament, który nie „pęknie” przy wzroście skali.
  2. Implementacja i integracja. 
Wykorzystujemy potęgę ekosystemu Confluent, by płynnie połączyć Kafkę z systemami klienta. Skupiamy się na tym, by dane płynęły bez opóźnień i były bezpieczne. Tworzymy rozwiązania odporne na najróżniejsze możliwe przeploty zdarzeń. Dużą wagę przywiązujemy do testów – funkcjonalnych, ale też wydajnościowych i przeciążeniowych. Nie zapominamy o monitoringu (na przykład podpiętym pod topiki DLT), który pozwoli wychwytywać wszystkie niepożądane sytuacje w momencie ich zaistnienia. Naszym celem jest eliminacja „wąskich gardeł” już na etapie implementacji, a nie gaszenie pożarów na produkcji.
  3. Wsparcie powdrożeniowe, dalszy rozwój i optymalizacja 
W naszym podejściu nie mniej ważne od technologii i doświadczenia jest partnerstwo. Tu nie chodzi tylko o transfer wiedzy. Oczywiście, szkolimy zespół klienta, by czuł się pewnie w nowym środowisku. Ale na tym nasza rola się nie kończy. Najczęściej zostajemy z naszymi klientami, opiekujemy się rozwiązaniem i doradzamy, jak optymalizować architekturę wraz z ewolucją biznesu.

Hasło „IT Delivered” to dla nas obietnica, że rozwiązanie nie tylko „jest”, ale działa, zarabia i rozwija się razem z organizacją klienta.

Compliance i bezpieczeństwo w sektorze finansowym

Tomasz: Mamy dużo doświadczeń z projektowania i wdrażania rozwiązań w sektorach regulowanych, gdzie spełnienie wymogów branżowych i bezpieczeństwo są niezwykle ważne. Czy Apache Kafka także wspiera reguły compliance i bezpieczeństwa w sektorze finansowym?

Michał: Zdecydowanie tak – in4mates zrealizowało wiele projektów właśnie dla banków. Projektujemy architekturę spełniającą specyficzne wymagania takich organizacji. Wdrażamy mechanizmy szyfrowania, kontroli dostępu i audytu, dbając o zgodność z obowiązującymi standardami i regulacjami.

Tomasz: in4mates jest partnerem firmy Confluent. Jaką realną korzyść mają z tego klienci?

Michał: Confluent to firma założona przez twórców Kafki. Partnerstwo daje nam dostęp do szkoleń, wiedzy i standardów rekomendowanych bezpośrednio przez autorów technologii. Dzięki temu projektujemy rozwiązania klasy enterprise – gotowe na ogromną skalę i rygorystyczne wymogi regulacyjne. Razem z Confluent możemy wdrażać funkcje, których nie ma w darmowej wersji Kafki, takie jak zaawansowane Governance czy Security Control Center. Wykorzystanie mechanizmów RBAC oraz Audit Logs pozwala nam spełnić wymogi KNF oraz RODO w zakresie kontroli dostępu i pełnej rozliczalności operacji na danych – to kluczowe dla branży finansowej, dla której realizujemy znaczą część naszych projektów.

Tomasz: Jakie są najczęstsze problemy, które rozwiązujecie w istniejących już środowiskach?

Michał: Pojawiają się oczywiście problemy z wydajnością, skalowaniem, czy ginącymi komunikatami, ale często problem jest bardziej fundamentalny i dotyczy samego sposobu używania Kafka. Związane jest to najczęściej z brakiem wypracowanych i przestrzeganych standardów oraz wzorców dla producentów komunikatów, oraz jasnej wizji wykorzystywania danych z topików. Skutek potrafi być taki, że pieczołowicie publikowane na topiki dane są w praktyce dla konsumentów bezużyteczne.

Dlatego tak ważne jest zaprojektowanie właściwej architektury na początku projektu, bez tego ciężko mówić innowacji czy transformacji biznesowej. Przykład skuteczności? W jednym z dużych banków wdrożyliśmy rozwiązanie, w którym w pełni spersonalizowana oferta dla wszystkich klientów wyliczana jest w czasie rzeczywistym w oparciu o dane pochodzące z kilkudziesięciu topików Kafka, dzięki czemu może być im ona prezentowana w ułamku sekundy.

Tomasz: Na koniec – dla kogo tak naprawdę jest Kafka w wydaniu in4mates?

Michał: Dla każdej większej organizacji, w której obecne systemy nie nadążają za tempem rozwoju. Dla biznesu, który chce podejmować decyzje na podstawie tego, co dzieje się „tu i teraz”, a nie w oparciu o raporty z wczoraj. I dla architektów IT, którzy potrzebują stabilnego, skalowalnego HUB-a, który uprości ich architekturę. My sprawiamy, że ta technologia staje się przewidywalna i bezpieczna.


❓Masz pytania lub potrzebujesz wsparcia technologicznego?
📩 Napisz lub umów się na spotkanie z naszymi ekspertami:

Michał: michał.drabikowski@in4mates.com,
Tomek: tomasz.krol@in4mates.com tel. +48 504 142 361


Autorzy: Michał Drabikowski, Partner zarządzający w in4mates, Tomasz Król, Business Development Manager, in4mates