HoloWeb支持使用可视化方式迁移表的Table Group(Resharding),方便您快速完成Resharding操作及快速处理期间可能出现的异常情况。本文为您介绍如何使用HoloWeb进行Table Resharding操作。Table Group、Shard数、Resharding原理请参见基本概念。
使用限制
- HoloWeb仅支持V2.0.24及以上版本的实例进行Resharding。如果您的实例版本低于V2.0.24,请升级版本,或参考(Resharding)迁移表至新建Table Group进行Resharding操作。 
- Resharding功能的其他使用限制请参见(Resharding)迁移表至新建Table Group。 
新建Table Resharding任务
- 进入HoloWeb开发页面,详情请参见连接HoloWeb。 
- 在HoloWeb开发页面的顶部菜单栏,单击数据方案。 
- 在数据方案页面,单击左侧导航栏的Table Resharding。 
- 在Table Resharding页面单击新建Table Resharding,并根据以下参数说明配置Resharding任务(未提及的参数保持默认即可)。 - 模块 - 参数名 - 说明 - 选择实例 - 实例名 - 目标Hologres实例名称。 - 数据库 - 目标实例的数据库。 - 设置 - Schema - 需要进行Resharding的Schema。 - Table - 需要进行Resharding的表。 - 目标Table Group - 目标表的Table Group。 - 导入GUC参数设置 - GUC参数 - 可选参数。由于Resharding涉及数据导入,当内存开销过大时可能涉及部分GUC调整,详情请参见如何解决导入导出时OOM。 
- 单击提交,即可在Table Resharding页面查看Resharding任务列表信息。  说明 说明- 执行进度:对于分区表,会根据已完成的分区子表数展示进度。对于非分区表,执行进度当前仅展示0%或100%。 
- 当任务状态为执行成功时,表示Resharding任务已执行完成。 
异常任务处理
Table Resharding过程中,会先将表设为只读状态,而后通过临时表的方式进行Table Group迁移。由于Resharding任务涉及数据导入,可能需要执行较长时间,因此可能出现多种异常情况,如OOM、手动终止任务等,此时的任务状态为被中断或运行失败。因此当表的Resharding任务异常时,原表会仍处于只读状态,且数据库中会出现名为<initial_table_name>_xxxxxxxx的临时表。此时需要选择如下情况之一进行操作:
- 继续运行 - 如果由于误操作导致Resharding任务中断,或由于OOM等原因导致Resharding任务失败并已完成GUC调整,您仍希望进行该表的Resharding操作,请单击操作列的继续运行,后台会基于此前的进度继续执行Resharding任务。 
- 取消任务 - 如果您不需要继续进行该表的Resharding操作,希望恢复初始状态,请单击操作列的取消任务,后台会进行取消原表的只读状态、清理临时表等操作,以帮助您恢复表的初始状态。