Apache Beam
Maggiori informazioni
- Creatore
- Anno
- 2016
- Proprietario
- Apache Software Foundation
- Tipo
- Modello di programmazione
- Licenza
- Apache 2.0
- Sito ufficiale
- beam.apache.org
Un modello unificato per l'elaborazione batch e stream, in cui la stessa pipeline può girare su Flink, Spark o Dataflow.
Il nome salda insieme batch e stream. Nel 2016 Google ha donato ad Apache il modello alla base di Cloud Dataflow, con l'obiettivo di separare il modo in cui una pipeline viene espressa dal luogo in cui viene eseguita: la si scrive in Java, Python o Go, e un runner la traduce per Flink, Spark o Dataflow.
Il suo contributo più duraturo è il vocabolario del tempo. Beam distingue il tempo dell'evento dal tempo di elaborazione, gestisce i dati in ritardo con i watermark e lascia che i trigger decidano quando emettere il risultato di una finestra. Quel vocabolario si è diffuso ben oltre Beam. La promessa di portabilità, invece, si è realizzata solo a metà: i runner supportano sottoinsiemi diversi del modello, e spostare una pipeline dall'uno all'altro di solito richiede degli adattamenti.