
# Schema演进介绍
随着业务发展，数据模型需要不断迭代调整。如果数据表不支持Schema演进，任何结构变更都需要重建表和迁移数据，这在大规模数据场景下成本极高。Hudi提供的Schema演进能力允许用户在表的生命周期中灵活修改表结构，无需重建表即可适应业务变化。
Schema演进（Schema Evolution）是指在数据表的生命周期中，允许用户能够方便地修改Hudi表的当前Schema，以适应数据需求的变化。这包括添加、删除或修改表中的字段。Schema演进是数据管理中的一个重要特性，特别是在数据表需要随着时间的推移进行调整时。
#### 约束与限制
本章节仅适用于MRS 3.2.0-LTS及之后版本。
#### Schema演进支持范围
Schema演进支持范围：
- 支持列（包括嵌套列）相关的增、删、改、位置调整等操作。
- 不支持对分区列做演进。
- 不支持对Array类型的嵌套列进行增、删、列操作。
表1引擎支持矩阵 
| 引擎         | DDL操作Schema | 变更后的Hudi表写操作支持 | 变更后的Hudi表读操作支持 | 变更后Hudi表compaction支持 |
|:---|:---|:---|:---|:---|
| SparkSQL   | Y           | Y              | Y              | Y                    |
| Flink      | N           | Y              | Y              | Y                    |
| HetuEngine | N           | N              | Y              | N                    |
| Hive       | N           | N              | Y              | N                    |
   
![](https://support.huaweicloud.com/cmpntguide-lts-mrs/public_sys-resources/note_3.0-zh-cn.png)
Hive引擎仅MRS 3.5.0-LTS及之后版本支持。HetuEngine引擎仅MRS 3.3.0-LTS及之后版本支持。
