Skip to content
/ arrow Public

Apache Arrow is the universal columnar format and multi-language toolbox for fast data interchange and in-memory analytics

License

Notifications You must be signed in to change notification settings

apache/arrow

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Folders and files

NameName
Last commit message
Last commit date
Jan 14, 2025
Dec 19, 2024
Jan 14, 2025
Jan 14, 2025
Jan 13, 2025
Jan 13, 2025
Jan 14, 2025
Dec 18, 2024
Jan 2, 2025
Dec 23, 2024
Jan 14, 2025
Dec 9, 2024
Dec 31, 2024
Dec 2, 2024
Jan 13, 2025
Nov 11, 2024
Sep 6, 2024
Jun 19, 2023
Sep 26, 2018
Sep 5, 2024
Dec 2, 2024
Jan 8, 2025
Nov 14, 2023
Jun 10, 2024
Feb 8, 2019
Mar 11, 2024
Jan 8, 2025
Nov 29, 2023
Dec 15, 2018
Dec 5, 2024
Sep 6, 2024
Apr 2, 2024
Jan 2, 2024
Oct 24, 2024
Aug 29, 2024
Nov 29, 2023
Jan 13, 2025
Aug 18, 2016

Repository files navigation

Apache Arrow

Fuzzing Status License Twitter Follow

Powering In-Memory Analytics

Apache Arrow is a universal columnar format and multi-language toolbox for fast data interchange and in-memory analytics. It contains a set of technologies that enable data systems to efficiently store, process, and move data.

Major components of the project include:

Arrow is an Apache Software Foundation project. Learn more at arrow.apache.org.

What's in the Arrow libraries?

The reference Arrow libraries contain many distinct software components:

  • Columnar vector and table-like containers (similar to data frames) supporting flat or nested types
  • Fast, language agnostic metadata messaging layer (using Google's Flatbuffers library)
  • Reference-counted off-heap buffer memory management, for zero-copy memory sharing and handling memory-mapped files
  • IO interfaces to local and remote filesystems
  • Self-describing binary wire formats (streaming and batch/file-like) for remote procedure calls (RPC) and interprocess communication (IPC)
  • Integration tests for verifying binary compatibility between the implementations (e.g. sending data from Java to C++)
  • Conversions to and from other in-memory data structures
  • Readers and writers for various widely-used file formats (such as Parquet, CSV)

Implementation status

The official Arrow libraries in this repository are in different stages of implementing the Arrow format and related features. See our current feature matrix on git main.

How to Contribute

Please read our latest project contribution guide.

Getting involved

Even if you do not plan to contribute to Apache Arrow itself or Arrow integrations in other projects, we'd be happy to have you involved: