Databend 开源周报第 112 期
Databend 是一款现代云数仓。专为弹性和高效设计,为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务:https://app.databend.cn 。
What's On In Databend
探索 Databend 本周新进展,遇到更贴近你心意的 Databend 。
理解用户自定义函数(UDF)
用户自定义函数(User-Defined Function,UDF)允许你的自定义操作与 Databend 进行集成,从而更好地处理数据、执行任务,构造更合理的数据工作流。
Databend 目前支持两种形式的用户自定义函数:使用 SQL lambda 表达式编写或者用 Python 等编程语言实现 UDF 服务器注册。用户自定义函数可以作为 Databend 查询处理流程的一部分执行。
使用 UDFs 的优点包括:
自定义数据转换。
优化性能。
改善代码可重用性。
如果您想了解更多信息,请查看下面列出的资源。
Code Corner
一起来探索 Databend 和周边生态中的代码片段或项目。
使用 Prometheus 改善可观测性
metrics-rs 为不同的可观测性方案构建了一个通用的抽象层,支持包括 statsd、prometheus、new-relic 等在内的多种工具,但是 metrics-rs 无法很好地支持直方图统计之类的度量。
如今,Prometheus 已成为可观测性领域的事实标准,使用原始的 Prometheus 客户端,而不是将指标推送给其他工具,会带来一些显而易见的好处:
更好的性能:经过良好实现的观测指标的内存分配应该是 O(1) ,无需本地缓冲队列。
减少抽象层:我们可以减少关于指标的抽象层,使代码路径更易于理解。
更好的编码规范:目前我们在不同模块中有不同的度量标准实践,可以学习 Prometheus 社区的度量标准实践来统一我们的度量标准实践。
现在,Databend 的可观测性指标已经完全迁移到 Prometheus 实现,在保持原有指标几乎不变的情况下,带来了更全面、更可靠的可观测性体验。
如果您想了解更多信息,请查看下面列出的资源。
PR #12787 | feat(observability): replace metrics-rs with prometheus-client
Issue #12635 | Tracking: replace metrics-rs with prometheus-client-rs
Issue #9422 | Feature: Refactoring Databend Metrics Component with Prometheus
Highlights
以下是一些值得注意的事件,也许您可以找到感兴趣的内容。
COMPACT
支持分布式执行。新增
json_path_exists
函数。新增
recluster_block_size
设置用于控制重聚类时的块大小。支持
DECIMAL
类型向INT
类型的转换。支持 inverted filter 以减少 filter 执行,部分场景下 4 倍性能提升。
SQLSmith 测试支持生成表函数、窗口函数、子查询和
WITH
子句。
What's Up Next
我们始终对前沿技术和创新理念持开放态度,欢迎您加入社区,为 Databend 注入活力。
实现 GREATEST 函数
GREATEST 函数的输入是一个表达式列表,输出是该表达式列表中的最大值。
语法:
示例:
Issue #12944 | feat: GREATEST function
如果你对这个主题感兴趣,可以尝试解决其中的部分问题或者参与讨论和 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。
版权声明: 本文为 InfoQ 作者【Databend】的原创文章。
原文链接:【http://xie.infoq.cn/article/0e6e0ddfc3583f2d70c997b17】。文章转载请联系作者。
评论