apache/arrow

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

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 26 minutes ago
Added to GitGenius on January 3rd, 2025
Created on February 17th, 2016
Open Issues & Pull Requests: 2,561 (+0)
Number of forks: 4,237
Total Stargazers: 17,026 (+0)
Total Subscribers: 341 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 21.8 hours
Mean response time: 483.3 days
90th percentile: 1913.1 days
Tracked items: 6,892

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 74% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "Component: Continuous Integration" is answered fastest, typically in under an hour, while "Priority: Major" waits about 90 months. 65% of tracked open issues have had no activity in three months, so the open count overstates what is actively being worked. Only 4% of issues opened in the past year have been closed.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 2,184
New in 7 days: 15
Closed in 7 days: 20
Avg open age: 825 days
Stale 30+ days: 2,051
Stale 90+ days: 1,701

Recent activity

Opened in 7 days: 15
Closed in 7 days: 19
Comments in 7 days: 41
Events in 7 days: 164

Top labels

  • Type: enhancement (14,424)
  • Component: C++ (10,107)
  • Type: bug (9,960)
  • Component: Python (5,874)
  • Component: R (2,745)
  • Type: task (2,158)
  • Component: Continuous Integration (2,142)
  • Status: stale-warning (1,997)

Detailed Description

Apache Arrow is a columnar data format and cross-language toolkit maintained by the Apache Software Foundation, designed to enable fast data interchange and in-memory analytics across heterogeneous systems. The project provides a standardized in-memory representation of data that allows different programming languages and data systems to efficiently share, process, and analyze information without expensive serialization overhead.

The core of Apache Arrow consists of several interconnected components. The Arrow Columnar Format defines a standard and efficient in-memory representation for various data types, including nested structures. The Arrow IPC Format provides efficient serialization of columnar data and metadata for interprocess communication and cross-environment data exchange. The Arrow Flight RPC protocol, built on top of the IPC format, enables remote services to exchange Arrow data with application-defined semantics, making it suitable for storage servers and database systems. Additionally, ADBC (Arrow Database Connectivity) offers Arrow-powered APIs, drivers, and libraries for accessing databases and query engines.

The repository contains reference implementations across multiple programming languages. The main Apache Arrow repository includes C++ libraries, Python bindings, R libraries, Ruby libraries, and C bindings using GLib. Gandiva, an LLVM-based expression compiler, is integrated into the C++ codebase for optimized query execution. Separate repositories maintain implementations for Go, Java, JavaScript, Julia, Rust, Swift, and .NET, reflecting Arrow's commitment to true cross-language interoperability.

The Arrow libraries provide numerous software components beyond the core format. These include columnar vector and table-like containers supporting flat or nested types, a language-agnostic metadata messaging layer using Google's FlatBuffers, reference-counted off-heap buffer memory management for zero-copy data sharing, IO interfaces for local and remote filesystems, and self-describing binary wire formats for RPC and IPC. The project includes integration tests verifying binary compatibility between implementations and provides readers and writers for widely-used file formats such as Parquet and CSV.

Activity data shows substantial ongoing development and community engagement. The project maintains connections with other major data ecosystem projects including pandas, Apache DataFusion, and Microsoft VSCode through overlapping contributor networks, positioning Arrow as a central infrastructure component for the broader data engineering and analytics ecosystem.