---
title: "物化视图 - OceanBase 数据库 V4.3.5 | OceanBase 文档中心"
description: 物化视图 概述 物化视图与传统的视图不同，因为它实际上存储了查询结果的数据。简而言之，当您创建一个物化视图时，数据库执行与之关联的 SQL 查询，并将结果集存储在磁盘上。它通过预计算和存储视图的查询结果，减少实时计算，从而提升查询性能并简化复杂查询逻辑，常用于快速报表生成和数据分析场景。 本篇文档将向您介绍物化视图的…
image: https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*OSPzQ6GUQF4AAAAAQHAAAAgAeiGDAQ/original
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.3.5 LTS

# 物化视图

更新时间：2026-07-15 20:42:45

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.3.5/zh-CN/700.reference/100.oceanbase-database-concepts/400.database-objects/200.database-objects-of-mysql-mode/500.view-of-mysql-mode/200.materialized-view-overview-of-mysql-mode.md)  

## 概述

物化视图与传统的视图不同，因为它实际上存储了查询结果的数据。简而言之，当您创建一个物化视图时，数据库执行与之关联的 SQL 查询，并将结果集存储在磁盘上。它通过预计算和存储视图的查询结果，减少实时计算，从而提升查询性能并简化复杂查询逻辑，常用于快速报表生成和数据分析场景。

本篇文档将向您介绍物化视图的原理，包括全量刷新和增量刷新的实现原理，以及这两种刷新机制在数据更新中的不同；同时也介绍实时物化视图的实现原理，并阐述它如何保证更新及时性、查询结果的实时性和准确性。

## 全量刷新物化视图原理

全量刷新策略在每次更新时清除物化视图中现有的所有数据，并将最新的查询结果集重新插入。每次刷新时清除的隐藏容器表的数据，当隐藏容器表成功插入新的查询结果集时，再与容器表交换，交换成功后查询物化视图结果才是刷新后的结果。

![1](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/observer-enterprise/V4.3.5/700.reference/300.database-object-management/600.manage-views/%E5%85%A8%E9%87%8F%E5%88%B7%E6%96%B02.png)

## 增量刷新物化视图原理

增量刷新的实现依赖于物化视图日志。物化视图日志是一种用于跟踪物化视图基表（即被物化视图引用的表）数据变化的结构，记录自上次刷新以来基表中发生的所有变化，包括插入、更新和删除。

物化视图日志只处理变化的数据，记录变化，快速增量更新物化视图，保证物化视图与基表数据一致。

增量刷新策略更为高效，它仅处理自上次更新以来变化的数据，并将这些差异应用到物化视图中。所有增量数据变化会被记录在物化视图日志中，详尽列出了所有被修改行的旧值与新值，确保了数据的准确性与及时性。

![2](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/observer-enterprise/V4.3.0/materialized-view/materilazied-architechture.jpg)

如上图所示，当 DML 操作（如 `INSERT`、`UPDATE`）作用于基表时，DAS 机制保证同时更新基表和物化视图日志。后台维护任务会定期将物化视图日志中的增量变更应用到物化视图。物化视图日志中的部分数据一旦被刷新到物化视图，将由删除模块清除。此时，查询操作将同时访问物化视图和物化视图日志中尚未刷新的数据，合并这些信息后返回最新的结果集给用户。

## 实时物化视图实现原理

![3](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/observer-enterprise/V4.3.5/700.reference/300.database-object-management/600.manage-views/%E5%AE%9E%E6%97%B6%E7%89%A9%E5%8C%96%E8%A7%86%E5%9B%BE2.png)

OceanBase 支持实时物化视图，其与非实时物化视图的区别是：非实时物化视图只从 MView 中查询数据，而实时物化视图除了查询 MView 中的数据，还会访问基表数据的变更，这些变更被记录在物化视图日志（Mlog）中。实时物化视图在查询执行时能够在线计算 MView 和 Mlog 中的数据，从而返回实时的物化视图结果。

实时物化视图与增量刷新之间密切相关，实时物化视图通过不断查询物化视图日志，能够快速捕捉基表数据的最新变化，使得物化视图呈现出实时更新的状态。

## 相关文档

[物化视图概述](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000002016847)

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
