Przejdź do głównej treści

Architektura Big Data - Lambda i Kappa

Katgoria: BUSINESS INTELLIGENCE / Utworzono: 21 sierpień 2017
Stale zwiększająca się ilość danych gromadzonych w firmach budzi nadzieję na odkrycie nowych, nieznanych dotąd zależności. Przetwarzanie dużych, nieustrukturyzowanych zbiorów wymaga stosowania wydajnych rozwiązań, które będą w stanie je odpowiednio procesować.
 

REKLAMA
ASSECO KSEF
 
Dużą zmianą było wprowadzenie koncepcji MapReduce, która jest używana przez wiele narzędzi wchodzących w skład ekosystemu Hadoop. Polega ona na wykorzystaniu wielu node’ów (komputerów), z których każdy odpowiedzialny jest za przetwarzanie mniejszej części całego zbioru danych. Obliczenia rozproszone szybko zyskały na popularności. Hadoop 1.0, który ujrzał światło dzienne 27 grudnia 2011 roku był jedną z pierwszych platform wykorzystywanych do przetwarzania dużych zbiorów danych w trybie batchowym. Rozwiązanie miało umożliwić przetwarzanie terabajtów danych, przy czym mogło to trwać godzinami, a nawet dniami.

Z biegiem lat potrzeby biznesowe zaczęły ewoluować, a technologia musiała iść naprzód, by sprostać stawianym przed nią nowym wyzwaniom. Oprócz zdolności do przetwarzania dużych zbiorów danych, zaczęto zauważać korzyści z procesowania ich w trybie rzeczywistym. Stwarza to znacznie większe możliwości, ponieważ dynamicznie zmieniające się uwarunkowania biznesowe wymagają szybszego dostępu do danych.

Pojawiło się wiele projektów umożliwiających pozyskiwanie i przetwarzanie danych w trybie rzeczywistym – np. Apache Kafka czy Spark Streaming. Podstawowym problemem pozostał brak wystarczającej wydajności, umożliwiającej dostatecznie szybkie przetwarzanie nie tylko napływających, nowych danych, ale również posiadanego już historycznego zbioru.

Chcąc przezwyciężyć te problemy powstało wiele koncepcji architektonicznych, które umożliwiają połączenie korzyści wynikających z przetwarzania danych w trybie batchowym, jak i w trybie real-time. Najczęściej wykorzystywane są koncepcje Lambda oraz Kappa.

Definicje pojęcia real-time

Pojęcie real time jest definiowane różnorodnie – często bardziej marketingowo niż w rzeczywistości. Można przyjąć następującą klasyfikację:
  • Macro batch >= 15 minut
  • Micro batch - >2 minuty ale < 15 minut
  • Near Real Time Decision Support - >=2 sekundy i <2 minut
  • Near Real Time Event Processing - > 50 ms i <2 sekund
  • Real Time < 50ms
W ekosystemie Big Data istnieje do dyspozycji wiele narzędzi, które można do tego celu wykorzystać. Są one przedstawione na grafice 1:

grafika 1 capgemini

Grafika 1: Przykładowe narzędzia z ekosystemu Big Data służące do przetwarzania danych w zależności od szybkości ich napływania.

Architektura Lambda

Zapewnienie równoległego przetwarzania dużych, nieustrukturyzowanych zbiorów danych oraz zapewnienia do nich nieustannego dostępu w czasie rzeczywistym możliwe jest poprzez zastosowanie architektury Lambda.

Założenie polega na stworzeniu dwóch osobnych przepływów, gdzie jeden odpowiedzialny jest za przetwarzanie danych w trybie wsadowym, natomiast drugi za dostęp do nich w trybie rzeczywistym. Stale napływający strumień danych kierowany jest do obu warstw.

Architektura Lambda została zobrazowana na grafice 2.

grafika 2 capgemini

Grafika 2: Schemat architektury Lambda.

W warstwie batch obliczenia wykonywane są na całym zbiorze danych. Odbywa się to kosztem czasu, ale otrzymane w zamian dane zawierają pełną historię i wysoką jakość. Zakłada się, że zbiór danych znajdujący się w warstwie batch ma formę niepodzielną, którą należy jedynie rozszerzać, aniżeli usuwać z niej dane. W ten sposób można zapewnić pełną historyzację i spójność danych.

