database compatibility assessment

ORACLE 物化视图(MATERIALIZED VIEW) 迁移 gaussdb 505 A 模式 怎么改

迁衡基于规则 ora.object.mview 分析 ORACLE 物化视图(MATERIALIZED VIEW) 到 gaussdb 505 A 模式 的兼容性、改写路径与验证建议。

兼容性判定

真机验证:opengauss 6.0.5 · 支持物化视图(全量/增量刷新有约束);REFRESH FAST ON COMMIT 与 MV LOG 链路逐个评估 |实测2026-07-09(og6.0.5): 语法被拒,确认不兼容
支持度none
严重度major
置信度high
依据规则ora.object.mview

怎么改

需按命中位置逐条评估改写

判定说明

支持物化视图(全量/增量刷新有约束);REFRESH FAST ON COMMIT 与 MV LOG 链路逐个评估 |实测2026-07-09(og6.0.5): 语法被拒,确认不兼容

库侧 / 应用侧路径

库侧改造

可行:目标端支持物化视图时按其刷新能力重建;不支持 FAST/ON COMMIT 时降级定时全量刷新或改实体表 + 定时作业

应用侧改造

可行:改应用层缓存或实时聚合查询(数据量允许时)

推荐路线:db_side。验证建议:刷新周期内数据陈旧度与业务确认;刷新后与基表聚合结果比对

规则样例

CREATE MATERIALIZED VIEW mv_sum REFRESH FAST ON COMMIT AS SELECT dept, SUM(sal) s FROM emp GROUP BY dept
CREATE MATERIALIZED VIEW mv_snap BUILD IMMEDIATE REFRESH COMPLETE AS SELECT * FROM t
CREATE OR REPLACE VIEW v_sum AS SELECT dept, SUM(sal) s FROM emp GROUP BY dept