L'Apache Arrow IPC Stream (.arrow) è un formato di file binario progettato per il trasferimento e l'archiviazione efficiente dei dati, in particolare all'interno dell'ecosistema Apache Arrow. È definito come un formato di memoria colonnare (columnar memory format), il che significa che i dati sono organizzati per colonne anziché per righe, un approccio estremamente vantaggioso per i carichi di lavoro analitici. Questo formato facilita la condivisione dei dati a copia zero (zero-copy data sharing) tra processi e sistemi, riducendo significativamente l'overhead e migliorando le prestazioni complessive. Gli stream Arrow IPC sono tipicamente utilizzati per trasferire grandi set di dati tra applicazioni che supportano il formato Arrow, come motori di elaborazione dati, database e framework di machine learning. Il formato include metadati che descrivono lo schema dei dati, consentendo uno scambio di dati auto-descrittivo. È ottimizzato per una serializzazione e deserializzazione rapida, rendendolo ideale per l'elaborazione dei dati in tempo reale e il calcolo ad alte prestazioni (HPC). Il formato è agnostico rispetto al linguaggio (language-agnostic), con implementazioni disponibili in vari linguaggi di programmazione, tra cui Python, Java, C++ e R. L'estensione .arrow rappresenta in genere uno stream di dati Arrow, che può essere un singolo batch o una sequenza di batch che rappresentano un set di dati più ampio. Il formato è progettato per essere estensibile e supporta vari tipi di dati e codifiche.