Warstwa real-time przetwarza napływające dane w trybie rzeczywistym. Oferuje ona niski czas dostępu do danych, co przekłada się na możliwość szybszego pozyskania informacji. Niestety, brak dostępu do danych historycznych sprawia, że nie wszystkie obliczenia są możliwe do wykonania. Często jakość oraz wiarygodność danych pochodzących z warstwy real time nie jest tak wysoka, jak z warstwy batch. Te drugie należy uważać za bardziej wiarygodne, ale ze względu na dłuższy czas potrzebny na ich załadowanie, warstwa real-time okazuje się nieocenioną pomocą, chcąc zagwarantować możliwość przetwarzania danych w trybie rzeczywistym.

Warstwa dostępu jest miejscem, w którym tworzone są widoki na podstawie warstwy batch oraz real-time. Dane są agregowane w taki sposób, aby końcowy użytkownik widział je jako jedną, spójną całość, aniżeli dwa niezależne, całkiem odrębne systemy. Widoki powinny być przygotowane w taki sposób, aby zapewnić możliwość wykonywania wszelkiego rodzaju analiz ad-hoc, ciesząc się przy tym szybkim dostępem do danych.

Koncepcja architektury Lambda zapewnia wiele zalet, przede wszystkim doskonały kompromis między przetwarzaniem wsadowym i real-time. Największą i najczęściej wspominaną wadą jest konieczność utrzymywania dwóch niezależnych aplikacji – jednej do zasilania warstwy batch, natomiast drugiej do warstwy real-time. Narzędzia wykorzystywane w poszczególnych warstwach różnią się między sobą, więc ciężko jest dobrać jedno, które może być wykorzystane do dwóch celów. Jest to możliwe w przypadku Apache Spark, gdzie po zdefiniowaniu logiki, według której dane mają być przetwarzane, można ją wywołać w trybie batchowym, jak i w trybie Spark Streaming, który ze strumienia danych wejściowych tworzy tzw. micro-batch i pozwala na przetwarzanie ich w czasie niemalże rzeczywistym.

Architektura Kappa

W roku 2014 Jay Kreps w swoim blogu wprowadził termin architektury Kappa jako odpowiedź na krytykę związaną z implementacją oraz utrzymaniem systemów opartych o architekturę Lambda. Nowa architektura została oparta o cztery główne założenia:
 
  1. Wszystko jest strumieniem – strumień stanowi nieskończoną ilość skończonych paczek danych (batchów). Stąd każdy rodzaj zasilania danymi może być uważany za strumień.
  2. Dane są niezmienne (immutable) – dane surowe są persystowane w oryginalnej postaci i nie zmieniają się, dzięki czemu w każdej chwili można ich użyć ponownie.
  3. Reguła KISS – Keep is short and simple. W tym przypadku przez użycie wyłącznie jednego silnika do analizy danych zamiast kilku, jak w przypadku architektury Lambda.
  4. Możliwość odtworzenia stanu danych – kalkulacje i ich rezultaty mogą być odświeżane przez odtwarzanie danych historycznych i aktualnych bezpośrednio z tego samego strumienia danych w każdym momencie.

Krytyczne dla powyższych reguł jest zapewnienie niezmiennej i oryginalnej kolejności danych w strumieniu. Bez spełnienia tego warunku nie jest możliwe uzyskanie konsystentnych (deterministycznych) wyników obliczeń.

Opisane zasady dotyczące architektury Kappa zostały zobrazowane na grafice 3. Od razu rzuca się w oczy uproszczenie względem architektury Lambda:

grafika 3 capgemini

Grafika 3: Schemat architektury Kappa.

Podobnie jak w architekturze Lambda mamy warstwę Real-Time i warstwę Dostępu, które pełnią tutaj te same funkcje. Natomiast brak jest warstwy Batch, która stała się zbędna ponieważ historię można w każdej chwili odtworzyć ze strumienia danych w warstwie Dostępu przy pomocy identycznego silnika przetwarzania danych.


Autorzy:

Dawid Benski – lat 34, Starszy Architekt działu Insights & Data w firmie Capgemini Software Solutions Center. we Wrocławiu. Posiada 7 lat doświadczenia w projektach bazodanowych i Business Intelligence oraz 3 lata doświadczenia w projektach Big Data.

Michał Dura – lat 25, Inżynier Oprogramowania w dziale Insights & Data w firmie Capgemini Software Solutions Center. we Wrocławiu. Posiada 2 lata doświadczenia w projektach Big Data.

