Databend 是一款现代云数仓。专为弹性和高效设计,为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务:https://app.databend.cn 。
What’s On In Databend
探索 Databend 本周新进展,遇到更贴近你心意的 Databend。
为窗口排名函数添加 [IGNORE | RESPECT NULLS] 选项
在窗口函数的使用中,处理 NULL 值是一个常见且重要的问题。为了提供更加灵活和精确的查询能力,Databend 正在为窗口排名函数 first_value、last_value 和 nth_value 添加 IGNORE NULLS 和 RESPECT NULLS 选项。这两个选项的具体功能如下:
使用 IGNORE NULLS 选项时,函数会跳过 NULL 值,仅考虑非 NULL 的数据。例如:first_value(col) IGNORE NULLS
会返回第一个非 NULL 的值。这种方式在数据集中存在大量 NULL 值的情况下非常有用,因为它能有效避免 NULL 值对结果的干扰。
使用 RESPECT NULLS 选项时,函数会将 NULL 值视为正常数据进行处理。例如:nth_value(col, n) RESPECT NULLS
会返回第 n 个值,无论它是否为 NULL。这种方式适用于需要保留 NULL 值信息的场景。
如果您想了解更多信息,欢迎联系 Databend 团队,或查看下面列出的资源。
- PR #15919 | feat: add option [ IGNORE | RESPECT NULLS ] functionality for window rank function
Beyond the Code
一起来探索 Databend 社区和周边生态中的新鲜事。
从存储视角学 Data Lake
数据湖是复杂的系统,其规格、格式和引擎各异。然而,所有数据湖的基础元素是存储层。观察它们如何在这一层上组织元数据和数据,以及基于文件设计的优化策略,可以提供更清晰的洞察。从存储层的角度来看,我们可以更全面地理解数据。构建在数据湖上的所有引擎本质上都是实现细节。
这个来自 Databend 研发工程师 Xuanwo 的项目可以帮助大家从部署和分析各种数据湖项目的存储行为入手,深入了解不同项目的功能和设计。
- GitHub – Xuanwo/Learn Data Lake From Storage
Highlights
以下是一些值得注意的事件,也许您可以找到感兴趣的内容。
- 实现 LocalShuffle。
- 新增表函数
clustering_statistics
。 - 新增设置项
enable_strict_datetime_parser
。
What’s Up Next
我们始终对前沿技术和创新理念持开放态度,欢迎您加入社区,为 Databend 注入活力。
使用物化视图重构聚合索引
Databend 目前已经提供了聚合索引能力,允许用户通过预先计算和存储聚合结果来加速查询性能。聚合索引的引入极大地提升了数据处理的效率,尤其在大数据集的分析和查询场景中表现尤为显著。
我们计划根据论文 Optimizing queries using materialized views: A practical, scalable solution,使用物化视图重构聚合索引,提供更加实用和可扩展的解决方案。此改进将有助于提高查询效率,并为用户带来更好的数据处理体验。
Issue #16021 | Feature: Refactor aggregating index using materialized view
如果你对这个主题感兴趣,可以尝试解决其中的部分问题或者参与讨论和 PR review。或者,你可以点击 https://link.databend.rs/i-m-feeling-lucky 来挑选一个随机问题,祝好运!
Changelog
前往查看 Databend 每日构建的变更日志,以了解开发的最新动态。
地址:https://github.com/datafuselabs/databend/releases
Contributors
非常感谢贡献者们在本周的卓越工作。
Connect With Us
Databend 是一款开源、弹性、低成本,基于对象存储也可以做实时分析的新式数仓。期待您的关注,一起探索云原生数仓解决方案,打造新一代开源 Data Cloud。
- Databend Website
- GitHub Discussions
- Slack Channel