82 releases (54 major breaking)

new 54.2.0 Feb 16, 2025
54.0.0 Dec 23, 2024
53.4.0 Jan 18, 2025
53.3.0 Nov 20, 2024
0.16.0 Feb 7, 2020

#1900 in Database interfaces

Download history 20489/week @ 2024-10-30 17191/week @ 2024-11-06 17543/week @ 2024-11-13 21433/week @ 2024-11-20 14939/week @ 2024-11-27 16858/week @ 2024-12-04 17966/week @ 2024-12-11 17319/week @ 2024-12-18 12203/week @ 2024-12-25 15331/week @ 2025-01-01 18685/week @ 2025-01-08 19242/week @ 2025-01-15 19017/week @ 2025-01-22 17181/week @ 2025-01-29 24209/week @ 2025-02-05 20447/week @ 2025-02-12

84,066 downloads per month
Used in 34 crates (23 directly)

Apache-2.0

4.5MB
92K SLoC

Apache Arrow Flight

Crates.io

See the API documentation for examples and the full API.

The API documentation for most recent, unreleased code is available here.

Usage

Add this to your Cargo.toml:

[dependencies]
arrow-flight = "54.0.0"

Apache Arrow Flight is a gRPC based protocol for exchanging Arrow data between processes. See the blog post Introducing Apache Arrow Flight: A Framework for Fast Data Transport for more information.

This crate provides a Rust implementation of the Flight.proto gRPC protocol and examples that demonstrate how to build a Flight server implemented with tonic.

Feature Flags

  • flight-sql-experimental: Enables experimental support for Apache Arrow FlightSQL, a protocol for interacting with SQL databases.

  • tls: Enables tls on tonic

CLI

This crates offers a basic Apache Arrow FlightSQL command line interface.

The client can be installed from the repository:

$ cargo install --features=cli,flight-sql-experimental,tls --bin=flight_sql_client --path=. --locked

The client comes with extensive help text:

$ flight_sql_client help

A query can be executed using:

$ flight_sql_client --host example.com statement-query "SELECT 1;"
+----------+
| Int64(1) |
+----------+
| 1        |
+----------+

Dependencies

~10–25MB
~368K SLoC