Databend 开源周报第 129 期

原创
01/22 17:50
阅读数 46

Databend 是一款现代云数仓。专为弹性和高效设计,为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务:https://app.databend.cn

What's On In Databend

探索 Databend 本周新进展,遇到更贴近你心意的 Databend 。

支持标准流

标准流 能够捕获所有类型的数据变更,包括更新和删除。相较于仅追加流,标准流的功能更加完备,并且适用于更加复杂的数据变更场景。

CREATE STREAM 的语法也支持了选项用于控制流的类型。

CREATE STREAM [IF NOT EXISTS] [<database_name>.]<stream_name>
  ON TABLE [<database_name>.]<table_name>
    [AT (STREAM => <stream_name>)]
    [append_only = true|false]
    [COMMENT = '<comment>']
  • 如果 append_only=true,创建仅追加流(append_only stream),仅用于追加数据,不跟踪更新或删除。
  • 如果 append_only=false,创建标准流(standard stream)。能够捕获所有类型的数据变更,包括更新和删除,提供全面的数据修改跟踪。

如果您想了解更多信息,欢迎联系 Databend 团队,或查看下面列出的资源。

Code Corner

一起来探索 Databend 和周边生态中的代码片段或项目。

~300 行实现 Raft 共识算法

Databend 的元数据服务使用 Raft 共识算法,并且开源和维护了 openraft 这个基于 tokio 的异步 Raft 实现。

one_file_raft 是一个简洁的演示性实现,在大约 300 行有效代码的单个 Rust 文件中实现了 Raft 共识算法,文件长度大约300行。

由 openraft 的主要维护者 drmingdrmer 创建,用于展示分布式共识协议的核心原理,不涉及应用特定的业务逻辑、边缘情况管理和错误处理的复杂性。该实现关注于 Raft 的基础特性,如领导者选举、日志复制和日志提交,同时省略了高级功能,如日志压缩和日志清理。

Highlights

以下是一些值得注意的事件,也许您可以找到感兴趣的内容。

  • 支持 Query 级别的缓存统计。
  • 为分布式查询实现基于成本的优化。
  • 新增日期相关函数 MONTHS_BETWEEN
  • 新增任务 DAG 相关函数 TASK_DEPENDENTSTASK_DEPENDENTS_ENABLE
  • admin API 新增 v1/system 接口,用于展示系统信息。

What's Up Next

我们始终对前沿技术和创新理念持开放态度,欢迎您加入社区,为 Databend 注入活力。

租户数据迁移工具

databend-metactl --export 支持一次性导出所有元数据服务中的数据。但目前还缺乏用于迁移属于特定租户的确切数据的工具。

为了进一步满足多租户场景下的元数据迁移,Databend 计划设计并实现一个专用工具。该工具会导出并解码元数据服务中的数据,并从中过滤掉不必要的数据。

Issue #14405 | Tracking issue: dump data belonging to a tenant from meta-service

如果你对这个主题感兴趣,可以尝试解决其中的部分问题或者参与讨论和 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。

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部