Apache Flink - Elaborazione batch vs elaborazione in tempo reale

In termini di Big Data, esistono due tipi di elaborazione:

  • Elaborazione in lotti
  • Elaborazione in tempo reale

L'elaborazione basata sui dati raccolti nel tempo è denominata Elaborazione batch. Ad esempio, un direttore di banca desidera elaborare i dati relativi a un mese precedente (raccolti nel tempo) per conoscere il numero di assegni annullati nell'ultimo mese.

L'elaborazione basata su dati immediati per risultati immediati è denominata elaborazione in tempo reale. Ad esempio, un direttore di banca che riceve un avviso di frode immediatamente dopo che si è verificata una transazione di frode (risultato immediato).

La tabella riportata di seguito elenca le differenze tra elaborazione in batch e in tempo reale -

Elaborazione in lotti Elaborazione in tempo reale

File statici

Flussi di eventi

Elaborato periodicamente in minuti, ore, giorni ecc.

Elaborato immediatamente

nanosecondi

Dati passati su archiviazione su disco

Nella memoria di archiviazione

Esempio: generazione di fatture

Esempio: avviso di transazione bancomat

In questi giorni, l'elaborazione in tempo reale viene utilizzata molto in ogni organizzazione. Casi d'uso come il rilevamento di frodi, avvisi in tempo reale nel settore sanitario e avvisi di attacchi di rete richiedono l'elaborazione in tempo reale di dati istantanei; un ritardo anche di pochi millisecondi può avere un impatto enorme.

Uno strumento ideale per tali casi d'uso in tempo reale sarebbe quello che può inserire dati come flusso e non come batch. Apache Flink è quello strumento di elaborazione in tempo reale.