Open-Source Wikis

/

Apache Arrow

/

Implementations

apache/arrow

Implementations

This repository hosts six language implementations of Apache Arrow that share a single C++ core. PyArrow, the R arrow package, the Ruby red-arrow gems, the C-GLib bindings, and the MATLAB bindings all build on top of libarrow.so (and its sister libraries libparquet, libgandiva, libarrow-flight, libarrow-dataset).

Independent implementations of the format spec live in separate repos and are not covered here:

Cross-language compatibility is verified by the integration test suite (see Testing).

Pages in this section

  • C++ — the core library at cpp/src/arrow/. Everything else builds on this.
  • Python (PyArrow) — Cython bindings in python/pyarrow/.
  • R — R6 + cpp11 bindings in r/, with a dplyr backend.
  • Ruby (Red Arrow) — Ruby gems in ruby/ built on C-GLib.
  • C-GLib — GObject wrappers in c_glib/.
  • MATLAB — MATLAB classes in matlab/.

How they relate

graph TB
    Cpp["C++ libarrow / libparquet / libgandiva (cpp/src)"]

    PyArrow["PyArrow (python/pyarrow)"] --> Cpp
    Rpkg["R arrow (r/)"] --> Cpp
    CGlib["C-GLib (c_glib/)"] --> Cpp
    Matlab["MATLAB (matlab/)"] --> Cpp

    Ruby["Red Arrow (ruby/)"] --> CGlib

The C++ library is the only implementation that talks directly to the format. Every other wrapper goes through it. The C-GLib layer also serves as a foundation for any GObject-introspection-aware language: Vala, Lua, Crystal, etc., can in principle use it without writing C++ code.

Per-implementation maintainers

Implementation Active maintainers
C++ Antoine Pitrou, Rossi Sun, Sutou Kouhei, Felipe Aramburu
PyArrow Hyukjin Kwon, Raúl Cumplido, Rok Mihevc, Antoine Pitrou
R Nic Crane, Hyukjin Kwon, Bryce Mecum
C-GLib Sten Larsson, Sutou Kouhei, Hiroyuki Sato
Ruby Sutou Kouhei
MATLAB Kevin Gurney, Sarah Gilmore (community)

These reflect the most active contributors over the last year derived from git log. CODEOWNERS-style assignments are not used by Arrow; bus factor is managed informally per subsystem.

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

Implementations – Apache Arrow wiki | Factory