Apache Arrow est un framework logiciel indépendant du langage, conçu pour le développement d'applications d'analyse de données traitant des données colonnaires. Il utilise un format de mémoire standardisé, orienté colonnes, capable de représenter des données plates et hiérarchiques pour des opérations analytiques efficaces sur les processeurs et cartes graphiques modernes[2],[3],[4],[5],[6]. Ceci réduit, voire élimine, les facteurs limitant la faisabilité du traitement de grands ensembles de données, tels que le coût, la volatilité ou les contraintes physiques de la mémoire vive dynamique.

Apache Arrow
Description de l'image Apache Arrow Logo.png.

Informations
Développé par Wes McKinney, Antoine Pitrou (d), Sutou Kouhei (d), Matt Topol (d) et Dremio (d)Voir et modifier les données sur Wikidata
Dernière version 24.0.0 (21 avril 2026)[1]Voir et modifier les données sur Wikidata
Dépôt github.com/apache/arrowVoir et modifier les données sur Wikidata
Licence Apache License 2.0
Site web arrow.apache.orgVoir et modifier les données sur Wikidata

Interopérabilité

modifier

Arrow est compatible avec Apache Parquet, Apache Iceberg Apache Spark, NumPy, PySpark, pandas et d'autres bibliothèques de traitement de données. Le projet inclut des bibliothèques logicielles natives écrites en C, C++, C#, Go, Java, JavaScript, Julia, MATLAB, Python (PyArrow[7] ), R, Ruby et Rust. Arrow permet des lectures sans copie et un accès et un échange rapides de données, sans surcharge de sérialisation, entre ces langages et systèmes[2].

Applications

modifier

Apache Arrow est utilisé dans divers domaines, notamment l'analyse de données[8], la génomique[9], et le cloud computing[10].

Comparaison avec Apache Parquet et ORC

modifier

Apache Parquet et Apache ORC sont des exemples courants de formats de données colonnaires sur disque. Apache Arrow vient en complément de ces formats de fichiers en étant destiné pour le traitement des données en mémoire[11]. Les optimisation dédiés aux le traitement en mémoire et le tockage sur disque diffèrent[12]. Les projets Arrow et Parquet incluent des bibliothèques permettant la lecture et l'écriture de données entre les deux formats[13].

Gouvernance

modifier

Apache Arrow a été annoncé par la Fondation Apache Software le 17 février 2016 [14] son développement étant mené par une coalition de développeurs issus d'autres projets d'analyse de données open source[15],[16],[6],[17],[18] Le code source initial et la bibliothèque Java ont été construits à partir du code d'Apache Drill[14].

Références

modifier
(en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Apache Arrow » (voir la liste des auteurs).
  1. « Release 24.0.0 », 21 avril 2026 (consulté le 22 avril 2026)
  2. a et b « Apache Arrow and Distributed Compute with Kubernetes », 13 décembre 2018
  3. Baer, « Apache Arrow: Lining Up The Ducks In A Row... Or Column », Seeking Alpha, 17 février 2016
  4. Baer, « Apache Arrow: The little data accelerator that could », ZDNet, 25 février 2019
  5. Hall, « Apache Arrow's Columnar Layouts of Data Could Accelerate Hadoop, Spark », The New Stack, 23 février 2016
  6. a et b Yegulalp, « Apache Arrow aims to speed access to big data », InfoWorld, 27 février 2016
  7. « Python — Apache Arrow v20.0.0 »
  8. Dinsmore T.W., Disruptive Analytics, Apress, Berkeley, CA, 2016, 97–116 p. (ISBN 978-1-4842-1312-4, DOI 10.1007/978-1-4842-1311-7_5), « In-Memory Analytics: Satisfying the Need for Speed »
  9. « Scalable genomics: from raw data to aligned reads on Apache YARN », IEEE International Conference on Big Data,‎ 2016, p. 1232–1241 (lire en ligne)
  10. Proceedings of the 16th Workshop on Hot Topics in Operating Systems, 2017, 138–143 p. (ISBN 978-1-4503-5068-6, DOI 10.1145/3102980.3103003), « Return of the Runtimes: Rethinking the Language Runtime System for the Cloud 3.0 Era »
  11. Le Dem, « Apache Arrow and Apache Parquet: Why We Needed Different Projects for Columnar Data, On Disk and In-Memory », KDnuggets
  12. « Apache Arrow vs. Parquet and ORC: Do we really need a third Apache project for columnar data representation? », 31 octobre 2017
  13. « PyArrow:Reading and Writing the Apache Parquet Format »
  14. a et b « The Apache® Software Foundation Announces Apache Arrow™ as a Top-Level Project » [archive du 13 mars 2016], The Apache Software Foundation Blog, 17 février 2016
  15. Martin, « Apache Foundation rushes out Apache Arrow as top-level project », The Register, 17 février 2016
  16. « Big data gets a new open-source project, Apache Arrow: It offers performance improvements of more than 100x on analytical workloads, the foundation says. » [archive du 27 juillet 2016], 17 février 2016 (consulté le 31 janvier 2018)
  17. Le Dem, « The first release of Apache Arrow », SD Times, 28 novembre 2016
  18. « Julien Le Dem on the Future of Column-Oriented Data Processing with Apache Arrow. »

Liens externes

modifier

Voir aussi

modifier

📚 Artikel Terkait di Wikipedia

Google DeepMind

Shilov, « Google unveils AlphaChip AI-assisted chip design technology — chip layout as a game for a computer » [archive du 4 décembre 2024], sur Tom's Hardware

Coupe maximum

Metaheuristics, Chapman, 2007. Michael Mitzenmacher et Eli Upfal, Probability and Computing: Randomized Algorithms and Probabilistic Analysis, Cambridge, 2005. (en)

Feuilles de style en cascade

les bugs de rendu CSS d'Internet Explorer Voir On having layout par Ingo Chao, et "HasLayout" Overview (Markus Mielke, Microsoft). « Netscape retarde

Ordinateur d'Harwell

EDSAC » [archive du 26 avril 2019], The National Museum of Computing (consulté le 20 mai 2018) « Layout of the WITCH Computer », sur computerconservationsociety

Josephine Jue

the manuscript, to Gary Singer for performing the final editing and page layout, and to Valene Censabella who typed all of the manuscripts and got the majority

Nombre de croisements (théorie des graphes)

Approximations of Crossings in Graph Drawings and VLSI Layout Areas », SIAM Journal on Computing, vol. 32, no 1,‎ 2003, p. 231–252 (DOI 10.1137/S0097539700373520)

Liste d'extensions de fichiers

BASIC (voir Turbo Basic, QuickBasic, VBA...). bat, BATch. bclim, Binary Ctr Layout IMage. Fichier image binaire Nintendo Ware pour les anciens jeux de Nintendo

Open Source Business Alliance

LibreOffice. La spécification « Layout-getreue Darstellung von OOXML-Dokumenten in Open Source Office Applikationen » (« Layout-faithful description of OOXML