Databend 开源周报第 110 期

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

What's On In Databend

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

使用 BendSQL 管理 Stage 中的文件

Databend 推荐使用 PRESIGN 来将文件上传到 stage 中或者将文件下载到本地。PRESIGN 会生成一个带有时间限制的预签名 URL ,提供了一种安全高效的数据传输方式,并且减少文件传输的延迟。

对于 BendSQL 客户端的用户而言,可以利用 PUT 命令将文件上传到 Stage 并使用 GET 命令下载 Stage 中的文件。

SQL 复制代码
root@localhost:8000/default> PUT fs:///books.parquet @~

PUT fs:///books.parquet @~

┌───────────────────────────────────────────────┐
│                 file                │  status │
│                String               │  String │
├─────────────────────────────────────┼─────────┤
│ /books.parquet                       │ SUCCESS │
└───────────────────────────────────────────────┘

GET @~/ fs:///fromStage/

┌─────────────────────────────────────────────────────────┐
│                      file                     │  status │
│                     String                    │  String │
├───────────────────────────────────────────────┼─────────┤
│ /fromStage/books.parquet                      │ SUCCESS │
└─────────────────────────────────────────────────────────┘

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

Code Corner

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

在 Jupyter Notebook 中使用 Databend Python Binding

Databend 提供 Python Binding ,无需部署 Databend 实例即可使用,DataFrame 也可以自由转换到 Polars 和 Pandas 格式,方便和数据科学工具集成使用。

只需要执行下面的命令安装即可:

复制代码
pip install databend

下面的程序展示了如何在 Jupyter Notebook 中使用 Databend Python Binding ,并利用 matplotlib 绘制条形图。

python! 复制代码
# Create a table in DataBend
ctx.sql("CREATE TABLE IF NOT EXISTS user (created_at Date, count Int32)")

# Create a table in DataBend
ctx.sql("CREATE TABLE IF NOT EXISTS user (created_at Date, count Int32)")

# Insert multiple rows of data into the table
ctx.sql("INSERT INTO user VALUES ('2022-04-01', 5), ('2022-04-01', 3), ('2022-04-03', 4), ('2022-04-03', 1), ('2022-04-04', 10)")

# Execute a query
result = ctx.sql("SELECT created_at as date, count(*) as count FROM user GROUP BY created_at")

# Display the query result
result.show()

# Import libraries for data visualization
import matplotlib.pyplot as plt

# Convert the query result to a Pandas DataFrame
df = result.to_pandas()

# Create a bar chart to visualize the data
df.plot.bar(x='date', y='count')
plt.show()

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

Highlights

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

What's Up Next

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

支持使用 JavaScript 创建 UDF

PR #12729 | feat: implement udf server in databend 预计会在本周进行合并。这意味着 Databend 即将支持使用 Python 创建用户自定义函数。

SQL 复制代码
CREATE FUNCTION [IF NOT EXISTS] <udf_name> (<arg_type>, ...) RETURNS <return_type> LANGUAGE <language> HANDLER=<handler> ADDRESS=<udf_server_address>

我们期望在这个 PR 的基础上提供对多种语言 UDF 的支持,JavaScript 可能是值得尝试的选项之一。

Issue #12746 | Feature: support javascript udf

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

Changelog

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

地址:github.com/datafuselab...

Contributors

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

Connect With Us

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

相关推荐
22:30Plane-Moon几秒前
SQL 查询语法笔记
数据库·笔记·sql
望获linux43 分钟前
【Linux基础知识系列】第六十四篇 - 了解Linux的硬件架构
linux·运维·服务器·开发语言·数据库·操作系统·嵌入式软件
全栈小51 小时前
【数据库】使用Sql Server将分组后指定字段的行数据转为一个字段显示,并且以逗号隔开每个值,收藏不迷路
数据库·sql server
JohnYan1 小时前
工作笔记 - 一种业务信息汇报机制的设计和实现
数据库·后端·postgresql
sq8002 小时前
EFCore ORM 数据库数据表迁移
数据库·后端·orm
小徐不徐说2 小时前
深入理解 Qt 信号与槽机制的底层逻辑
数据库·c++·qt·面试
一只小小汤圆2 小时前
qt 心跳包
服务器·数据库·qt
巴里巴气2 小时前
MongoDB事务和隔离级别的原理
数据库·mongodb
什么半岛铁盒3 小时前
MySQL的常用数据类型详解
linux·数据库·mysql·adb
rannn_1113 小时前
【MySQL学习|黑马笔记|Day1】数据库概述,SQL|通用语法、SQL分类、DDL
数据库·后端·学习·mysql