一、概述
1. 普通视图与物化视图区别
- 普通视图不保存数据,保存的仅仅是查询语句,查询的时候还是从原表读取数据,可以将普通视图理解为是个子查询
- 物化视图则是把查询的结果根据相应的引擎存入到了磁盘或内存中,对数据重新进行了组织,可以理解物化视图是完全的一张新表
2. 物化视图的优缺点
- 优点:查询速度快,要是把物化视图这些规则全部写好,它比原数据查询快了很多,总的行数少了,因为都预计算好了
- 缺点:它的本质是一个流式数据的使用场景,是累加式的技术,所以要用历史数据做去重、去核这样的分析,在物化视图里面是不太好用的。在某些场景的使用也是有限的。而且如果一张表加了好多物化视图,在写这张表的时候,就会消耗很多机器的资源,比如数据带宽占满、存储一下子增加了很多等
3. 基本语法
3.1 创建物化视图
CREATE [MATERIALIZED] VIEW [IF NOT EXISTS] [db.]view_name [TO[db.]name]
[ENGINE = engine] [POPULATE]
AS SELECT .