数据岗位面试题更新 2026-08-05

请解释 Apache Doris 中 Rollup 表的概念,并说明它在查询优化中扮演什么角色?

数据性能优化技术原理Apache Doris

考察说明

考查对 Doris 中 Rollup 表概念及查询优化机制的理解。

回答思路

  1. 【回答框架 1】Rollup 表是 Doris 中基于基表(Base Table)创建的一种物化索引,它按照指定的维度列重新组织数据,并预先聚合部分指标,以实现对特定查询模式的加速。
  2. 【回答框架 2】在查询优化中,Rollup 表通过提供更小粒度的数据或预聚合结果,减少扫描数据量和计算开销,从而提升查询性能。优化器会根据查询条件自动选择匹配的 Rollup 表,若匹配则直接读取该表,否则回退到基表。
  3. 【回答框架 3】Rollup 表与视图不同,它是物理存储的,占用额外存储空间,但能显著加快带有固定维度分组或过滤的查询。
  4. 【回答框架 4】创建 Rollup 表时需明确维度列和聚合方式,且 Rollup 表的维度列必须是基表维度列的子集,聚合函数需与基表一致或兼容。
  5. 【回答框架 5】Rollup 表常用于固定报表或频繁执行的聚合查询,通过预计算减少实时计算压力。
  6. 【关键点 1】Rollup 表是物化索引,预聚合数据以加速查询。
  7. 【关键点 2】查询优化器自动匹配最优 Rollup 表,减少扫描和计算。
  8. 【关键点 3】Rollup 表是物理存储,基于基表维度列子集创建。
  9. 【关键点 4】适合固定模式报表,但增加存储成本。
  10. 【易错点 1】不要混淆 Rollup 表与视图,前者是物理存储的物化索引。
  11. 【易错点 2】Rollup 表并非覆盖所有查询,未命中时仍走基表,可能增加维护开销。