当前位置: 首页 > news >正文

Databend 开源周报第 88 期

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

What's On In Databend

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

Support Eager Aggregation

Eager Aggregation 是一种查询优化技术,它可以部分地将 Group By 推到 Join 之前,减少了 Join 的输入行数,因此可能会生成更好的整体计划。

Databend 最近添加了对 Eager Aggregation 的支持。以下是它的一个示例:

Input:expression|aggregate: SUM(x), SUM(y)|join| \| (y)|(x)
(1) Eager Groupby-Count:expression|final aggregate: SUM(eager SUM(x)), SUM(y * cnt)|join| \| (y)|eager group-by: eager SUM(x), eager count: cnt
(2) Eager Split:expression|final aggregate: SUM(eager SUM(x) * cnt2), SUM(eager SUM(y) * cnt1)|join| \| eager group-by: eager SUM(y), eager count: cnt2|eager group-by: eager SUM(x), eager count: cnt1

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

  • PR #10716 | feat(planner): support eager aggregation
  • Paper | Eager Aggregation and Lazy Aggregation

Support All TPC-DS Queries

Databend 现已支持所有TPC-DS查询!

TPC-DS 是一个面向决策支持系统的包含多维度常规应用模型的决策支持基准,它对决策支持系统的几个普遍适用方面进行建模,包括查询和数据维护。TPC基准测试的目的是为行业用户提供相关、客观的性能数据。

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

  • PR | feat: support cte in dphyp
  • PR | chore(test): add tpcds to test

Code Corner

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

databend-driver - A driver for Databend in Rust

Databend 社区目前为 Databend 开发了 Rust Driver 。现在,你可以使用 Rust 来轻松连接 Databend 并执行 SQL 查询。

下面是一个使用该驱动程序的例子:

use databend_driver::new_connection;let dsn = "databend://root:@localhost:8000/default?sslmode=disable";
let conn = new_connection(dsn).unwrap();let sql_create = "CREATE TABLE books (title VARCHAR,author VARCHAR,date Date
);";
conn.exec(sql_create).await.unwrap();
let sql_insert = "INSERT INTO books VALUES ('The Little Prince', 'Antoine de Saint-Exupéry', '1943-04-06');";
conn.exec(sql_insert).await.unwrap();

欢迎尝试并给我们一些反馈。如果你想要了解更多信息,请查看下面列出的资源。

  • Crates.io - databend-driver
  • Github - datafuselabs/databend-client

AskBend - SQL-based Knowledge Base Search and Completion

AskBend 是使用 Rust 编写的知识库问答系统,由 Databend 和 OpenAI 强力驱动,可以根据 Markdown 文件创建基于 SQL 的知识库。

AskBend 能够自动根据内容生成 embeddings ,可以帮助你轻松检索与问题最相关的信息。

下面是它的工作原理:

  1. 从目录中读取并解析 Markdown 文件。
  2. 将内容存储到 askbend.doc 表中。
  3. 使用 Databend Cloud 内置的 AI 能力为内容计算 embeddings 。
  4. 当用户提问时,使用 ai_embedding_vector SQL 函数为之生成查询 embedding 。
  5. 使用 cosine_distance SQL 函数找出最相关的文档内容。
  6. 利用 ai_text_completion SQL 函数,调用 OpenAI 的补全能力,生成合适的结果。
  7. 以 Markdown 格式输出最终结果。

如果您想了解有关 AskBend 的更多信息或尝试现有的实时演示,请参阅下面列出的资源:

  • Live Demo - asking for Databend documentation
  • Github - datafuselabs/askbend

亮点

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

  • 新增聚合函数:QUANTILE_DISCKURTOSISSKEWNESS 。
  • 阅读文档 Docs - AI Functions 了解关于 Databend 中 AI 函数的一切。

What's Up Next

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

为 Databend 增加针对可为空表结构的测试

目前,Databend 表结构默认情况下不可为空。因此,几乎所有测试表结构都不可为空。

我们需要在 Databend 中添加一些新的测试用例,以覆盖表结构可为空的情况。

Issue #10969 | test: add some tests which table schemas are nullable

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

New Contributors

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

  • @Dousir9 修复聚合函数在处理多列参数时的错误基数估计,#10884 。
  • @YimingQiao 为 KURTOSIS 和 SKEWNESS 补充了文档,并重新调整了条目的顺序 #10906 。
  • @jsoref 修复了若干拼写错误,改善了文档和代码质量,#10914 。
  • @leiwenfang 美化博客图片,#10917 。
  • @ArberSephirotheca 新增 to_unix_timestamp() 函数,#10949 。

