各语言实现分处不同仓库,如 .NET、Go、Java、JS、Rust、Swift 需到对应独立仓库获取;各语言库对 Arrow 格式的实现进度不一,使用前需查特性矩阵确认支持范围
arrow
apacheApache-2.0活跃维护跨语言的列式内存格式与工具箱,让不同系统之间零拷贝交换数据,并加速内存分析。
Apache Arrow is the universal columnar format and multi-language toolbox for fast data interchange and in-memory analytics
跨语言的列式内存格式与工具箱,让数据系统之间高效存储、处理和传输数据
跨语言的列式内存格式与工具箱,让不同系统之间零拷贝交换数据,并加速内存分析。
核心能力
- 定义标准列式内存格式,支持扁平与嵌套类型
- 提供 Arrow IPC 格式,跨进程与异构环境高效序列化
- 基于 FlatBuffers 的语言无关元数据消息层
- 引用计数堆外内存管理,支持零拷贝与内存映射文件
- 提供 Parquet、CSV 等常用文件格式的读写器
容易踩的坑
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
- apache-arrow-26.0.1Apache Arrow 26.0.1最新正式版2026-11-03 · 2026-11-03 08:52 UTC
Release Notes URL: https://arrow.apache.org/release/26.0.1.html
- apache-arrow-26.0.1-rc1Apache Arrow 26.0.1 RC1pre-release2026-10-30 · 2026-10-30 18:36 UTC
查看更新说明
Release Notes: Release Candidate: 26.0.1 RC1
- apache-arrow-26.0.0Apache Arrow 26.0.02026-10-09 · 2026-10-09 07:37 UTC
查看更新说明
Release Notes URL: https://arrow.apache.org/release/26.0.0.html
- apache-arrow-26.0.0-rc0Apache Arrow 26.0.0 RC0pre-release2026-10-05 · 2026-10-05 14:59 UTC
查看更新说明
Release Notes: Release Candidate: 26.0.0 RC0
- apache-arrow-25.0.1Apache Arrow 25.0.12026-08-10 · 2026-08-10 06:47 UTC
查看更新说明
Release Notes URL: https://arrow.apache.org/release/25.0.1.html
Apache Arrow
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:
- The Arrow Columnar Format: a standard and efficient in-memory representation of various datatypes, plain or nested
- The Arrow IPC Format: an efficient serialization of the Arrow format and associated metadata, for communication between processes and heterogeneous environments
- ADBC (Arrow Database Connectivity)
↗: Arrow-powered API, drivers, and libraries for access to databases and query engines - The Arrow Flight RPC protocol: based on the Arrow IPC format, a building block for remote services exchanging Arrow data with application-defined semantics (for example a storage server or a database)
- C++ libraries
- C bindings using GLib
- .NET libraries
↗ - Gandiva: an LLVM-based Arrow expression compiler, part of the C++ codebase
- Go libraries
↗ - Java libraries
↗ - JavaScript libraries
↗ - Julia implementation
↗ - Python libraries
- R libraries
- Ruby libraries
- Rust libraries
↗ - Swift libraries
↗
The ↗ icon denotes that this component of the project is maintained in a separate
repository.
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.
If you are using AI coding tools, please review our AI-generated code guidance.
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:
- Join the mailing list: send an email to [email protected]. Share your ideas and use cases for the project.
- Follow our activity on GitHub issues
- Learn the format
- Contribute code to one of the reference implementations
Continuous Integration Sponsors
We use runs-on for managing the project self-hosted runners. We use AWS for some of the required infrastructure for the project.