---
title: Databend 开源周报第 135 期
description: 'Databend 支持查询队列，并新增 UDF Sccript 支持，可以将 JavaScript 作为 UDF 脚本使用。'
slug: category-weekly/databend-weekly-135
date: 2024-03-11
tags: [weekly]
category: Weekly
cover_url: 'weekly/weekly-135.jpg'
image: 'weekly/weekly-135.jpg'
contributors:
  - name: andylokandy
  - name: ariesdevil
  - name: b41sh
  - name: dantengsky
  - name: Dousir9
  - name: drmingdrmer
  - name: everpcpc
  - name: Freejww
  - name: JackTan25
  - name: lichuang
  - name: PsiACE
  - name: SkyFan2002
  - name: soyeric128
  - name: sundy-li
  - name: TCeason
  - name: xudong963
  - name: youngsofun
  - name: zhang2014
  - name: ZhiHanZ
authors:
  - DatabendLabs
---

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

## What's On In Databend

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

### 支持查询队列

Databend 现已支持查询队列功能，通过设置 `max_running_queries` 确定可最大并发运行的查询数量。如有更多查询，这些查询会排入队列，直到处理资源被释放。

例如，`max_running_queries=3` 表示最大支持 3 个查询并发运行，任何新加入的查询将会被阻塞，直到之前的某个查询执行完毕。

{/* truncate */}

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

- [PR #14878 | feat(query): support queries queue ](https://github.com/databendlabs/databend/pull/14878)

## Code Corner

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

### 探索 Databend 的 UDF Script

Databend 目前新增 UDF Sccript 支持，可以将 JavaScript 作为 UDF 脚本使用。

例如，可以用下面的语句定义一个 `gcd` 函数：

```sql
CREATE FUNCTION gcd (INT, INT) RETURNS BIGINT LANGUAGE javascript HANDLER = 'gcd_js' AS $$
        export function gcd_js(a, b) {
                while (b != 0) {
                    let t = b;
                    b = a % b;
                    a = t;
                }
                return a;
            }
$$
```

![udf script](../static/img/blog/udf-script.png)

对 Python 语言的 UDF Script 支持正在有序推进中。

- [PR #14799 | feat(query): introduce arrow-udf-js](https://github.com/databendlabs/databend/pull/14799)

## Highlights

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

- TASK 中支持事务和多行 SQL 语句。
- `VACUUM TABLE` 支持返回统计信息。
- 为 Variant 类型支持 `is_<type>` 系列函数。
- 支持创建倒排索引。

## What's Up Next

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

### 升级 sqllogictest 到最新版本

Databend 希望将 sqllogictest 升级到最新版本以获得更全面的支持。

```
sqllogictest = "0.19.1"
```

这是一个 good first issue（新手友好问题），旨在引导对 Rust 和 Databend 感兴趣的同学参与。

[Issue #14874 | Update sqllogictest crate to the latest](https://github.com/databendlabs/databend/issues/14874)

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

## Changelog

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

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