变更 本章节主要介绍集群规格变更的操作。 规格变更 在购买数据仓库服务(DWS)集群时,有多种节点规格供您选择,您可根据业务需要选择合适的节点规格。当集群创建成功后,随着业务量的增长,您可以对集群进行扩容,从而增加集群节点。 扩容集群 随着用户的数据仓库容量和性能需求的变化,您可以在管理控制台调整已有集群的大小,以便充分利用数据仓库服务(DWS) 提供的计算资源和存储资源。 说明 新增的节点默认是按需计费。 云数仓集群扩容时使用与当前集群相同的存储规格。 如果您是因集群存储容量不足而扩容集群,建议您在扩容前先执行VACUUM清理和回收存储空间,数据仓库服务(DWS)数据仓库中保存的数据在删除后,可能没有释放占用的磁盘空间形成脏数据,导致磁盘浪费。如果执行VACUUM后,已使用存储容量仍然占用过高,您再进行扩容。 扩容对系统的影响 扩容前,需退出创建了临时表的客户端连接,因为在扩容过程中及扩容成功之前创建的临时表将会失效,操作临时表也会失败。但是扩容后创建的临时表不受影响。 在执行“扩容”操作后,集群会进行一次自动快照,快照创建成功后进行集群扩容。 正在扩容的集群将禁用重启集群、扩容集群、创建快照、重置集群管理员密码和删除集群的功能。 扩容过程中,集群会自动重启,因此集群会有一段时间变为“不可用”状态,重启成功后集群变回“可用”状态。然后在扩容结束阶段,系统会将集群中用户数据在全部节点重新动态分布。 离线扩容(离线重分布模式)过程中,用户应该停止所有业务或运行少量查询语句。表重分布期间会对表加共享锁,所有插入、更新、删除操作和表DDL操作都会长时间阻塞,会出现等锁超时情况。一旦表重分布完成,用户可以正常访问该表。在重分布执行过程中,用户应当避免执行超过20分钟的查询(在重分布执行时申请写锁的默认时间为20分钟)。否则可能导致重分布出现等待加锁超时失败的问题。 在线扩容(在线重分布模式)过程中,表重分布期间用户可以对该表执行插入、更新、删除,但重分布过程仍然会短时间阻塞用户的数据更新操作,会影响用户语句的执行性能。扩容重分布过程会消耗大量的CPU和IO资源,因此会对用户作业性能影响较大,用户应该尽可能在停止业务情况下或业务轻载的情况下执行扩容重分布。用户也可以考虑分段扩容重分布策略,在系统负载很小的情况下采用高并发进行扩容重分布,在系统负载大的情况下停止扩容重分布或采用低并发进行扩容重分布。 扩容后,如果集群创建新快照,将包含扩容节点上的数据。 如果集群扩容失败,数据库会在后台自动执行扩容回滚操作,集群会恢复到扩容前的节点个数。 如果回滚成功,集群仍可以正常使用,用户可以重新执行“扩容”操作,如果仍扩容失败,请及时联系技术支持人员进行处理。 如果数据库因为某些异常原因后台回滚失败,则集群可能会变为“不可用”状态,此时无法再执行“扩容”或重启集群的操作,请及时联系技术支持人员进行处理。 扩容重分布过程中(包括离线重分布和在线重分布模式),不支持创建、修改、删除数据库和表空间。 离线重分布模式的扩容过程中,数据库不支持DDL和DCL操作,正在重分布的表只支持DQL操作,在线重分布模式的扩容过程中,数据库支持部分DDL和DCL操作。 在线重分布模式下在重分布的表支持插入、删除、更新和部分DDL,支持的功能为: a.重分布过程中用户可进行正在重分布的本地表的INSERT、DELETE、UPDATE、MERGE INTO、OVERWRITE、UPSERT业务。 b.重分布过程中用户可进行正在重分布的本地表跨节点组的关联查询业务。 c.重分布过程中用户可进行正在重分布的本地表的DROP、TRUNCATE、TRUNCATEPARTITION业务。 d.在线重分布模式下正在重分布的本地表不支持如下功能: 表正在重分布过程中用户不能执行ALTER TABLE语句,典型的包括增加、删除字段,重命名,修改schema,但TRUNCATE PARTITION除外。 表正在重分布过程中用户不能创建、修改、删除索引。 表正在重分布过程中用户不能对该表执行vacuum full和cluster语句。 表正在重分布过程中用户不能修改字段依赖的SEQUENCE对象,包括创建和修改字段依赖的SEQUENCE对象,典型的语句是CREATE/ALTER SEQUENCE ... OWNED BY。