恢复ClickHouse业务数据
操作场景
在用户意外修改、删除或需要找回数据时,集群用户对ClickHouse进行重大操作(如升级、重大数据调整等)后,系统数据出现异常或未达到预期结果,模块全部故障无法使用,或者迁移数据到新集群的场景中,需要对ClickHouse进行恢复数据操作。
集群用户可以通过FusionInsight Manager创建恢复ClickHouse业务数据任务,系统仅支持手动进行数据恢复。
ClickHouse备份恢复功能不支持识别用户的ClickHouse表、索引、视图等对象在业务和结构上存在的关联关系。用户在执行备份恢复任务时,需要根据业务场景管理统一的恢复点,防止影响业务正常运行。
MRS集群支持多种数据路径类型恢复ClickHouse业务数据:
- RemoteHDFS:表示从备集群的HDFS目录恢复数据。
- OBS:表示从OBS中恢复数据。

当业务正常时需要恢复数据,建议手动备份最新管理数据后,再执行恢复数据操作。否则会丢失从备份时刻到恢复时刻之间的ClickHouse数据。
约束与限制
- 该功能仅MRS 3.1.0及之后版本支持。
- 只支持进行数据备份时的系统版本与当前系统版本一致时的数据恢复。
- ClickHouse元数据恢复和业务数据恢复不能同时进行操作,否则会导致业务数据恢复失败。建议元数据恢复完成后再进行业务数据恢复。
- MRS 3.3.0-LTS.1及之后版本,支持将ClickHouse业务数据备份文件保存至OBS。
对系统的影响
- 恢复过程中会停止用户认证,用户无法开始新的连接。
- 数据恢复后,会丢失从备份时刻到恢复时刻之间的数据。
- 数据恢复后,需要重新启动ClickHouse的上层应用。
前提条件
- 如果需要从远端HDFS恢复数据,需要准备备集群,且已完成数据备份,详细操作请参见备份ClickHouse业务数据。如果主备集群部署为安全模式,且主备集群不是由同一个FusionInsight Manager管理,则必须配置系统互信,请参见配置MRS集群间互信。如果主备集群部署为普通模式,则不需要配置互信。
- 主备集群上的时间必须一致,而且主备集群上的NTP服务必须使用同一个时间源。
- 规划好恢复数据保存表的数据库,数据表在HDFS的保存位置,以及访问恢复数据的用户清单。
- 检查ClickHouse备份文件保存路径。
- 停止ClickHouse的上层应用。
- 主备集群中,从远端HDFS恢复至本地时,需要确保ClickHouse的“HADOOP_RPC_PROTECTION”配置项与HDFS的“hadoop.rpc.protection”配置项的值保持一致。
- 若待恢复集群不存在备份业务数据的元数据信息时,恢复业务数据前需要恢复备份业务数据对应的备份元数据信息,或在恢复时配置备份元数据和备份业务数据同时恢复。
- 若待恢复数据非本集群数据,待恢复数据为MRS其他ClickHouse集群的备份数据,还需要满足如下要求:
- 备份数据集群与待恢复集群MRS版本一致。
- 备份数据集群与待恢复集群模式一致。
- 备份数据集群与待恢复集群ClickHouse拓扑一致,包括shard、副本。
- 待恢复集群ClickHouse磁盘分区数量与磁盘容量需大于等于备份数据集群。
恢复ClickHouse业务数据
- 登录MRS集群Manager界面。
登录集群Manager界面请参考访问MRS集群Manager。
- 选择“运维 > 备份恢复 > 备份管理”。
- 在任务列表指定任务的“操作”列,选择“更多 > 查询历史”,打开备份任务执行历史记录。
在弹出的窗口中,在指定一次执行成功记录的“备份路径”列,单击“查看”,打开此次任务执行的备份路径信息,查找以下信息:
- 在FusionInsight Manager,选择“运维 > 备份恢复 > 恢复管理”。
- 单击“创建”。
- 在“任务名称”填写恢复任务的名称。
- 在“恢复对象”选择待操作的集群。
- 在“恢复配置”的“业务数据”下,勾选“ClickHouse”。
- 在“ClickHouse”的“路径类型”,选择一个备份目录的类型。
表1 恢复数据 路径类型
配置参数
参数说明
RemoteHDFS
源端NameService名称
备份数据集群的NameService名称。可在备集群HDFS服务的“管理NameService”页面获取,例如“hacluster”。
IP 模式
目标IP的IP地址模式。系统会根据集群网络类型自动选择对应的IP模式,如IPv4或者IPv6。
源端主NameNode IP地址
备集群主NameNode业务平面IP地址。登录备集群的Manager界面,选择“集群 > 服务 > HDFS > 实例”,即可查看主NameNode业务平面IP地址。
MRS 3.2.0及之后版本需要配置该参数。
源端备NameNode IP地址
备集群备NameNode业务平面IP地址。登录备集群的Manager界面,选择“集群 > 服务 > HDFS > 实例”,即可查看备NameNode业务平面IP地址。
MRS 3.2.0及之后版本需要配置该参数。
源端NameNode IP地址
备集群NameNode业务平面IP地址,支持主节点或备节点。登录备集群的Manager界面,选择“集群 > 服务 > HDFS > 实例”,即可查看NameNode业务平面IP地址。
仅MRS 3.1.0和MRS 3.1.2版本需要配置该参数。
源端NameNode RPC端口
目的端集群HDFS基础配置“dfs.namenode.rpc.port”参数值。
MRS 3.2.0及之后版本需要配置该参数。
源端路径
参考步骤 3中获取的“备份路径”,填写备集群保存备份数据的完整HDFS路径。例如,“备份路径/备份任务名_数据源_任务创建时间/”。
最大map数
执行MapReduce任务的最大map数,默认值为“20”。
仅MRS 3.1.0和MRS 3.1.2版本需要配置该参数。
单个map的最大带宽(MB/s)
单个map最大带宽,默认值为“100”。
仅MRS 3.1.0和MRS 3.1.2版本需要配置该参数。
OBS
源端路径
备份文件在OBS中保存的完整路径。例如:“备份路径/备份任务名_数据源_任务创建时间/版本号_数据源_任务执行时间.tar.gz”。
- 单击“确定”保存。
- 在恢复任务列表已创建任务的“操作”列,单击“执行”,开始执行恢复任务。
- 恢复成功后进度显示为绿色。
- 恢复成功后此恢复任务不支持再次执行。
- 如果恢复任务在第一次执行时由于某些原因未执行成功,在排除错误原因后单击“重试”,重试恢复任务。