---
# System prepended metadata

title: Databend 开源周报第 125 期
tags: [weekly]

---

---
title: Databend 开源周报第 125 期
description: 
slug:  databend-weekly-125
date: 2023-12-25
tags: [weekly]
cover_url: databend-weekly.svg
image: databend-weekly.png
contributors:
  - name: andylokandy
  - name: ariesdevil
  - name: b41sh
  - name: BohuTang
  - name: Chasen-Zhang
  - name: dantengsky
  - name: Dousir9
  - name: dqhl76
  - name: drmingdrmer
  - name: everpcpc
  - name: flaneur2020
  - name: guojidan
  - name: JackTan25
  - name: leiysky
  - name: lichuang
  - name: PsiACE
  - name: RinChanNOWWW
  - name: soyeric128
  - name: sundy-li
  - name: TCeason
  - name: wubx
  - name: xudong963
  - name: youngsofun
  - name: zhang2014
  - name: zhyass
authors:
  - databendlabs
---

![img_v3_0262_88ba3f2c-7260-437e-b79a-97dabf8ea9fg](https://hackmd.io/_uploads/Hkupt6Uwp.png)

> 英文版移步：https://databend.com/blog/2023-12-24-databend-weekly
> 
> [Databend](https://github.com/datafuselabs/databend) 是一款现代云数仓。专为弹性和高效设计，为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务：[https://app.databend.cn](https://app.databend.cn) 。

## What's On In Databend

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

### 密码策略

Databend 现已初步支持自定义密码策略（PASSWORD POLICY）以满足用户对安全性的需要。通过设置密码策略，可以实现在尝试错误密码后拒绝访问，以及设置密码复杂性要求。

参考用法如下：

```sql
CREATE PASSWORD POLICY test_policy
    PASSWORD_MIN_LENGTH = 12
    PASSWORD_MAX_LENGTH = 24
    PASSWORD_MIN_UPPER_CASE_CHARS = 2
    PASSWORD_MIN_LOWER_CASE_CHARS = 2
    PASSWORD_MIN_NUMERIC_CHARS = 2
    PASSWORD_MIN_SPECIAL_CHARS = 2
    PASSWORD_MIN_AGE_DAYS = 1
    PASSWORD_MAX_AGE_DAYS = 30
    PASSWORD_MAX_RETRIES = 3
    PASSWORD_LOCKOUT_TIME_MINS = 30
    PASSWORD_HISTORY = 5
    COMMENT = 'this is a test password policy';
    
ALTER PASSWORD POLICY test_policy UNSET
    PASSWORD_MIN_LENGTH
    PASSWORD_MAX_LENGTH
    PASSWORD_LOCKOUT_TIME_MINS;
    
CREATE USER user1 IDENTIFIED BY '123456abcDE@!' WITH SET PASSWORD POLICY='test_policy';

ALTER USER user1 IDENTIFIED BY '1456abcDE@!' WITH SET PASSWORD POLICY='test_policy';
```

此特性正在积极开发中，后续还将提供登录时检查密码策略等能力，进一步完善支持。

如果您想了解更多信息，欢迎联系 [Databend 团队](https://databend.cn/contact-us/)，或查看下面列出的资源。

- [PR #14012 | feat(query): Support create/alter/drop/desc/show password policy](https://github.com/datafuselabs/databend/pull/14012)
- [Draft PR #14124 | feat(query): Support check password policy when login](https://github.com/datafuselabs/databend/pull/14124)

## Code Corner

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

### 引入 lychee 检查损坏的链接

[lychee](https://github.com/lycheeverse/lychee) 是一个异步、高性能的链接检查工具，使用 Rust 实现，可以检查文件中链接的响应状态。

Databend 目前使用 lychee 来检查文档中是否存在损坏的链接。

命令行用法如下：

```shell
lychee --base . --cache --max-cache-age 1d . --exclude 'https?://twitter\\.com(?:/.*$)?$'
```

官方也提供了 [lychee-action](https://github.com/lycheeverse/lychee-action) 用于与 GitHub Actions 进行集成。

- [PR #14100 | ci: add lychee links checker with cache](https://github.com/datafuselabs/databend/pull/14100)

## Highlights

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

- 支持 decimal 类型的 round / truncate / ceil / floor 标量数学函数，以支持高精度数学运算。
- 支持读取分区的 Delta Table 。
- `CREATE FUNCTION` 支持 Lambda 表达式。
- 支持 `SHOW VIRTUAL COLUMNS` 。

## What's Up Next

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

### 使用 TPC-DS 评估 PR 带来的性能变化

Databend 目前支持使用 `ci-benchmark` 标签对 PR 进行基准测试，以跟踪性能变化。目前已经启用 Hits 和 TPC-H 两类测试套件。

鉴于 Databend 已经完全支持 TPC-DS 的 99 条 SQL 查询，并且该测试套件更能够反应报表生成、联机查询、数据挖掘等业务模式，我们计划后续引入 TPC-DS 作为 PR 性能评估的一部分。 

[Issue #13883 | Benchmark: Support TPC-DS ci-benchmark](https://github.com/datafuselabs/databend/issues/13883)

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

## New Contributors

一起认识社区中的新伙伴，Databend 因你们而变得更加美好。

- [@dqhl76](https://github.com/dqhl76) 修复了文档中损坏的链接，[#14090](https://github.com/datafuselabs/databend/pull/14090) 。

## Changelog

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

地址：https://github.com/datafuselabs/databend/releases

## Contributors

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

![image](https://hackmd.io/_uploads/r1VfjTLwa.png)

## Connect With Us

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

- [Databend Website](https://databend.rs) 
- [GitHub Discussions](https://github.com/datafuselabs/databend/discussions)
- [Twitter](https://twitter.com/Datafuse_Labs)
- [Slack Channel](https://link.databend.rs/join-slack)
