在使用LHM SQL转换工具进行迁移过程中,由于SQL业务逻辑和执行环境的复杂性,往往需要根据实际执行情况调整或人工进一步处理。当前LHM已支持MaxCompute数据源的测试执行,通过统计执行问题以帮助定位问题。
1.前置操作
安装Agent
由于湖仓迁移中心数据校验功能连接数据源端即席查询元数据信息等功能依赖Agent,且考虑到探查时的数据源敏感性保护,您需要在使用数据校验模块之前进行Agent安装。需要您提供一台服务器(阿里云ECS),之后通过操作自动在该服务器上安装一个数据校验的Agent。
安装之前,需先申请License,点击申请License按钮,会自动生成一个License。申请License是为了防止Agent被滥用,起到保护Agent的作用。申请完如下图所示:
目前,支持自动部署的地域有杭州,如有其他地域的部署需求,请通过售后在线联系我们。
注意:
自动部署只支持阿里云创建的ECS
安装前请先开通私网连接服务
通过私网连接打通网络会在用户的账号下创建反向终端节点,可能会产生费用,使用完成之后需要用户手动释放
确保该服务器与源端和目标端待校验数据源网络是连通的
点击安装:
填充Agent名称,选择地域与待安装Agent的ECS,即可自动化部署安装。
部署过程中,可以即席查看进度。
安装完,可通过Agent列表查看Agent在线状态:
2.执行测试
2.1 配置测试环境数据源
进入 转换列表
完成全部脚本的转换后,点击基本信息中目标数据源类型后的 关联目标端测试环境,选取先前配置好的数据源,并设置执行的项目空间或数据库、并发数配置。
进行配置:
提交并发:仅提交目标端运行时生效,与转换无关。支持修改。
2.2 批量提交至目标端执行
点击 批量提交至测试环境执行,转换完成的脚本随即进入“待执行”状态,被传输到Agent端,进而在目标端(例如MaxCompute或Hologres环境)执行。
*注意,LHM SQL转换工具不能够直接访问用户的数据源,这一步必须依赖用户Agent配置。因此请提前确保Agent已经在您的ECS上安装完成,处于正常启动状态,且网络能够连通所需测试的数据源。
3 查看执行结果
3.1 单条脚本问题排查
下图仅为示例:
等待执行完成后,对于执行失败的SQL,点击 失败原因 即可查看具体报错信息。
3.2 查看执行问题统计报告
SQL转换任务列表,可以在 测试执行结果 一栏,点击 目标端执行报告
点击 下载报告,即可获取先前执行SQL的错误统计和明细,入口如下图所示:
结果含 Stats和Detail两个CSV文件,其中Stats代表统计信息,该报告展示了错误明细、在该转换任务批次中涉及的SQL脚本文件数量、错误分类,以及一个样例文件名方便排查之用。
建议您可以从出现最频繁的问题开始排查,基于报告中的样例文件名和报错信息进行分析,找到SQL的具体问题并进一步进行人工处理。
Detail文件如下,包含SQL文件名及错误信息,便于对每个脚本进行问题检索,当然也可以直接在界面上阅读该信息。
3.3 迭代验证
如果您对转换后的SQL内容进行多轮修改,可以通过 转换列表 中的 批量上传修改脚本 进行上传覆盖,然后通过平台再次验证执行的正确性
注意:上传你修改的脚本zip包,zip包中的同名文件将会覆盖已有的转换结果
重新上传后的脚本转换状态将显示为“上传覆盖”,所下图所示
您可以基于覆盖后的结果再次执行验证,重复数次以上迭代过程以解决所有显著的报错。