数据仓库服务 GAUSSDB(DWS)-GaussDB(DWS)视图解耦与自动重建:场景介绍

时间:2024-06-25 17:29:37

场景介绍

GaussDB (DWS)使用对象标识符(oid)来保存对象之间的引用关系,这使得视图在定义的时候就绑定了其依赖的数据库对象的oid,不管视图名称怎么改变,都不会改变这层依赖关系。如果要对基表进行一些字段修改,会因为与视图字段存在强绑定而报错。如果要删除某个表字段或整个表,就需要连同其关联的视图一起使用cascade关键字删除,表字段删除完成或表重建后再依次重建各级视图,给用户的使用增加了很大的工作量,导致易用性较差。

为了解决这一问题,GaussDB(DWS)在8.1.0集群版本实现了视图的解耦,使得存在视图依赖的基表或其他数据库对象(视图、同义词、函数、表字段)可以单独删除,而其对应对象上关联的依赖视图依然存在,而在基表重建后,可以通过ALTER VIEW REBUILD命令重建依赖关系。而8.1.1集群版本在此基础上又实现了自动重建,可以无感知自动重建依赖关系,开启自动重建后会有锁冲突,因此不建议用户开启自动重建。

support.huaweicloud.com/bestpractice-dws/dws_05_0061.html