The hudi-rs project aims to broaden the use of Apache Hudi for a diverse range of
users and projects.
| Source | Installation Command |
|---|---|
| PyPi | pip install hudi |
| Crates.io | cargo add hudi |
Example usage
[!NOTE] These examples expect a Hudi table exists at
/tmp/trips_table, created using the quick start guide.
Python
Read a Hudi table into a PyArrow table.
=
=
=
=
Rust (DataFusion)
cargo new my_project --bin && cd my_project
cargo add tokio@1 datafusion@42
cargo add hudi --features datafusion
Update src/main.rs with the code snippet below then cargo run.
use Arc;
use Result;
use ;
use HudiDataSource;
async
Work with cloud storage
Ensure cloud storage credentials are set properly as environment variables, e.g., AWS_*, AZURE_*, or GOOGLE_*.
Relevant storage environment variables will then be picked up. The target table's base uri with schemes such
as s3://, az://, or gs:// will be processed accordingly.
Alternatively, you can pass the storage configuration as options to the HudiTableBuilder or HudiDataSource.
Python
=
Rust (DataFusion)
use HudiDataSource;
async
Contributing
Check out the contributing guide for all the details about making contributions to the project.