Skip to main content

object_store_opendal

object_store_opendal is an integration which uses OpenDAL as a backend for the object_store.

OpenDAL object_store Binding

This crate intends to build an object_store binding.

The OpendalStore uses the opendal crate to interact with the underlying object storage system. The Operator is used to create a new OpendalStore instance. The OpendalStore uses the Operator to perform operations on the object storage system, such as put, get, delete, and list.

Examples

Firstly, you need to add the following dependencies to your Cargo.toml:

[dependencies]
object_store = "0.10.0"
object_store_opendal = "0.44.0"
opendal = { version = "0.47.0", features = ["services-s3"] }

[!NOTE]

The current version we support is object store 0.10.

Then you can use the OpendalStore as in the example.

API

The OpendalStore implements the ObjectStore trait, which provides the following methods:

MethodDescriptionlink
putPut an object into the store.put
getGet an object from the store.get
get_rangeGet a range of bytes from an object in the store.get_range
headGet the metadata of an object in the store.head
deleteDelete an object from the store.delete
listList objects in the store.list
list_with_offsetList objects in the store with an offset.list_with_offset
list_with_delimiterList objects in the store with a delimiter.list_with_delimiter