Najnowsze wiadomości

Europejski przemysł cyfryzuje się zbyt wolno – ERP, chmura i AI stają się koniecznością
BPSCEuropejski przemysł średniej wielkości wie, że cyfryzacja jest koniecznością, ale wciąż nie nadąża za tempem zmian. Ponad 60% firm ocenia swoje postępy w transformacji cyfrowej jako zbyt wolne, mimo rosnącej presji konkurencyjnej, regulacyjnej i kosztowej. Raport Forterro pokazuje wyraźną lukę między świadomością potrzeby inwestycji w chmurę, ERP i AI a realną zdolnością do ich wdrożenia – ograniczaną przez braki kompetencyjne, budżety i gotowość organizacyjną.
Nowa era komunikacji biznesowej, KSeF stał się faktem
SymfoniaOd 1 lutego 2026 roku, w Polsce z sukcesem rozpoczęła się nowa era elektronicznej komunikacji w biznesie. Od tego dnia przedsiębiorcy zaczynają posługiwać się wspólnym standardem we wzajemnej wymianie dokumentów – fakturą ustrukturyzowaną, znaną jako FA(3) lub po prostu faktura KSeF.
Smart Factory w skali globalnej: jak MOWI porządkuje produkcję dzięki danym w czasie rzeczywistym
accevoCyfryzacja produkcji w skali globalnej wymaga dziś spójnych danych, jednolitych standardów i decyzji podejmowanych w czasie rzeczywistym. W środowisku rozproszonych zakładów produkcyjnych tradycyjne raportowanie i lokalne narzędzia IT przestają wystarczać. Przykład MOWI pokazuje, jak wdrożenie rozwiązań Smart Factory i systemu MES może uporządkować zarządzanie produkcją w wielu lokalizacjach jednocześnie, zwiększając przejrzystość procesów, efektywność operacyjną oraz stabilność jakości.
Hakerzy nie kradną już tylko haseł. Oni kradną Twój czas i przyszłość. Jak chronić ERP przed paraliżem?
Hakerzy coraz rzadziej koncentrują się wyłącznie na kradzieży haseł. Ich prawdziwym celem jest dziś sparaliżowanie kluczowych systemów biznesowych, przejęcie kontroli nad danymi i wymuszenie kosztownych decyzji pod presją czasu. System ERP, jako centralny punkt zarządzania finansami, produkcją i logistyką, stał się dla cyberprzestępców najbardziej atrakcyjnym celem. Ten artykuł pokazuje, dlaczego tradycyjne zabezpieczenia przestają wystarczać i jak realnie chronić ERP przed atakami, które mogą zatrzymać firmę z dnia na dzień.
PSI automatyzuje logistykę Rossmanna: Wdrożenie WMS i MFC w Czechach
PSINowoczesne centrum logistyczne Rossmann w Czechach to przykład, jak strategiczne inwestycje w automatykę i systemy IT wspierają skalowanie biznesu w handlu detalicznym. Projekt realizowany przez PSI Polska obejmuje wdrożenie zaawansowanego systemu WMS oraz sterowania przepływem materiałów, tworząc w pełni zintegrowane środowisko dla obsługi rosnących wolumenów sprzedaży i dynamicznego rozwoju e-commerce. To wdrożenie pokazuje, jak technologia staje się fundamentem efektywnej, przyszłościowej logistyki.



Najnowsze artykuły

