Rust object_store crate

Clone this repo:
  1. dbdef73 chore: prepare `0.12.3` release (#437) by Marco Neumann · 3 days ago main
  2. 87f0b8d feat (azure): support for account in 'az://' URLs (#403) by ByteBaker · 6 days ago
  3. b5001d4 Minor: Update release schedule on README (#429) by Andrew Lamb · 6 days ago
  4. 0478be4 feat: retry on 429 and 408 (#426) by Chris · 6 days ago
  5. 83235d1 fix(gcp): don't panic if read pem fails (#421) by HugoCasa · 6 days ago

Rust Object Store

A focused, easy to use, idiomatic, high performance, async object store library for interacting with object stores.

Using this crate, the same binary and code can easily run in multiple clouds and local test environments, via a simple runtime configuration change. Supported object stores include:

Originally developed by InfluxData and later donated to Apache Arrow.

See docs.rs for usage instructions

See CONTRIBUTING.md to learn how to contribute to this project.

Support for wasm32-unknown-unknown target

It's possible to build object_store for the wasm32-unknown-unknown target, however the cloud storage features aws, azure, gcp, and http are not supported.

cargo build -p object_store --target wasm32-unknown-unknown

Related Apache Crates

Here are several related crates in different repositories from other Apache projects.

CrateDescriptionDocumentation
object_store_opendalUse opendal as object_store backend(README)

Community Extensions

There following community maintained crates provide additional functionality for object_store and are NOT governed by the Apache Software Foundation. We list them below in the hope they may be useful, but they are not official Apache projects or endorsed by the Apache Arrow project.

CrateDescriptionDocumentation
hdfs_native_object_storeUse HDFS as object_store backend(README)
ic_object_storeUse ICP blockchain as object_store backend(README)
anda_object_storeExtends the object_store with metadata management and AES-256-GCM encryption(README)

Release Schedule

The object_store crate follows Semantic Versioning. We aim to release new versions approximately every 2 months.

Please see the release tracker for an up to date release schedule and to track the progress of upcoming releases.

Planned Release Schedule

Approximate DateVersionNotesTicket
July 20250.12.3Minor, NO breaking API changes#428
TBD0.13.0Major, breaking API changes#367
TBD0.13.1Minor, NO breaking API changes#393