【详述】对基表创建小时粒度的同步物化视图和天粒度的异步物化视图,使用DATE_TRUNC函数对基表按天聚合查询指标,查询耗时长达82s,通过explain查看发现两个问题,一是查询时把所有的字段都引用了,但实际查询只需要一个时间维度(天)和两个指标;二是应该可以走天粒度物化视图和小时粒度物化视图的,结果走基表查询
【是否存算分离】否
【StarRocks版本】3.3.4
【集群规模】1fe + 3be
【机器信息】fe 8c 16G * 1 + be 64C 128G * 3
【相关信息】
建表语句
同步物化视图语句
异步物化视图
当前异步物化视图分区刷新情况
查询语句
WITH qu_0
AS (
SELECT DATE_TRUNC(‘day’, ta_0
.data_date
) AS co_1
,
COALESCE(SUM(ta_0
.ssp_req
), 0) AS co_0
,
COALESCE(SUM(ta_0
.dsp_req
), 0) AS co_2
FROM adx
.mammut_adx_slot_pkg_hi
AS ta_0
WHERE ta_0
.data_date
>= ‘2024-10-05 00:00:00’
AND ta_0
.data_date
< ‘2024-10-07 00:00:00’
GROUP BY DATE_TRUNC(‘day’, ta_0
.data_date
)
)
SELECT ta_1
.co_1
AS co_3
,
ta_1
.co_0
AS co_4
,
ta_1
.co_2
AS co_5
FROM qu_0
AS ta_1
WHERE ta_1
.co_1
IS NOT NULL
LIMIT 1000
查询计划
如果按天聚合改成按小时聚合可以命中同步物化视图