Doris系列之物化视图操作

Doris系列

注:大家觉得博客好的话,别忘了点赞收藏呀,本人每周都会更新关于人工智能和大数据相关的内容,内容多为原创,Python Java Scala SQL 代码,CV NLP 推荐系统等,Spark Flink Kafka Hbase Hive Flume等等~写的都是纯干货,各种顶会的论文解读,一起进步。
今天和大家分享一下Doris系列之物化视图操作
#博学谷IT学习技术支持



前言

在这里插入图片描述
接着上次的Doris系列继续和大家分享,上一次主要和大家分享了Doris系列之高级功能-Rollup操作,今天和大家分享一下物化视图操作。


一、物化视图是什么?

物化视图的出现主要是为了满足用户,既能对原始明细数据的任意维度分析,也能快速的对固定维度进行分析查询。

物化视图就是包含了查询结果的数据库对象,可能是对远程数据的本地copy,也可能是一个表或多表join后结果的行或列的子集,也可能是聚合后的结果。说白了,就是预先存储查询结果的一种数据库对象。

在Doris中的物化视图,就是查询结果预先存储起来的特殊的表。

二、物化视图优势

  1. 对于那些经常重复的使用相同的子查询结果的查询性能大幅提升
  2. Doris自动更新物化视图的数据,保证base 表和物化视图表的数据一致性。无需额外的维护成本
  3. 查询的时候也可以自动匹配最优的物化视图

三、使用步骤

1.创建一个base表并插入数据

# 操作-创建Base表
CREATE TABLE sales_records(
    id INT COMMENT "销售记录的id",
    seller_id INT COMMENT "销售员的id",
    store_id  INT COMMENT "门店的id",
    sale_date DATE COMMENT "售卖时间",
    sale_amt BIGINT COMMENT "金额"
)
DISTRIBUTED BY HASH(id) BUCKETS 10;

insert into sales_records values (1001,1,1,'2022-01-01',100);
insert into sales_records values (1002,2,2,'2022-01-02',101);
insert into sales_records values (1003,3,3,'2022-01-03',102);

在这里插入图片描述

2.创建物化视图

# 创建物化视图
CREATE MATERIALIZED VIEW mv_1 AS
SELECT seller_id,sale_date,SUM(sale_amt)
FROM sales_records
GROUP BY seller_id,sale_date;

# 操作-查询物化视图
desc sales_records all;

在这里插入图片描述

3.命中了物化视图

explain SELECT seller_id,sale_date,SUM(sale_amt)
FROM sales_records
GROUP BY seller_id,sale_date;

在这里插入图片描述


总结

今天和大家分享一下Doris系列之物化视图操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值