Magazyn bez błędów? Sprawdź, jak system WMS zmienia codzienność logistyki
SENTEWspółczesna logistyka wymaga nie tylko szybkości działania, lecz także maksymalnej precyzji – to właśnie te czynniki coraz częściej decydują o przewadze konkurencyjnej firm. Nawet drobne pomyłki w ewidencji stanów magazynowych, błędy przy przyjmowaniu dostaw czy nieprawidłowe rozmieszczenie towarów, mogą skutkować poważnymi stratami finansowymi i opóźnieniami w realizacji zamówień. W jaki sposób nowoczesne rozwiązania do zarządzania pomagają unikać takich sytuacji? Czym właściwie różni się tradycyjny system magazynowy od zaawansowanych rozwiązań klasy WMS (ang. Warehouse Management System)? I w jaki sposób inteligentne zarządzanie procesami magazynowymi realnie usprawnia codzienną pracę setek firm?
Jak maksymalizować zyski z MTO i MTS dzięki BPSC ERP?
BPSC FORTERROZysk przedsiębiorstwa produkcyjnego zależy nie tylko od wydajności maszyn, ale przede wszystkim od precyzyjnego planowania, realnych danych i umiejętnego zarządzania procesami. Dlatego firmy, które chcą skutecznie działać zarówno w modelu Make to Stock (MTS), jak i Make to Order (MTO), coraz częściej sięgają po rozwiązania klasy ERP, takie jak BPSC ERP.
Warsztaty analityczne i sesja discovery. Jak wygląda pierwszy etap współpracy z partnerem wdrożeniowym ERP
TODIS ConsultingWdrożenie systemu ERP to jedna z najważniejszych strategicznych decyzji, jakie może podjąć firma. To inwestycja, która ma zrewolucjonizować procesy, zwiększyć efektywność i dać przewagę konkurencyjną. Jednak droga do sukcesu jest pełna potencjalnych pułapek. Wielu menedżerów obawia się nieprzewidzianych kosztów, oporu zespołu czy niedopasowania systemu do realnych potrzeb. Jak zminimalizować to ryzyko? Kluczem jest solidne przygotowanie. Zanim padnie słowo „wdrażamy”, konieczne jest przeprowadzenie trzech fundamentalnych etapów: warsztatów analitycznych, sesji discovery oraz analizy przedwdrożeniowej ERP. To nie są zbędne formalności, ale fundament, na którym zbudujesz sukces całego projektu.
Strategia migracji danych do nowego systemu ERP. Metody, ryzyka i najlepsze praktyki
TODISWdrożenie nowego systemu ERP to dla wielu firm nie tylko krok w stronę unowocześnienia procesów biznesowych, ale także ogromne przedsięwzięcie logistyczne i technologiczne. Aby nowy system ERP zaczął efektywnie wspierać działalność organizacji, kluczowe jest odpowiednie przygotowanie danych, które muszą zostać bezpiecznie i precyzyjnie przeniesione ze starego systemu. Migracja danych ERP to skomplikowany proces, wymagający zarówno zaawansowanej wiedzy technologicznej, jak i dokładnego planowania na poziomie strategicznym. W tym artykule przybliżymy najlepsze metody, wskażemy najczęstsze ryzyka oraz podpowiemy, jak przeprowadzić migrację krok po kroku.
Strategiczna przewaga czy kosztowny mit? Kto wygrywa dzięki chmurze?
Chmura miała być odpowiedzią na wyzwania sektora finansowego: przestarzałą infrastrukturę, rozproszone dane, rosnące oczekiwania klientów i klientek. Dziś korzysta z niej już 91% instytucji, a mimo to tylko nieliczne mówią o realnych efektach. Zaledwie 12% firm maksymalizuje potencjał chmury – tworzy skalowalne platformy, wdraża GenAI, monetyzuje dane. Reszta? Często grzęźnie w kosztach, integracjach i braku kompetencji. Różnica nie tkwi w technologii, ale w strategii – i to ona może zadecydować o miejscu w sektorze, który właśnie wchodzi w kolejną fazę transformacji.

Przeczytaj Również

Real-Time Intelligence – od trendu do biznesowego must-have

Sposób prowadzenia działalności gospodarczej dynamicznie się zmienia. Firmy muszą stale dostosowywa… / Czytaj więcej

EPM – co to jest? Czy jest alternatywą dla BI?

Nowoczesne systemy BI i EPM dostarczają wiedzy potrzebnej do efektywnego zarządzania firmą. Czy zna… / Czytaj więcej

W jaki sposób firmy zwiększają swoją odporność na zmiany?

Do zwiększenia odporności na zmiany, konieczna jest pełna kontrola nad codziennymi procesami zapewn… / Czytaj więcej

Dlaczego systemy kontrolingowe są potrzebne współczesnym firmom?

Narzędzia Corporate Performance Management (CPM) pozwalają na przyśpieszenie tempa podejmowania dec… / Czytaj więcej

Hurtownie danych – funkcje i znaczenie dla BI

Przepisów na sukces biznesu jest na rynku wiele. Nie ulega jednak wątpliwości, że jednym z kluczowy… / Czytaj więcej

Po co dane w handlu? Okazuje się, że ich analityka może dać nawet 30 proc. większe zyski!

Jak wynika z badania firmy doradczej Capgemni, producenci FMCG oraz firmy związane z handlem detali… / Czytaj więcej