使用TaurusDB冷热分离
本章节提供TaurusDB实例设置冷表的操作指导。
设置冷表的方法有如下两种:
- 通过控制台设置冷表:包括创建冷表、回迁冷表的操作。
- 通过SQL操作设置冷表:包括创建冷表、查询冷表数据、回迁冷表的操作。当实例中表数量超过10万张,只支持通过SQL命令创建和回迁冷表。
使用须知
- TaurusDB冷热分离功能为白名单功能,如需使用,请在管理控制台右上角,选择“工单 > 新建工单”,提交申请。
- TaurusDB实例内核版本需要大于等于2.0.54.240600,内核版本的查询方法请参见如何查看云数据库 TaurusDB实例的版本号。
- 仅集群实例支持开启冷数据归档。
通过控制台设置冷表
- 登录管理控制台。
- 单击管理控制台左上角的,选择区域和项目。
- 在页面左上角单击,选择 。
- 在“实例管理”页面,单击目标实例名称,进入实例概览页面。
- 在左侧导航栏,单击“冷热分离”。
- 在“冷热分离”右侧单击,在弹框中单击“确定”,打开冷热分离开关。
图1 开启冷热分离
- 单击“创建冷表”。
图2 创建冷表
- 在“创建冷表”弹框搜索栏中输入需要归档为冷数据的库名、表名或分区名。
- 选择需要归档为冷数据的表或者分区。
图3 选择归档的表
- 冷表只支持SELECT查询,且速度较慢。建议将数据量较大的不常用数据设置为冷表,常用的业务数据, 不建议转化冷表。
- 开启TDE功能或跨异地容灾备份的实例不支持开启冷热分离功能。
- 备份时不会对冷表的数据进行备份,仅备份表结构,冷数据不支持备份恢复。
- 使用DRS迁移时,如需保留源库的冷表数据,需要将冷表回迁到源库后再使用DRS,否则迁移到目标库后,冷表将被迁移为空表。
- 创建冷表时,请不要对冷表执行DDL或DML语句,否则会导致创建失败。
- 单击“确定”。
- 冷表创建完成后,即可查看冷表信息。
图4 查看冷表信息
- 如果需要修改该表或频繁查询该表,在冷表列表单击“回迁”,将冷表回迁到实例。
回迁操作耗时较长,建议业务低峰时间段操作。
图5 回迁冷表
确认任务无误后,单击“确定”。
通过SQL操作设置冷表
通过SQL操作设置冷表时,可以使用DAS、MySQL客户端或者其他客户端连接到TaurusDB后执行对应的SQL。以下操作以DAS为示例。
- 在实例管理页面,单击操作列“登录”,进入数据管理服务实例登录界面。
图6 登录实例
- 正确输入数据库用户名和密码,单击测试连接,待连接成功后,单击“登录”,即可进入实例。
图7 登录界面
- 选择“SQL操作 > SQL查询”。
图8 SQL操作
- 执行设置冷表的SQL命令。
- 创建冷表
CALL dbms_schs.make_io_transfer("start", "库名", "表名", "分区名", "", "obs");
例如:
CALL dbms_schs.make_io_transfer("start", "test", "table1", "", "", "obs");
图9 创建冷表
- 查询冷表数据
例如:
select * from table1;
图10 查询冷表数据
- 查询归档或回迁状态
CALL dbms_schs.show_io_transfer("库名", "表名", "分区名");
例如:
CALL dbms_schs.show_io_transfer("test", "table1", "");
图11 查询归档或回迁状态
- 回迁冷表
CALL dbms_schs.make_io_transfer("start", "库名", "表名", "分区名", "obs", "");
例如:
CALL dbms_schs.make_io_transfer("start", "test", "table1", "", "obs", "");
图12 回迁冷表
- 创建冷表