calcite物化视图具体解析方法有哪些?
- 内容介绍
- 文章标签
- 相关推荐
本文共计9799个文字,预计阅读时间需要40分钟。
概述+物化视图和视图类似,反映的是某个查询的结果,但与视图不同的是,物化视图本身会存储数据,而视图仅保存SQL定义。由于是物化的视图,当用户查询时,会优先创建的物化视图。
概述物化视图和视图类似,反映的是某个查询的结果,但是和视图仅保存SQL定义不同,物化视图本身会存储数据,因此是物化了的视图。
当用户查询的时候,原先创建的物化视图会注册到优化器中,用户的查询命中物化视图后,会直接去物化视图拿数据(缓存),提高运行速度,是典型的空间换时间。
本篇文章会先介绍《Optimizing Queries Using Materialized Views: A Practical, Scalable Solution》如果改写物化视图,接下来会说明 calcite 的物化视图改写逻辑。
物化视图有三个需要解决的问题:
- View design: determining what views to materialize, including how to store and index them.
第一个问题,是要选择哪些数据需要进行物化,这个通常是由用户自己决定的,我们能做的就是收集用户的统计信息,展示高频的表信息,查询谓词或者子查询,辅助用户判断哪些数据需要物化。
另外 calcite 也有一个 Lattices 的功能,可以自动收集统计星型模型和雪花模型的表,自动构建部分 cube 的物化视图。
本文共计9799个文字,预计阅读时间需要40分钟。
概述+物化视图和视图类似,反映的是某个查询的结果,但与视图不同的是,物化视图本身会存储数据,而视图仅保存SQL定义。由于是物化的视图,当用户查询时,会优先创建的物化视图。
概述物化视图和视图类似,反映的是某个查询的结果,但是和视图仅保存SQL定义不同,物化视图本身会存储数据,因此是物化了的视图。
当用户查询的时候,原先创建的物化视图会注册到优化器中,用户的查询命中物化视图后,会直接去物化视图拿数据(缓存),提高运行速度,是典型的空间换时间。
本篇文章会先介绍《Optimizing Queries Using Materialized Views: A Practical, Scalable Solution》如果改写物化视图,接下来会说明 calcite 的物化视图改写逻辑。
物化视图有三个需要解决的问题:
- View design: determining what views to materialize, including how to store and index them.
第一个问题,是要选择哪些数据需要进行物化,这个通常是由用户自己决定的,我们能做的就是收集用户的统计信息,展示高频的表信息,查询谓词或者子查询,辅助用户判断哪些数据需要物化。
另外 calcite 也有一个 Lattices 的功能,可以自动收集统计星型模型和雪花模型的表,自动构建部分 cube 的物化视图。