Changelog

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

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

Contributors

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

Connect With Us

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

  • Databend Website
  • GitHub Discussions
  • Twitter
  • Slack Channel

 

相关文章:

Databend 开源周报第 88 期

Databend 是一款现代云数仓。专为弹性和高效设计,为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务:https://app.databend.com 。 Whats On In Databend 探索 Databend 本周新进展,遇到更贴近你心意的 Databend 。 Support Eager…...

Vue3学习笔记(9.4)

Vue3自定义指令 除了默认设置的核心指令&#xff08;v-model和v-show&#xff09;&#xff0c;Vue也允许注册自定义指令。 下面我们注册一个全局指令v-focus&#xff0c;该指令的功能是在页面加载时&#xff0c;元素获得焦点&#xff1a; <!--* Author: RealRoad10834252…...

导入 Excel 文件时,抛出 413 (Request Entity Too Large) 错误

Excel文件大小&#xff1a;8MB 异常信息&#xff1a;413 (Request Entity Too Large) 环境&#xff1a;IIS10PHP7.2.33 依次检查如下几项&#xff1a; 一、php.ini Maximum amount of memory a script may consume (128MB) 限制代码消耗的最大内存&#xff0c;默认128…...

Verilog学习笔记1——关键词、运算符、数据类型、function/task、initial/always、generate

文章目录前言一、关键词二、运算符三、数据类型1、基本类型&#xff1a;reg、wire、integer、parameter四、条件语句五、循环语句1、for2、generate六、function和task七、initial和always1、initial和always相同点和区别2、always和assign语句区别前言 2023.4.4 2023.4.7 补充…...

探索LeetCode【0005】最长回文子串(未搞懂,未练习)

目录0、题目1、第一个官方答案1.1 动态规划&#xff08;未懂&#xff09;1.2 中心扩展&#xff08;已懂&#xff09;1.3 Manacher&#xff08;未懂&#xff09;2、第二个参考答案2.1 暴力求法&#xff08;已懂&#xff09;2.2 反转法&#xff08;未懂&#xff09;2.3 动态规划&…...

使用 Docker run 命令简化容器化

使用 Docker run 命令简化容器化 Docker run 是在 Docker 容器中运行应用程序的基本命令。在开始使用 Docker 之前&#xff0c;了解一些重要的命令非常重要。 在本博客中&#xff0c;我们将解释 Docker run 命令的基本语法&#xff0c;并探索其一些最常见的选项&#xff0c;以…...

腾讯TNN神经网络推理框架手动实现多设备单算子卷积推理

文章目录前言1. 简介2. 快速开始2.1 onnx转tnn2.2 编译目标平台的 TNN 引擎2.3 使用编译好的 TNN 引擎进行推理3. 手动实现单算子卷积推理(浮点)4. 代码解析4.1 构建模型(单卷积层)4.2 构建解释器4.3 初始化tnn5. 模型量化5.1 编译量化工具5.2 量化scale的计算5.3 量化流程6. i…...

基础解惑:Linux 下文件描述符标志和文件状态标志区别

简述 文件描述符标志&#xff0c;是体现进程的文件描述符的状态&#xff0c;fork进程时&#xff0c;文件描述符被复制&#xff1b;目前只有一种文件描述符&#xff1a;FD_CLOEXEC文件状态标志&#xff0c;是体现进程打开文件的一些标志&#xff0c;fork时不会复制file 结构&am…...

学弟:如何在3个月内学会自动化测试?

有小学弟问&#xff1a;如何在3个月内学会自动化测试&#xff1f; 老实说如果你现在上班&#xff0c;之前主要在做功能测试&#xff0c;或者编程基础比较弱的话&#xff0c;三个月够呛。 如果你是脱产学习&#xff0c;每天能保持6&#xff5e;8小时学习时间的话&#xff0c;可…...

C-NCAP 2025主动安全ADAS测试研究

中汽中心汽车测评管理中心&#xff08;简称“中汽测评”&#xff09;是负责运营C-NCAP、CCRT等测评项目的管理机构。中汽测评以引领汽车行业进步、支撑汽车强国建设为使命&#xff0c;通过独立、公正、专业、开放的测试评价&#xff0c;服务消费者&#xff0c;当好选车购车参谋…...

