迁移时变更压缩和编码方式

如果需要在数据迁移时改变数据的压缩方式或编码方式,您可以参考本文提供的操作方法,在创建迁移任务时添加相关参数对迁移配置进行调整。

前提条件

  • 检查源集群、目标集群、LTS的网络连通性。

  • 已添加源实例、目标实例的数据源。如何添加,请参见添加Lindorm宽表数据源

  • LTS为3.8.2及以上版本。

    说明

    您可以通过Lindorm管理控制台的实例详情页面查看当前实例的LTS的版本。如果版本不满足要求,您可以通过控制台进行升级,具体操作请参见升级小版本

注意事项

迁移前请确认目标实例的HDFS容量,确保可用容量足以支撑数据迁移,避免迁移过程中出现容量已满导致任务失败的情况。

操作步骤

  1. 登录LTS

  2. 在左侧导航栏,选择Lindorm/HBase迁移 > 一键迁移

  3. 单击创建任务

  4. 选择源集群目标集群

  5. 勾选操作:表结构迁移实时数据复制历史数据迁移

    • 表结构迁移:在目标集群创建表(Schema、分区信息一致), 目标集群表已存在会跳过。

    • 实时数据复制:同步源集群实时增量的数据。

    • 历史数据迁移:文件级别的全量文件物理迁移。

  6. 同步/迁移的表中,填写需要迁移的表。格式为<数据库名>:<需要迁移的表名>,例如default:shop_item_relation。如果需要迁移多张表,请通过换行隔开。

  7. 请根据迁移场景,在高级配置中添加相应的参数配置,具体如下:

    迁移场景

    参数配置

    示例

    在数据迁移时仅改变压缩方式

    {"createTableCompression":"<压缩方式>","needCompress":true}

    {"createTableCompression":"ZSTD","needCompress":true}

    在数据迁移时仅改变编码方式

    {"createTableBlockEncoding":"<编码方式>","needCompress":true}

    {"createTableBlockEncoding":"INDEX","needCompress":true}

    在数据迁移时同时改变压缩方式和编码方式

    {"createTableCompression":"<压缩方式>","createTableBlockEncoding": "<编码方式>","needCompress":true}

    {"createTableCompression":"ZSTD","createTableBlockEncoding": "INDEX","needCompress":true}

    参数说明

    参数

    说明

    createTableCompression

    构建目标实例的表结构时使用的压缩方式,取值如下:

    • ZSTD

    • SNAPPY

    • LZ4

    createTableBlockEncoding

    构建目标实例的表结构时使用的编码方式,取值如下:

    • DIFF

    • INDEX

    needCompress

    迁移数据时是否按照目标实例的压缩编码方式进行传输。取值如下:

    • true:是。

    • false:否。

    重要

    如果源集群是自建集群,高级配置中还需添加"exporterEnable":false,例如{ "createTableCompression":"ZSTD","needCompress":true,"exporterEnable":false}

  8. 单击创建

后续步骤

查看迁移进度

一键迁移页面单击目标任务名,查看批量迁移任务的执行进度。如果迁移任务的状态SUCCEEDED,表示批量迁移任务已完成。image

查看压缩方式和编码方式

您可以在集群管理系统的概览页面,单击目标数据库下的目标表名。在当前详情表格区域,单击查看表属性,查看COMPRESSIONDATA_BLOCK_ENCODING参数的值来验证是否修改成功。如何进入集群管理系统,请参见登录集群管理系统