29次重大版本更新
52.2.0 | 2024年7月28日 |
---|---|
52.0.0 | 2024年6月6日 |
51.0.0 | 2024年3月18日 |
50.0.0 | 2024年1月12日 |
23.0.0 | 2022年9月19日 |
690 在 算法 中排名
每月下载量 1,204,799
在 368 个 crate(直接使用59个)中使用
305KB
6K SLoC
Apache Arrow和Apache Parquet的本地Rust实现
欢迎使用Rust版本的Apache Arrow,这是一个流行的内存列式格式。
该仓库包含以下主要组件
Crate | 描述 | 最新API文档 | README |
---|---|---|---|
arrow |
核心功能(内存布局、数组、低级计算) | docs.rs | (README) |
arrow-flight |
支持Arrow-Flight IPC协议 | docs.rs | (README) |
object-store |
支持对象存储交互(aws、azure、gcp、本地、内存) | docs.rs | (README) |
parquet |
支持Parquet列式文件格式 | docs.rs | (README) |
parquet_derive |
一个用于派生任意简单结构的RecordWriter/RecordReader的crate | docs.rs | (README) |
该仓库中当前的开发版本API文档可以在这里找到。
版本发布和计划
arrow
和 parquet
crate
Arrow Rust项目大约每月发布一次,并遵循语义版本化。
由于维护者和测试带宽的限制,arrow
crate(包括arrow
、arrow-flight
等)将按照与parquet
和parquet-derive
crate相同的版本和计划发布。
该软件包每月发布一次。我们每个季度最多发布一次新的大版本(可能包含破坏性API更改),并在间隔月份发布增量小版本。有关更多信息,请参阅此票据。
为了降低维护负担,我们定期从master
分支发布(主要和次要)版本。关于如何处理具有破坏性API更改的PR的说明,请参阅贡献指南。
计划发布时间表
大约日期 | 版本 | 备注 |
---|---|---|
2024年9月 | 53.0.0 |
主要版本,可能包含破坏性API更改 |
2024年10月 | 53.1.0 |
次要版本,无破坏性API更改 |
2024年11月 | 53.2.0 |
次要版本,无破坏性API更改 |
2024年12月 | 54.0.0 |
主要版本,可能包含破坏性API更改 |
object_store
软件包
object_store
软件包独立于arrow
和parquet
软件包发布,并遵循语义版本控制。我们旨在大约每两个月发布一次新版本。
相关项目
在不同存储库中有几个相关软件包
Crate | 描述 | 文档 |
---|---|---|
datafusion |
支持SQL的内存查询引擎 | (README) |
ballista |
分布式查询执行 | (README) |
object_store_opendal |
使用opendal 作为object_store 后端 |
(README) |
这些软件包共同支持Rust中更广泛的分析计算功能。
例如,您可以使用datafusion
软件包编写SQL查询或DataFrame(使用parquet
软件包)来读取Parquet文件,使用Arrow的列格式(使用arrow
软件包)在内存中进行评估,然后发送到另一个进程(使用arrow-flight
软件包)。
一般来说,arrow
软件包提供使用Arrow数组的函数,而datafusion
软件包提供SQL中常见的大部分操作,包括join
和窗口函数。
您可以在各自的README中找到有关每个软件包的更多详细信息。
Arrow Rust 社区
dev@arrow.apache.org
邮件列表是Arrow社区的核心沟通渠道。有关注册说明和存档链接,请访问Arrow社区页面。所有主要公告和通信都在那里进行。
Rust Arrow社区还使用官方ASF Slack进行非正式讨论和协调。这是一个结识其他贡献者和获取贡献指导的好地方。加入我们的#arrow-rust
频道,并通过以下方式请求邀请
- 通过
dev@arrow.apache.org
邮件列表 - GitHub Discussions
- Discord频道
Rust实现使用GitHub问题作为新功能和错误修复的记录系统,这在发布过程中起着关键作用。
对于设计讨论,我们通常在Google文档上协作,并提交一个GitHub问题,链接到该文档。
更多信息请参阅贡献指南。
lib.rs
:
Apache Arrow Rust的低级缓冲区抽象
依赖项
约1MB
约24K SLoC