首页
/ Daft v0.4.4版本发布:数据框架性能与功能全面升级

Daft v0.4.4版本发布:数据框架性能与功能全面升级

2025-06-17 10:09:08作者:羿妍玫Ivan

Daft是一个高性能的分布式数据框架,专为大规模数据处理和分析而设计。它结合了Python生态系统的易用性和Rust底层的高性能,为用户提供了强大的数据处理能力。最新发布的v0.4.4版本带来了一系列重要的性能优化和功能增强,进一步提升了框架的实用性和效率。

核心功能增强

本次版本在SQL支持方面取得了显著进展。新增了SELECT语句无需FROM子句的支持,这使得简单的值查询变得更加直观和方便。同时,SQL数据类型支持得到了改进,为开发者提供了更丰富的数据类型选择。

在聚合函数方面,v0.4.4引入了list_unique和Set聚合功能,以及bool_and和bool_or聚合函数,极大地丰富了数据分析的能力。特别是新增的.summarize()方法,可以方便地计算数据集的统计信息,简化了数据分析流程。

会话管理功能是本版本的另一大亮点。新增的Session类为Python用户提供了更直观的接口,取代了直接使用DaftCatalog的方式,使得连接状态管理更加清晰和易于使用。

性能优化

性能方面,v0.4.4进行了多项重要改进。哈希连接操作现在采用顺序物化左右两侧数据的策略,减少了内存使用并提高了处理效率。无序扫描任务现在能够正确缓冲,提高了I/O性能。

特别值得一提的是并行表达式评估的引入,显著提升了复杂表达式的计算速度。此外,利用Parquet元数据进行模式推断来获取准确的扫描任务统计信息,进一步优化了数据读取性能。

数据类型与表达式增强

数据类型系统在本版本中得到了扩展和完善。新增了列表构造器功能,可以直接在表达式和SQL API中创建列表。同时改进了布尔类型的字符串转换和空值传播处理,使得类型转换更加可靠。

排序功能也得到了增强,新增了nulls first内核支持,为包含空值的数据排序提供了更灵活的控制。

架构改进

在架构层面,v0.4.4进行了多项重构工作。将DaftContext移植到Rust侧,提高了上下文管理的效率。to_struct方法被简化为struct,使API更加简洁。Table被重命名为RecordBatch,使命名更加准确反映其功能。

连接顺序优化器现在采用暴力搜索策略,能够找到更优的连接顺序,提升复杂查询的性能。Unity托管表的读取功能也得到了修复,提高了数据访问的可靠性。

总结

Daft v0.4.4版本在功能丰富性、性能优化和架构改进方面都取得了显著进展。这些改进使得Daft在数据处理和分析领域更具竞争力,为用户提供了更强大、更高效的工具。特别是SQL支持的增强和会话管理的引入,大大提升了框架的易用性,而性能优化则确保了大规模数据处理的效率。

随着这些新特性的加入,Daft正在逐步成为一个功能全面、性能出色的分布式数据处理框架,值得数据工程师和分析师们关注和采用。

登录后查看全文
热门项目推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
176
261
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
858
509
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
129
182
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
257
300
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
93
15
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
331
1.08 K
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
397
370
note-gennote-gen
一款跨平台的 Markdown AI 笔记软件,致力于使用 AI 建立记录和写作的桥梁。
TSX
83
4
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.07 K
0
kernelkernel
deepin linux kernel
C
22
5