博客
Databend 开源周报第 137 期
Databend Labs3月 25, 2024
英文版移步:https://www.databend.com/blog/2024-03-25-databend-weekly
Databend 是一款现代云数仓。专为弹性和高效设计,为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务:https://app.databend.cn 。
What's On In Databend
探索 Databend 本周新进展,遇到更贴近你心意的 Databend。
支持查询匹配倒排索引
倒排索引是文档检索系统中最常用的数据结构,用来存储在全文搜索下某个单词在一个文档或者一组文档中的存储位置的映射。
Databend 现已支持在查询中使用
match
SELECT id, score(), content FROM t WHERE match(content, '中国') ORDER BY score()
----
21 1.1967509 中国的古代诗词充满了深邃的意境和独特的韵味,是中华文化的重要组成部分。
24 1.1967509 中国的传统节日蕴含着丰富的文化内涵,是传承和弘扬中华文化的重要途径。
28 1.3336442 中国的饮食文化博大精深,各地的美食各具特色,让人流连忘返。
12 1.4319203 北京的故宫是中国古代建筑的瑰宝,吸引了无数游客前来参观。
15 1.5059 中国的茶文化源远流长,品茶已经成为一种生活方式。
如果您想了解更多信息,欢迎联系 Databend 团队,或查看下面列出的资源。
Code Corner
一起来探索 Databend 和周边生态中的代码片段或项目。
结合 TASK 和 STREAM 实时捕获和跟踪用户活动
Databend 中的流(STREAM)是对表变化的动态实时表示。创建流可以捕获和跟踪相关表的修改,并进行持续分析。而任务封装了特定的 SQL 语句,旨在按照预定的时间间隔、特定事件触发或作为更广泛的任务序列的一部分来执行。
在创建任务时,可以按照下面的工作流程进行设计。
下面的示例展示了如何结合 TASK 和 STREAM 实时捕获和跟踪用户活动,定期将
user_activity_profiles
activities_stream
user_activity_profiles
-- Define a task in Databend
CREATE TASK user_activity_task
WAREHOUSE = 'default'
SCHEDULE = 1 MINUTE
-- Trigger task when new data arrives in activities_stream
WHEN stream_status('activities_stream') AS
-- Insert new records into user_activity_profiles
INSERT INTO user_activity_profiles
SELECT
-- Join activities_stream with user_profiles based on user_id
a.user_id, p.username, p.location, a.activity, a.timestamp
FROM
activities_stream AS a
JOIN user_profiles AS p
ON a.user_id = p.user_id
-- Include only rows where the action is 'INSERT'
WHERE a.change$action = 'INSERT';
欢迎感兴趣的小伙伴阅读下面的文档,了解如何利用 Databend Cloud 完成这项任务。
- Docs | Automating Data Loading with Tasks
- Docs | Example: Tracking and Transforming Data in Real-Time
Highlights
以下是一些值得注意的事件,也许您可以找到感兴趣的内容。
- 支持 和
show views
。desc view
- 新增 ,
is_error
is_not_error