【Apifox】测试工具自动编写接口文档

在开发过程中&#xff0c;我们总是避免不了进行接口的测试&#xff0c; 而相比手动敲测试代码&#xff0c;使用测试工具进行测试更为便捷&#xff0c;高效 今天发现了一个非常好用的接口测试工具Apifox 相比于Postman&#xff0c;他还拥有一个非常nb的功能&#xff0c; 在接…...

解决brew安装opencv报错问题

目录1.报错12. 解决方案3. 报错24. 解决方案4.1 原因分析4.2 手动下载portable-ruby-2.6.8_1.el_capitan.bottle.tar.gz4.3 拷贝portable-ruby-2.6.8_1.el_capitan.bottle.tar.gz到指定目录1.报错1 mac本用brew报如下错误&#xff1a; xialiangzhideMacBook-Pro:~ xialz$ bre…...

Linux软件安装---Tomcat安装

安装Tomcat 操作步骤&#xff1a; 使用xftp上传工具将tomcat的 二进制发布包上传到Linux解压安装包&#xff0c;命令为tar -zxvf apache-tomcat*** -C /usr/local进入Tomcat的bin的启动目录&#xff0c;命令为sh startup.sh或者./startup.sh 验证Tomcat启动是否成功&#xff0…...

提示工程师是什么工作?

提示工程师是什么工作&#xff1f; 因为ChatGPT的爆火&#xff0c;大家都把眼光锁定在这个号称“ChatGPT新兴职业” 的“提示工程师”上。“提示工程师”是什么工作&#xff1f;为什么说未来所有职业 都需要提示工程的能力&#xff1f; 先解释一下“提示”&#xff0c;它最早…...

WXSS-WXML-WXS语法

目录&#xff1a; 1 WXSS编写程序样式 2 Mustache语法绑定 3 WXML的条件渲染 4 WXML的列表渲染 5 WXS语法基本使用 6 WXS语法案例练习 小程序的自适应单位rpx。在设计稿为iPhone6的时候1px2rpx wxml必须是闭合标签&#xff0c;或者单标签加/&#xff0c;否则会报错&#…...

POSIX正则表达式

维基百科 POSIX基本表达式 https://en.wikibooks.org/wiki/Regular_Expressions/POSIX_Basic_Regular_Expressions POSIX扩展正则表达式 https://en.wikibooks.org/wiki/Regular_Expressions/POSIX-Extended_Regular_Expressions 正则表达式 https://en.wikipedia.org/wiki/R…...

数据分析工具集合:Tableau入门及其他工具简介

目录 一、Tableau简介 1、下载链接 2、使用技巧 二、其他常用数据分析工具 1、Microsoft Excel简介 1.1、下载链接 1.2、使用技巧 2、Python简介 2.1、下载链接 2.2、常用库的安装方式和使用技巧 2.2.1、Pandas 2.2.2、NumPy 2.2.3、Matplotlib 3、R语言简介 3.…...

响应式布局的五种方法

响应式布局的五种方法1.百分比布局2.rem布局3. 媒体查询 media screen4. flex布局5.vw 和 vh响应式布局是同一页面在不同的屏幕上有不同的布局&#xff0c;即只需要一套代码使页面适应不同的屏幕。 1.百分比布局 1.有父元素就相对于父元素 2.没有父元素就相对于视口的大小 举一…...

Javase学习文档------数组

Java 数组是 Java 编程中非常基础和重要的一个知识点。 以下是 Java 数组的主要学习内容&#xff1a; 数组的几个特点 数组在声明时必须指定长度&#xff0c;且长度不可变&#xff1a;数组的长度在声明时就需要确定&#xff0c;一旦确定就不能修改。因此&#xff0c;在使用数组…...

百度高德地图JS-API学习手记:地图基本设置与省市区数据加载

无论是百度还是高德地图开发&#xff0c;还是高德地图开发。官方的给的案例启示很多&#xff0c;copy再修改下&#xff0c;就完成了 概述-地图 JS API | 高德地图API 地图 JS API | 百度地图API SDK 这个大致看一下&#xff0c;我想。有点GIS基础都能完成地图开发。 个人认…...

Laya3D美术进阶:巧用Shader实现APP级游戏效果还原

