透明改写让用户在使用物化视图加速时完全无感——创建物化视图时写的 SQL 和系统实际执行的 SQL 并不完全相同,智能优化器会在幕后自动识别和改写查询逻辑。
以谓词自动补偿为例,假设用户创建物化视图的语句是:
level:error | select latency, host, message from log
对于如下查询请求:
level:error and latency > 100 | select avg(latency), host from log where message like '%xxx%' group by host
优化器会自动添加 latency > 100 作为查询条件去查物化结果,用户完全无感。
这种机制的好处是:对于过滤性加速场景,多个 SQL 可以最大化复用同一份物化结果,有效降低了物化带来的存储开销。用户无需深入了解底层细节,就可以轻松为查询加速。基于成本的优化器(CBO)会在查询时自动介入,如果发现匹配的物化视图就智能选择最优的一个。




