---
title: Databend 开源周报第 99 期
description: 本周 Databend 新增对 Apache Flink CDC 支持，本期的编程角介绍了如何在 Databend 的 Python 绑定中注册外部表。
slug: category-weekly/databend-weekly-99
date: 2023-06-26
tags: [weekly]
category: Weekly

image: databend-weekly.png
contributors:
  - name: akoshchiy
  - name: andylokandy
  - name: b41sh
  - name: dantengsky
  - name: Dousir9
  - name: drmingdrmer
  - name: everpcpc
  - name: JackTan25
  - name: jonahgao
  - name: leiysky
  - name: PsiACE
  - name: RinChanNOWWW
  - name: soyeric128
  - name: sundy-li
  - name: TCeason
  - name: Xuanwo
  - name: youngsofun
  - name: zhang2014
  - name: ZhiHanZ
  - name: zhyass
authors:
  - DatabendLabs
---

# Databend 开源周报 第 99 期

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

## What's On In Databend

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

### Flink CDC

Apache Flink CDC（Change Data Capture）是指 Apache Flink 使用基于 SQL 的查询从各种来源捕获和处理实时数据更改的能力。CDC 允许监视和捕获数据库或流系统中发生的数据修改（插入、更新和删除），并对这些更改进行实时响应。

Databend 现在提供 Flink SQL Connector，可以将 Flink 的流处理能力与 Databend 集成。通过对连接器进行配置，可以以流的形式从各种数据库中捕获数据更改，并将其载入到 Databend 中以进行实时处理和分析。

如果你想要了解更多信息，请查看下面列出的资源。

- [Docs | Loading Data with Tools - Flink CDC](https://docs.databend.cn/guides/load-data/load-db/flink-cdc)

{/* truncate */}

## Code Corner

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

### Databend 的 Python 绑定支持注册外部表

[Databend 的 Python 绑定](https://pypi.org/project/databend/) 现在支持注册外部表。你可以使用以下函数在 Python 绑定中注册外部表：

- `register_parquet`
- `register_ndjson`
- `register_csv`
- `register_tsv`

下面的例子展示了如何使用 `register_parquet` 函数在 Python 绑定中注册名为 `ontime` 的外部表：

```python
from databend import SessionContext

ctx = SessionContext()

ctx.register_parquet("ontime", "./ontime/", pattern = ".*.parquet")

df = ctx.sql("select * from ontime limit 10").collect()

print(df)
```

这段代码将位于 `./ontime/` 目录中且符合模式 `.*.parquet` 的 Parquet 文件注册成名为 `ontime` 的外部表。你可以在 SQL 查询中使用已注册的表名 `ontime` 访问数据。

如果你想要了解更多信息，请查看下面列出的资源。

- [PR | feat(python): support register table functions](https://github.com/databendlabs/databend/pull/11841)

## 亮点

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

- 支持使用 `ALTER TABLE [ IF EXISTS ] <name> RENAME COLUMN <col_name> TO <new_col_name>` 变更列名。
- 为 TSV 格式实现列位置支持。
- 新增 `system.background_jobs` 和 `system.background_tasks` 系统表。
- 通过 `X-DATABEND-DEDUPLICATE-LABEL` 标头实现为 HTTP API 支持去重。
- 支持分布式删除。

## What's Up Next

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

### 为 Databend 集群实现只读模式

Databend 正在计划为集群实现一个名为“只读模式”的新功能，这将改善用户的访问控制和资源分配。

一旦实现这一新功能，用户将能够为读取和写入操作分别创建单独的集群。只读模式有助于防止集群中存在可能会导致数据丢失或损坏的意外写入。同时，由于减少了写入操作，可能会提高只读模式下的集群性能。

[Issue #11836 | feat: read-only mode for Databend clusters](https://github.com/databendlabs/databend/issues/11836)

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

## Changelog

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

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