物化视图(Materialized Views)同样借助了规则系统的定义方式,但与普通视图的核心区别在于:物化视图会在磁盘上分配真实的物理存储空间,并将查询执行结果全量持久化在本地。 创建物化视图:
CREATE MATERIALIZED VIEW sales_summary AS
SELECT seller_no, sum(invoice_amt) as sales_amt
FROM invoice
GROUP BY seller_no;
查询物化视图时直接从其专属的物理数据块中毫秒级读取,完全无需在每次查询时重新执行昂贵的底层复杂聚合关联。在底层基表数据发生大规模变更后,通过执行:
REFRESH MATERIALIZED VIEW sales_summary;
可以全量或通过并发选项在线刷新同步物化视图中的物理数据。