您现在的位置是:首页 > 文章详情

Databend 产品月报(2024年9月)

日期:2024-10-17点击:121

很高兴为您带来 Databend 2024 年 9 月的最新更新、新功能和改进!我们希望这些增强功能对您有所帮助,并期待您的反馈。

新集成方式:字典

您现在可以通过定义字典的结构并指定外部数据源来创建字典。Databend 的字典功能提供了一种高效的方式,可以直接在 Databend 中集成并查询来自支持的外部数据源(目前支持 MySQL 和 Redis)。通过充当内存中的键值存储,字典能够快速访问外部数据,而不需要复杂的数据管道或传统的 ETL 过程。

以下示例创建了一个引用 MySQL orders 表的字典。完整示例请参阅: https://docs.databend.cn/guides/query/dictionary

CREATE DICTIONARY order_dict ( order_id INT, customer_name STRING, order_total INT ) PRIMARY KEY order_id SOURCE(MYSQL( host='mysql' port='3306' username='root' password='admin' db='dict' table='orders' )); 

如果感兴趣,您可以跟随本教程进行实际操作体验:使用字典访问 MySQL 和 Redis

SQL 变量

您现在可以使用 SQL 变量来存储和管理临时数据。在查询中使用变量时,您可以使用 $ 进行值替换,或使用 IDENTIFIER 访问数据库对象。有关更多信息,请参阅 SQL 变量

您可以在 SQL 语句中通过 $ 符号或 getvariable() 函数引用变量的值。两种方法都支持动态替换,即在运行时将变量的值直接嵌入查询中。

-- Set a variable to use as a filter value SET VARIABLE threshold = 100; -- Use the variable in a query with $ SELECT * FROM sales WHERE amount > $threshold; -- Alternatively, use the getvariable() function SELECT * FROM sales WHERE amount > getvariable('threshold'); 

IDENTIFIER 关键字允许您动态引用存储在变量中的数据库对象名。请注意,使用 IDENTIFIER 访问对象的功能在 BendSQL 中尚未支持。

-- Create a table with sales data CREATE TABLE sales_data (region TEXT, sales_amount INT, month TEXT) AS SELECT 'North', 5000, 'January' UNION ALL SELECT 'South', 3000, 'January'; select * from sales_data; -- Set variables for the table name and column name SET VARIABLE table_name = 'sales_data'; SET VARIABLE column_name = 'sales_amount'; -- Use IDENTIFIER to dynamically reference the table and column in the query SELECT region, IDENTIFIER($column_name) FROM IDENTIFIER($table_name) WHERE IDENTIFIER($column_name) > 4000; 

故障安全(Fail-Safe)

Databend 中的故障安全机制旨在从对象存储中恢复丢失或意外删除的数据。目前,故障安全仅支持 S3 兼容的存储类型。有关故障安全的更多信息,请参阅故障安全

CALL SYSTEM$FUSE_AMEND('<database_name>', '<table_name>'); 

要使故障安全(Fail-Safe)生效,必须启用存储桶版本控制。请注意,启用版本控制之前创建的数据无法通过此方法恢复。

流提示

流提示允许您通过提示来指定各种流配置选项,从而控制流的处理方式。

SELECT ... FROM <stream_name> WITH (<hint1> = <value1>[, <hint2> = <value2>, ...]) 

可用的提示选项:

  • CONSUME : 指定此查询是否会消费流。默认为 False
  • MAX_BATCH_SIZE: 定义从流中每批处理的最大行数。

有关这些提示和示例的更多信息,请参阅 WITH 流提示

新增 FUSE 引擎选项

我们引入了一个新的 FUSE 引擎选项 data_retention_period_in_hours,允许您指定保留表数据的小时数。有关更多信息,请参阅 FUSE 引擎

Databend Cloud 体验优化

我们给 Databend Cloud 带来了一些新功能,准备好迎接更棒的体验吧!

TASK_HISTORY 表函数

我们引入了一个新的表函数 TASK_HISTORY,用于显示任务运行历史。

-- Retrieve all task history records SELECT * FROM TASK_HISTORY() order by scheduled_time; -- Retrieve the task history records where the scheduled time range starts at '2022-01-02T01:12:00-07:00' and ends at '2022-01-02T01:12:30-07:00'. SELECT * FROM TASK_HISTORY( SCHEDULED_TIME_RANGE_START=>TO_TIMESTAMP('2022-01-02T01:12:00-07:00'), SCHEDULED_TIME_RANGE_END=>TO_TIMESTAMP('2022-01-02T01:12:30-07:00')); 

批量操作

您可以对计算集群执行批量操作,包括批量重启、批量暂停、批量恢复和批量删除。要进行批量操作,可以在计算集群列表中勾选所需操作的计算集群,然后点击省略号按钮选择所需的操作。

新教程

  • 分析 AWS 账单:在本教程中,我们将指导您完成导入 AWS 账单数据并使用 SQL 进行成本分析的过程。您将学习如何将 AWS 账单数据加载到 Databend Cloud 中,查询以找出主要的成本驱动因素,并深入了解您的 AWS 使用情况。
  • 从 Snowflake 迁移:在本教程中,我们将指导您完成将数据从 Snowflake 导出为 Parquet 格式并存储到 Amazon S3 存储桶的过程,然后将其加载到 Databend Cloud 中。

授予财务人员访问权限

为了便利财务团队的工作,同时确保数据安全,您可以在 Databend Cloud 中创建一个名为 billing 的角色。

CREATE ROLE billing; 

该角色将专门为仅提供与账单相关的信息访问而定制。有关更多信息,请参阅授予财务人员访问权限

原文链接:https://my.oschina.net/u/5489811/blog/16368290
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章