Apache Beam

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Apache Beam
Logo

Développeur Apache Software FoundationVoir et modifier les données sur Wikidata
Première version Voir et modifier les données sur Wikidata
Dernière version 0.1.0-incubating ()[1]
0.2.0 ()
0.6.0 ()[2]Voir et modifier les données sur Wikidata
Écrit en Java, Java et PythonVoir et modifier les données sur Wikidata
Environnement MultiplateformeVoir et modifier les données sur Wikidata
Licence Apache-2.0 (d)Voir et modifier les données sur Wikidata
Site web beam.apache.orgVoir et modifier les données sur Wikidata

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 Spark, et Google Cloud Dataflow[4].

Il a été appelé "uber-API pour le big data"[5].

L'histoire[modifier | modifier le code]

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 base de donnée à 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 10 janvier 2017 Apache Beam devient un projet top-level


Version Date de sortie initiale La dernière version Date de sortie
0.6.0 2017-03-11 0.6.0 2017-03-11
0.5.0 2017-02-02 0.5.0 2017-02-02
0.4.0 2016-12-29 0.4.0 2016-12-29
0.3.0 2016-10-31 0.3.0 2016-10-31
0.2.0 2016-08-08 0.2.0 2016-08-08
0.1.0 2016-06-15 0.1.0 2016-06-15

Voir aussi[modifier | modifier le code]

Références[modifier | modifier le code]

  1. https://beam.apache.org/beam/release/2016/06/15/first-release.html
  2. https://beam.apache.org/blog/2017/03/16/python-sdk-release.html
  3. Alex Woodie, « Apache Beam's Ambitious Goal: Unify Big Data Development », sur Datanami, (consulté le 4 août 2016)
  4. a et b « Cloud Dataflow - Batch & Stream Data Processing »
  5. Ian Pointer, « Apache Beam wants to be uber-API for big data », InfoWorld,
  6. Tyler Akidau, Eric Schmidt, Sam Whittle et Robert Bradshaw, « The dataflow model », Proceedings of the VLDB Endowment, vol. 8, no 12,‎ , p. 1792–1803 (DOI 10.14778/2824032.2824076, lire en ligne)
  7. 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 (DOI 10.1145/1806596.1806638, lire en ligne)
  8. Tyler Akidau, Sam Whittle, Alex Balikov et Kaya Bekiroğlu, « MillWheel », Proceedings of the VLDB Endowment, vol. 6, no 11,‎ , p. 1033–1044 (DOI 10.14778/2536222.2536229, lire en ligne)
  9. Ian Pointer, « Apache Beam wants to be uber-API for big data », InfoWorld (consulté le 4 août 2016)