Apache Arrow — fichier .arrow

stable

Format de données en mémoire columnaire, conçu pour l'échange à très haute vitesse entre outils d'analyse de données.

Apache Arrow définit avant tout une représentation de données en mémoire, pensée pour être échangée entre différents langages et outils (Python, R, Java, C++) sans étape de conversion coûteuse — le fichier .arrow n’en est que la sérialisation sur disque de cette même représentation, ce qui permet de charger un fichier directement en mémoire quasiment sans traitement.

Sa signature textuelle “ARROW1” ouvre et referme le fichier (le même motif apparaît aussi juste avant la fin), ce qui permet de vérifier son intégrité aux deux extrémités. Le format Feather, aujourd’hui simple alias du format fichier Arrow, a longtemps désigné cette même sérialisation avant que les deux projets ne convergent officiellement.

Contrairement au Parquet, optimisé pour une compression maximale au repos sur disque, le format Arrow privilégie une structure identique en mémoire et sur disque : lire un fichier Arrow ne nécessite donc aucune étape de décompression ou de réorganisation, ce qui le rend particulièrement adapté à l’échange rapide entre processus plutôt qu’au stockage longue durée.

Ce choix de conception explique pourquoi de nombreux outils d’analyse de données (Pandas, Spark, DuckDB) implémentent Arrow comme format d’échange interne, même quand les données sont stockées ailleurs au format Parquet pour l’archivage.

Le protocole Arrow Flight, construit au-dessus de gRPC, permet de transférer de gros volumes de données Arrow entre systèmes distribués sans réencodage intermédiaire ni copie mémoire superflue, un gain de performance direct par rapport aux protocoles d’échange de données classiques qui doivent sérialiser puis désérialiser à chaque extrémité.

Le projet a été initié conjointement par plusieurs figures majeures des écosystèmes pandas et Spark, précisément pour mettre fin à la multiplication de convertisseurs de données propres à chaque paire d’outils, un problème que la représentation en mémoire commune d’Arrow résout par construction plutôt qu’au cas par cas.

Signature binaire

Diagramme de la signature binaire du format Apache Arrow, octets mis en évidence
HexadécimalOffset
41 52 52 4F 57 31 00 000

Vérifier qu'un fichier porte bien cette signature →

Questions fréquentes

Comment ouvrir un fichier .arrow ?

Pandas / PyArrow permet d'ouvrir gratuitement un fichier .arrow. Voir la liste complète des logiciels compatibles ci-contre.

Quel est le type MIME du format Apache Arrow ?

Le type MIME du format Apache Arrow est application/vnd.apache.arrow.file.

Le format Apache Arrow (.arrow) est-il encore utilisé aujourd'hui ?

Oui, le format Apache Arrow est stable et toujours largement utilisé, sans signe de déclin.

Peut-on ouvrir un fichier .arrow sur mobile, sans installer d'application ?

Aucun outil web n'est référencé sur cette fiche pour ce format : l'ouverture nécessite un logiciel de bureau (voir la liste « Avec quoi l'ouvrir » ci-contre).

Pourquoi mon fichier .arrow ne s'ouvre-t-il pas ?

Les causes les plus fréquentes sont l'absence de logiciel compatible installé, un téléchargement ou un transfert incomplet, ou une extension qui ne correspond plus au contenu réel du fichier. Voir le guide complet sur les causes possibles, ou vérifier le format réel avec l'identifieur de fichier.

Un fichier ne s'ouvre pas : les causes possibles →

Comment savoir si un fichier est corrompu →

Sources

Dernière mise à jour :