英文版移步:https://databend.rs/blog/2023-01-11-databend-weekly
Databend 是一款强大的云数仓。专为弹性和高效设计。自由且开源。即刻体验云服务:https://app.databend.com 。
What’s New
探索 Databend 本周新进展,遇到更贴近你心意的 Databend 。
Features & Improvements ✨
Meta
- 在 proto-conv 中新增 reader-min-msg-ver 和 msg-min-reader-ver (#9535)
Planner
- 支持
tuple.1
和get(1)(tuple)
(#9493) - 支持在
EXPLAIN
中显示行数估算 (#9528)
Query
- 单机模式下更高效的两阶段聚合(Streaming Merge)(#9504)
Storage
- 在
read_parquet
中增加对嵌套类型的支持 (#9486) - 新增包含构建选项信息的系统表 (#9502)
Code Refactoring 🎉
- 合并全新表达式框架 (#9411)
- 删除无用的 crates 并对部分 crates 重命名 (#9481)
- 工具链升级至 rust nightly-2022-12-15 (#9540)
Expression
- 将反函数移动至 binder (#9484)
- 使用 error_to_null() 来评估 try_cast (#9545)
Functions
- 使用 h3o 替换 h3ron (#9553)
Format
- 提取
AligningStateTextBased
(#9472) - 丰富错误上下文 (#9534)
Query
- 使用
EvalContext
存储函数计算错误 (#9501) - 重构
MapAccess
以支持读取元组内字段 (#9516)
Storage
- 更新 opendal 以支持流式读 (#9503)
- 重构 bloom index 以使用向量化 siphash 函数 (#9542)
Bug Fixes 🔧
HashTable
- 修复
unsized_hashtable.rs
中潜在的内存泄漏 (#9551)
Storage
- 修正行组统计信息的收集逻辑 (#9537)
What’s On In Databend
请持续关注 Databend 的最新动态。
新的一年,全新表达式上线!
在经过大半年的开发和迁移后,全新表达式框架已经正式成为 Databend 的核心引擎。这套表达式框架具有形式化的类型系统,并且支持类型安全的向下转型,同时,也为函数的定义和实现提供了更简单和高效的方式。
阅读以下材料以了解更多讯息:
- PR | refactor: Merge new expression
- Issue | Tracking: issues about new expression
What’s Up Next
我们始终对前沿技术和创新理念持开放态度,欢迎您加入社区,为 Databend 注入活力。
UNNEST
函数
UNNEST
函数的参数是一个数组,返回一张表,表中每行包含数组中的一个元素。
语法
UNNEST(ARRAY) [WITH OFFSET]
如果你计划成为 Databend 的贡献者,参与 UNNEST
函数的设计与实现会是一个不错的机会。
Issue 9549: Feature: Support unnest
如果你对这个主题感兴趣,可以尝试解决其中的部分问题或者参与讨论和 PR review 。或者,你可以点击 https://link.databend.rs/i-m-feeling-lucky 来挑选一个随机问题,祝好运!
Changlogs
前往查看 Databend 每日构建的变更日志,以了解开发的最新动态。
地址:https://github.com/datafuselabs/databend/releases
Contributors
非常感谢贡献者们在本周的卓越工作。
Connect With Us
Databend 是一款开源、弹性、低成本,基于对象存储也可以做实时分析的新式数仓。期待您的关注,一起探索云原生数仓解决方案,打造新一代开源 Data Cloud。
- Databend Website
- GitHub Discussions
- Slack Channel