1. 为什么选择Laya3D的Shader技术&#xff1f; 很多开发者第一次接触Laya3D时&#xff0c;都会有个疑问&#xff1a;为什么不用Unity直接开发&#xff1f;特别是在微信小游戏这个特定场景下&#xff0c;Laya3D的Shader技术到底能带来什么优势&#xff1f;我做了三年Laya小游戏…...

VCS编译SystemVerilog时,那个‘-P’选项你加对了吗?详解Verdi PLI配置

VCS编译SystemVerilog时&#xff0c;那个‘-P’选项你加对了吗&#xff1f;详解Verdi PLI配置 在芯片验证的日常工作中&#xff0c;VCSVerdi的组合堪称黄金搭档。但当你满怀信心地敲下编译命令&#xff0c;却发现怎么也生成不了关键的fsdb波形文件时&#xff0c;那种挫败感简直…...

深度学习优化算法详解:从 SGD 到 AdamW

深度学习优化算法详解&#xff1a;从 SGD 到 AdamW 1. 背景与动机 优化算法是深度学习训练的核心&#xff0c;选择合适的优化器直接影响模型的收敛速度和最终性能。本文深入分析主流优化算法的原理和适用场景。 2. 梯度下降家族 2.1 SGD import torch import torch.nn as nnopt…...

PvZ Toolkit:植物大战僵尸PC版终极修改器使用指南

PvZ Toolkit&#xff1a;植物大战僵尸PC版终极修改器使用指南 【免费下载链接】pvztoolkit 植物大战僵尸 PC 版综合修改器 项目地址: https://gitcode.com/gh_mirrors/pv/pvztoolkit 还在为植物大战僵尸中资源不足而烦恼吗&#xff1f;PvZ Toolkit是一款专为植物大战僵尸…...

Qwen3-14B GPU算力优化实践:显存占用降低28%的FlashAttention-2配置

Qwen3-14B GPU算力优化实践&#xff1a;显存占用降低28%的FlashAttention-2配置 1. 开箱即用的私有部署方案 对于想要快速部署Qwen3-14B大模型的企业和个人开发者来说&#xff0c;这个经过优化的私有部署镜像提供了完美的解决方案。它基于RTX 4090D 24GB显存显卡和CUDA 12.4环…...

Java线程与操作系统线程的生命周期

平时不管是面试还是线上排查问题&#xff0c;线程生命周期都是绕不开的点&#xff0c;但我发现Java线程的状态和操作系统&#xff08;OS&#xff09;底层的线程状态很容易搞混&#xff0c;本文就来理清楚二者的区别。 先说个大前提&#xff1a; 我们常用的HotSpot虚拟机&#x…...

3个颠覆性用法:B站字幕提取工具如何改变你的视频创作流程

3个颠覆性用法&#xff1a;B站字幕提取工具如何改变你的视频创作流程 【免费下载链接】BiliBiliCCSubtitle 一个用于下载B站(哔哩哔哩)CC字幕及转换的工具; 项目地址: https://gitcode.com/gh_mirrors/bi/BiliBiliCCSubtitle 你是否曾经为了获取B站视频的字幕而烦恼&…...

3步解决字幕处理90%的麻烦:BiliBiliCCSubtitle效率革命

3步解决字幕处理90%的麻烦&#xff1a;BiliBiliCCSubtitle效率革命 【免费下载链接】BiliBiliCCSubtitle 一个用于下载B站(哔哩哔哩)CC字幕及转换的工具; 项目地址: https://gitcode.com/gh_mirrors/bi/BiliBiliCCSubtitle 开篇&#xff1a;三个真实场景的效率反差 场景…...

【GitHub项目推荐--Godogen:一句话生成完整 Godot 游戏的 AI 流水线】⭐⭐⭐

简介 Godogen​ 是一套基于 Claude Code​ 构建的自动化游戏开发流水线。它不仅仅是一个代码生成器&#xff0c;更是一个全栈的“AI 开发团队”&#xff1a;你只需用自然语言描述游戏创意&#xff0c;它便能自动完成架构设计、美术生成、代码编写、引擎截图、视觉质检的全流程…...

利用快马AI一键生成vmware虚拟机下载与配置脚本,快速搭建开发原型环境

今天想和大家分享一个快速搭建开发环境的实用技巧——利用AI工具自动生成VMware虚拟机下载与配置脚本。作为一个经常需要测试不同开发环境的程序员&#xff0c;我发现手动配置虚拟机实在太费时间了&#xff0c;直到尝试了InsCode(快马)平台的AI生成功能&#xff0c;整个过程变得…...