Databend 开源周报第 129 期

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

What's On In Databend

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

支持标准流

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

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

sql 复制代码
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 。或者,你可以点击 link.databend.rs/i-m-feeling... 来挑选一个随机问题,祝好运!

Changelog

前往查看 Databend 每日构建的变更日志,以了解开发的最新动态。

地址:github.com/datafuselab...

Contributors

非常感谢贡献者们在本周的卓越工作。

Connect With Us

Databend 是一款开源、弹性、低成本,基于对象存储也可以做实时分析的新式数仓。期待您的关注,一起探索云原生数仓解决方案,打造新一代开源 Data Cloud。

相关推荐
百***92028 小时前
【MySQL】MySQL库的操作
android·数据库·mysql
q***76668 小时前
Spring Boot 从 2.7.x 升级到 3.3注意事项
数据库·hive·spring boot
信仰_2739932439 小时前
Redis红锁
数据库·redis·缓存
人间打气筒(Ada)9 小时前
Centos7 搭建hadoop2.7.2、hbase伪分布式集群
数据库·分布式·hbase
心灵宝贝9 小时前
如何在 Mac 上安装 MySQL 8.0.20.dmg(从下载到使用全流程)
数据库·mysql·macos
奋斗的牛马10 小时前
OFDM理解
网络·数据库·单片机·嵌入式硬件·fpga开发·信息与通信
忧郁的橙子.10 小时前
一、Rabbit MQ 初级
服务器·网络·数据库
杰杰79811 小时前
SQL 实战:用户访问 → 下单 → 支付全流程转化率分析
数据库·sql
爬山算法11 小时前
Redis(120)Redis的常见错误如何处理?
数据库·redis·缓存
野生技术架构师11 小时前
盘一盘Redis的底层数据结构
数据结构·数据库·redis