delta-io/delta-rs · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈
一个用于 Delta Lake 的原生 Rust 库,并提供 Python 绑定
Python 文档
·
Rust 文档
·
报告 Bug
·
请求功能
·
路线图
Delta Lake 项目旨在通过提供面向开发者和集成者的原生底层 API,以及让您轻松查询、检查和操作 Delta Lake 的高级操作 API,为尽可能多的用户和项目释放 Deltalake 的潜力。
| 来源 | 下载量 | 安装命令 | 文档 |
|---|---|---|---|
| PyPi | pip install deltalake | 文档 | |
| Crates.io | cargo add deltalake | 文档 |
快速开始
deltalake 库旨在采用数据处理中其他库的模式,
因此入门过程应该看起来很熟悉。
from deltalake import DeltaTable, write_deltalake
import pandas as pd
# write some data into a delta table
df = pd.DataFrame({"id": [1, 2], "value": ["foo", "boo"]})
write_deltalake("./data/delta", df)
# Load data from the delta table
dt = DeltaTable("./data/delta")
df2 = dt.to_pandas()
assert df.equals(df2)
相同的表也可以使用核心 Rust crate 加载:
use deltalake::{open_table, DeltaTableError};
use url::Url;
#[tokio::main]
async fn main() -> Result<(), DeltaTableError> {
// open the table written in python
let delta_path = Url::from_directory_path("/abs/data/delta").unwrap();
let table = open_table(delta_path).await?;
// show all active files in the table
let files: Vec<_> = table.get_file_uris()?.collect();
println!("{files:?}");
Ok(())
}
你也可以在 Docker 中尝试 Delta Lake,参见 DockerHub | Docker Repo
参与贡献
delta-rs 团队致力于营造
一个友好的社区氛围。
- 加入我们的 Slack 工作区。
- 报告问题。
- 想要贡献代码?
集成
与 delta-rs 互操作的库和框架 - 按字母顺序排列。
功能
查看完整的功能表。