🗒️物化视图
2023-5-26
| 2023-7-11
0  |  阅读时长 0 分钟
type
status
date
slug
summary
tags
category
icon
password

Optimizing Queries Using Materialized Views: A Practical, Scalable Solution

原文

解读1
解读2
其他参考资料
 

calcite

calcite中的实现
 
 
物化视图有三个需要解决的问题:
  • View design: determining what views to materialize, including how to store and index them.
第一个问题,是要选择哪些数据需要进行物化,这个通常是由用户自己决定的,我们能做的就是收集用户的统计信息,展示高频的表信息,查询谓词或者子查询,辅助用户判断哪些数据需要物化。
另外 calcite 也有一个 Lattices 的功能,可以自动收集统计星型模型和雪花模型的表,自动构建部分 cube 的物化视图。
  • View maintenance: efficiently updating materialized views when base tables are updated.
第二个问题,当原始表更新后,如果更新物化视图表。
当原始表增加数据或更新数据后,是直接增量更新到物化视图,还是全量更新到物化视图,实时触发还是延迟触发抑或是定时触发,这些都是需要考虑的点。
  • View exploitation: making efficient use of materialized views to speed up query processing.
如果利用物化视图进行加速,主要是对用户查询进行改写,使查询命中物化视图然后进行改写。
主要有三种改写方法,基于语法的改写,基于规则的改写 ,基于结构的改写
 

 

产品

字节跳动

根据规则自动创建物化视图
 
展示信息:
  1. 有哪些物化视图被创建出来了
  1. 物化视图的命中次数
 
 
 
 
 
 
 
 
 
  • 论文
  • 批流一体代码优化
    Loading...
    目录