很高兴为您带来 Databend 2025 年 4 月的最新更新、新功能和改进!我们希望这些增强功能对您有所帮助,并期待您的反馈。
BendDeploy:安装 Databend 的新方式
BendDeploy 是由 Databend 开发的一款基于 Kubernetes 的平台,旨在简化和标准化 Databend 集群的部署与管理。它提供可视化、用户友好的界面,支持多集群、多租户操作,显著提升了运维效率、系统可靠性以及管控能力。
多租户管理:为不同租户提供隔离的环境,并支持基于角色的用户访问控制。
一键集群部署:只需几次点击即可轻松启动并管理 Databend 集群。
生命周期管理操作:支持滚动升级、版本回滚、水平扩展和集群重启等功能。
可视化监控与日志:集成节点状态视图、日志(如查询日志、性能分析日志)以及外部 Prometheus 指标。
网页 SQL 工作台:可在 UI 中直接执行 SQL 查询,并可指定目标租户集群。
BendSave:一条命令完成数据备份与恢复
BendSave 是一款命令行工具,用于备份和恢复 Databend 中的元数据及实际数据文件。它将备份内容存储在兼容 S3 的对象存储中,非常适合用于灾难恢复场景。
export AWS_ACCESS_KEY_ID=minioadmin
export AWS_SECRET_ACCESS_KEY=minioadmin
# Backup
./databend-bendsave backup \
--from ../configs/databend-query.toml \
--to 's3://backupbucket?endpoint=http://127.0.0.1:9000/®ion=us-east-1'
# Restore
./databend-bendsave restore \
--from "s3://backupbucket?endpoint=http://127.0.0.1:9000/®ion=us-east-1" \
--to-query ../configs/databend-query.toml \
--to-meta ../configs/databend-meta.toml \
--confirm
复制代码
查询结果缓存
查询结果缓存是 Databend 的一项性能优化功能,用于存储先前查询的结果。对于重复执行的查询,系统可直接从缓存中返回结果,而无需重新计算,从而降低查询延迟并提升整体系统效率,尤其适用于重复的分析型工作负载。
有关如何启用和配置查询结果缓存的详细信息,请参阅查询结果缓存。
动态列默认值:NEXTVAL(<seq>)
您现在可以在创建表时,使用来自序列的动态值作为列的默认值。通过 NEXTVAL(<seq>)
,每次插入新行时,该列将自动获取序列生成的下一个值。
CREATE SEQUENCE staff_id_seq;
CREATE TABLE staff (
staff_id INT DEFAULT NEXTVAL(staff_id_seq), -- Assigns the next number from the sequence 'staff_id_seq' if no value is provided
name VARCHAR(50),
department VARCHAR(50) DEFAULT 'Marketing' -- Defaults to 'Marketing' if no value is provided
);
复制代码
查询文件级元数据
您现在可以从暂存文件中查询文件级别的元数据信息,例如文件名和行号。
-- Querying Metadata Fields
SELECT
metadata$filename,
metadata$file_row_number,
*
FROM @my_internal_stage/iris.parquet
LIMIT 5;
-- Using Metadata in COPY INTO
COPY INTO iris_with_meta
FROM (SELECT metadata$filename, metadata$file_row_number, $1, $2, $3, $4, $5 FROM @my_internal_stage/iris.parquet)
FILE_FORMAT=(TYPE=parquet);
复制代码
新文件格式:Avro
Apache Avro™ 是领先的记录数据序列化格式,也是流式数据管道的首选格式。Databend 现已支持将 Avro 作为加载数据的文件格式。
COPY INTO userdata
FROM 'https://raw.githubusercontent.com/Teradata/kylo/master/samples/sample-data/avro/userdata1.avro'
FILE_FORMAT = (type = avro);
复制代码
新函数
-- Aggregate Function
LISTAGG([DISTINCT] <expr> [, <delimiter>])
[WITHIN GROUP (ORDER BY <order_by_expr>)]
-- Window Function
LISTAGG([DISTINCT] <expr> [, <delimiter>])
[WITHIN GROUP (ORDER BY <order_by_expr>)]
OVER ([PARTITION BY <partition_expr>])
复制代码
DATE_BETWEEN(
YEAR | QUARTER | MONTH | WEEK | DAY | HOUR | MINUTE | SECOND |
DOW | DOY | EPOCH | ISODOW | YEARWEEK | MILLENNIUM,
<start_date_or_timestamp>,
<end_date_or_timestamp>
)
复制代码
GLOB(<string>, <pattern>)
复制代码
关于 Databend
Databend 是一款开源、弹性、低成本,基于对象存储也可以做实时分析的新式湖仓。期待您的关注,一起探索云原生数仓解决方案,打造新一代开源 Data Cloud。
👨💻 Databend Cloud:databend.cn
📖 Databend 文档:docs.databend.cn
💻 Wechat:Databend
✨ GitHub:github.com/databendlab...
评论