Procesarea fluxurilor de date gestionează datele în mod continuu pe măsură ce acestea sosesc. În loc să colecteze datele în loturi și să le proceseze la intervale regulate, procesoarele de flux analizează fiecare eveniment pe măsură ce acesta trece prin sistem. O tranzacție cu cardul de credit este evaluată pentru fraudă în milisecunde. O citire a unui senzor declanșează o alertă atunci când aceasta depășește un prag. Un clickstream actualizează un model de recomandări în timp real. Procesarea are loc în mișcare, nu în repaus.
Arhitectura diferă de cea a procesării batch. Datele sosesc prin cozi de mesaje precum Kafka sau Kinesis. Procesoarele de flux precum Flink, Spark Streaming sau Kafka Streams consumă evenimentele, aplică transformări și emit rezultate. Sistemul trebuie să gestioneze evenimentele care sosesc târziu, datele în afara ordinii și semantica „exactly-once”. Acestea sunt probleme dificile. Evenimentele întârziate necesită filigrane pentru a decide când o fereastră de timp este completă. Evenimentele în afara ordinii necesită buffering și reordonare. Procesarea „exactly-once” necesită coordonare între sursă, procesor și receptor. Realizarea corectă a acestor procese este complexă. Când sunt greșite, rezultatele sunt inconsistente sau duplicate. Procesarea fluxului este puternică pentru cazurile de utilizare care necesită informații imediate. Este exagerată pentru rapoartele nocturne. Alegerea între batch și flux depinde de cerința de latență. Dacă minutele sau orele sunt acceptabile, procesarea batch este mai simplă și mai ieftină. Dacă secundele contează, fluxul este singura opțiune.
Caracteristicile de procesare a fluxului
- Continuu — procesează evenimentele pe măsură ce sosesc
- Latență redusă — milisecunde până la secunde
- Stateful — menține starea în timpul evenimentelor
- Complex — gestionează datele întârziate și neordonate
- Scalabil — se distribuie pe mai multe noduri
Procesarea fluxurilor este o procesare în loturi, inversată. În loc să aștepte acumularea datelor, aceasta acționează asupra fiecărui eveniment pe măsură ce apare.
Comments
No comments yet. Be the first to share a thought.
Leave a comment