Databend 开源周报第 123 期

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

What's On In Databend

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

支持统计和显示合并状态

Databend 现在支持统计和显示 MERGE INTO 的状态,在执行合并之后,会返回受更新/删除/插入影响的行数:

sql 复制代码
🐳 :) create table t1(a int);
🐳 :) create table t2(b int);
🐳 :) insert into t1 values(1),(3);
🐳 :) insert into t2 values(1),(3),(4);
🐳 :) merge into t1 using t2 on t1.a = t2.a when matched and t2.a = 1 then update * when
matched then delete when not matched then insert *;
+-------------+-------------+-------------+
| insert_rows | update_rows | delete_rows |
+-------------+-------------+-------------+
|           1 |           1 |           1 |
+-------------+-------------+-------------+

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

Code Corner

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

使用 clippy.toml 添加自定义 Clippy 规则

rust-clippy 是 Rust 官方提供的代码检查工具,通过静态分析来发现问题或不符合规范的代码。

通过配置 clippy.toml 文件,可以制定项目 Clippy 规则,统一代码开发规范,提供最佳实践指引。

例如,可以使用下面的 lints 提示开发者使用 std::sync::LazyLock 来代替 lazy_static::lazy_static 。

toml 复制代码
disallowed-macros = [
    { path = "lazy_static::lazy_static", reason = "Please use `std::sync::LazyLock` instead." },
]

Highlights

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

What's Up Next

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

为 INFER_SCHEMA 添加更多数据文件类型支持

Databend 支持 infer_schema 表函数,可以推断数据文件的模式,方便数据载入和分析流程。

用法参见下面的示例:

SQL 复制代码
SELECT * FROM INFER_SCHEMA(location => '@infer_parquet/data_e0fd9cba-f45c-4c43-aa07-d6d87d134378_0_0.parquet');
+-------------+-----------------+----------+----------+
| column_name | type            | nullable | order_id |
+-------------+-----------------+----------+----------+
| number      | BIGINT UNSIGNED |        0 |        0 |
+-------------+-----------------+----------+----------+

目前,infer_schema 只支持对 Parquet 类型数据文件的模式推断,我们希望为其添加 CSV 、JSON 等更多常用数据文件类型的支持。

Issue #13959 | INFER_SCHEMA supports more file types

如果你对这个主题感兴趣,可以尝试解决其中的部分问题或者参与讨论和 PR review 。或者,你可以点击 link.databend.rs/i-m-feeling... 来挑选一个随机问题,祝好运!

Changelog

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

地址:github.com/datafuselab...

Contributors

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

Connect With Us

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

相关推荐
tryxr几秒前
什么情况下索引会失效
数据库·mysql·索引失效·索引
guo_wen_qiang3 分钟前
redis持久化
数据库·redis·分布式
达梦数据26 分钟前
达梦数据复制软件DMDRS搭建部署示例:源数据库DM8到目标数据库Kingbase V8一对一数据同步
数据库·oracle
ly768936 分钟前
MongoDB 读写策略与一致性取舍:readConcern、readPreference 与 causal session
数据库·mongodb·writeconcern·readconcern·readpreference·因果一致性
天空属于哈夫克31 小时前
企业微信消息回调处理:如何避免慢查询拖垮整个服务?
数据库·php·企业微信
烟雨归来1 小时前
Oracle备份NFS IO挂死引发PQ并行进程耗尽process
数据库·oracle
acd120091 小时前
PHP 8.1 下 Swoole 协程 PDO 偶尔出现 MySQL 连接丢失问题排查
数据库·oracle
cc5725026531 小时前
2027校招:大数据管理与应用转财务数字化,会计业务、SQL与BI学习路线
数据库·sql·学习
梦想不只是梦与想1 小时前
SQLAlchemy:异步、连接池 (四)
数据库·fastapi·sqlalchemy
j7~2 小时前
【仿 RabbitMQ 项目】发布订阅消息队列 (篇八):交换机数据管理模块,分层类设计、SQLite 回调原理与代码实现
服务器·网络·数据库·消息队列·交换机·交换机数据管理·sqlite回调原理