docs(parquet): add OpenDAL read and write example - #11014
Open
Xuanwo wants to merge 3 commits into
Open
Conversation
Xuanwo
marked this pull request as ready for review
September 10, 2026 09:29
Member
Author
|
cc @alamb not sure if here is a good place, looking for your suggestion. |
alamb
approved these changes
Sep 10, 2026
| tokio = { version = "1.0", default-features = false, features = ["macros", "rt-multi-thread", "io-util", "fs", "sync"] } | ||
| rand = { version = "0.10", default-features = false, features = ["std", "std_rng", "thread_rng"] } | ||
| object_store = { workspace = true, features = ["azure", "fs"] } | ||
| opendal = { version = "0.59.1", default-features = false, features = ["services-memory"] } |
Contributor
There was a problem hiding this comment.
Can we please make the dependency optional?
Member
Author
There was a problem hiding this comment.
opendal is added as dev-dependency only which can't be an optinal dep 😄
I'm open to move it to dependencies and set it as optional, but this would expose a new feature gate on parquet side. I feel it didn't worth it.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Which issue does this PR close?
Related to #10308.
Rationale for this change
Demonstrate how to use OpenDAL with Parquet's generic async I/O interfaces, alongside the existing object_store example.
What changes are included in this PR?
Add an in-memory read/write example with AsyncFileReader and AsyncFileWriter adapters and a SpawnedReader demonstration. Point application developers to parquet_opendal for ready-made adapters. OpenDAL 0.59 is a development dependency with only the memory service enabled.
Are these changes tested?
The example asserts that both ordinary and dedicated-runtime reads reproduce the written RecordBatch. Formatting and whitespace checks pass.
Are there any user-facing changes?
A new example, runnable with
cargo run -p parquet --example opendal --features async. No public API changes. OpenDAL 0.59 requires Rust 1.91, above this workspace's declared Rust 1.88 MSRV; this affects development targets that resolve/build the new dependency.