L'article doit être débarrassé d'une partie de son jargon ().
Sa qualité peut être largement améliorée en utilisant un vocabulaire plus directement compréhensible.
Discutez des points à améliorer en page de discussion.
Apache Beam est un modèle de programmation unifiée open source pour définir et exécuter des flux de données, y compris ETL, traitement par lot et en flux (en continu)[3].
Les flux Beam sont définis à l'aide des SDKs et exécutés dans l'un des runners supportés par Beam (back-ends de traitement distribués), y compris Apache Flink, Apache Apex, Apache Samza, Apache Spark et Google Cloud Dataflow[4].
Apache Beam[4] est une implémentation du modèle de Dataflow[6]. Le modèle Dataflow est basé sur des travaux antérieurs sur des abstractions de traitements distribués sur Google, en particulier sur FlumeJava[7] et Millwheel[8],[9].
Google a publié une implémentation SDK ouverte du modèle Dataflow en 2014 et un environnement pour exécuter Dataflows localement (non distribué) ainsi que dans le service Google Cloud Platform.
En 2016, Google a fait don du SDK de base ainsi que de la mise en place d'un runner local et d'un ensemble d'E/S (connecteurs de données) pour accéder aux services de données Google Cloud Platform à l'Apache Software Foundation.
D'autres sociétés et membres de la communauté ont contribué à la mise en place de plates-formes d'exécution distribuées, ainsi qu'à de nouvelles E/S pour les intégrer à Beam Runners aux bases de données existantes, aux bases de données à valeur-clé et aux messages système. En outre, de nouvelles DSL ont été proposées pour prendre en charge des besoins spécifiques sur le modèle Beam.
Le 2017 Apache Beam devient un projet top-level[10].
↑Tyler Akidau, Eric Schmidt, Sam Whittle et Robert Bradshaw, « The dataflow model », Proceedings of the VLDB Endowment, vol. 8, no 12, , p. 1792–1803 (DOI10.14778/2824032.2824076, lire en ligne, consulté le )
↑Craig Chambers, Ashish Raniwala, Frances Perry et Stephen Adams, « FlumeJava: Easy, Efficient Data-parallel Pipelines », Proceedings of the 31st ACM Sigplan Conference on Programming Language Design and Implementation, ACM, , p. 363–375 (DOI10.1145/1806596.1806638, lire en ligne, consulté le )
↑Tyler Akidau, Sam Whittle, Alex Balikov et Kaya Bekiroğlu, « MillWheel », Proceedings of the VLDB Endowment, vol. 6, no 11, , p. 1033–1044 (DOI10.14778/2536222.2536229, lire en ligne, consulté le )