云服务器内容精选

  • 操作步骤 在“实时迁移管理”界面,选中指定迁移任务,单击任务名称,进入“基本信息”页面。 单击“迁移进度”页签,查看迁移进度。 查看结构、数据、索引的迁移的百分比进度。 “全量迁移”模式:当全量迁移完成时,显示全量迁移各项指标完成进度100%。 “全量+增量”迁移模式:全量迁移完成后,开始进行增量迁移可,在“迁移进度”页签下,查看增量迁移同步时延。 图1 迁移进度总览 增量迁移时延也可在“实时迁移管理”界面查看,当增量时延超过用户设置或系统默认的时延阈值时,任务管理界面增量时延显示为红色。 时延 = 源库当前系统时间 - 成功同步到目标库的最新一个事务在源库的提交成功时间。 一个事务同步的完整过程如下: 源端数据库的抽取; 经过网络的传输; 由DRS进行日志解析; 最终在目标数据库上的执行完成。 这样完成了事务从源到目标的同步,时延为该事务最后在目标数据库上执行完成时的源库当前系统时间(current_time)与该事务在源库的提交成功时间(committed_time)的时间差,时延为0代表源和目标瞬时一致,无新的事务需要同步。 长时间未提交事务和频繁DDL操作均可以造成高时延。 查看迁移对象的进度。在“进度明细”下,单击目标迁移对象“详细信息”列的“查看详情”,查看对象的迁移进度。 目前MySQL为源迁移链路在增量阶段会展示迁移进度明细,该明细只是全量阶段迁移数据和跳过结构的展示,不支持更新。其他链路在进入增量迁移后,进度明细数据将不再显示,您可以使用“迁移对比”页签,进行一致性对比。 图2 迁移进度明细 跳过迁移对象。在迁移对象“详细信息”列的“查看详情”中,可以单击对象操作列的“跳过并重启”跳过迁移对象。 目前实时迁移支持MySQL为源链路在全量迁移阶段跳过迁移对象。 支持跳过类型包含database、function、procedure、table_indexs、table_structure、view、trigger、event、account。 跳过操作会使任务重启续传,如果任务处于暂停或异常状态,确认跳过后,任务将被会重新启动。 如果任务处于全量迁移状态,可能出现跳过前已完成对象迁移的情况,此时的跳过操作将会失效。 跳过对象成功后,如果后续迁移过程中仍有关联该对象的操作,可能出现对象不存在导致任务失败情况。例如跳过table_structure后,在迁移该表的索引和数据时,会出现对象不存在导致任务失败情况。 跳过对象成功后,会导致对比结果不一致。 跳过无主键表的table_structure会导致数据不一致,还可能出现表不存在导致任务失败的情况,请确认后再进行操作。 跳过无主键表后出现表不存在导致DRS任务失败时,请先联系目标库运维工程师根据源数据库表结构和日志报错信息在目标库创建对应的表,然后单击任务对应操作列的“续传”,重新提交任务。 查看读写数据性能。单击“监控图表”查看读写数据性能,该图表展示了实时读取源库和写入目标库数据的速率,其单位为MB/s。 图3 性能监控
  • 对数据库影响 对象对比:会查询源库及目标库的系统表,占用10个左右的session的连接数,正常情况不会对数据库产生影响。但是如果对象数量巨大(比如几十万张表),可能会对数据库产生一定的查询压力。 行数对比:会查询源库及目标库的表行数,占用10个左右的session的连接数,正常的select count语句基本不会对数据库产生影响。但是如果表数据量巨大(亿级)会对数据库产生一定的查询压力,返回查询结果会比较慢。 内容对比:会查询源库及目标库的全部数据,涉及每个字段都会对比,所以会对数据库产生一定的查询压力,主要体现在IO上,查询速度受限于源库和目标库的IO和网络带宽。占用1-2个CPU,占用10个左右的session的连接数。 用户对比:会查询源库及目标库的账户和权限,基本不会对数据库产生影响。
  • 查询回放进度 在“录制回放管理”界面,选中指定回放任务,单击任务名称,进入“基本信息”页面。 单击“回放进度”页签,查看任务进度。 回放进度模块中,您可以查看任务状态、启动时间、SQL总量以及已回放SQL数量等信息。 录制回放统计图支持选择查看某一时间段内的SQL总量、执行量、异常量以及慢SQL数量情况。 录制回放异常SQL模块中,展示回放异常的SQL对象分类及数量。 慢SQL模块支持查看SQL原始和回放耗时。 执行SQL模块展示回放过程中正在目标库运行的SQL情况。 图1 回放进度
  • 下载导出报告 对于回放过程中的异常的SQL和慢SQL,DRS支持下载和导出。 在“录制回放管理”界面,选中指定回放任务,单击任务名称,进入“基本信息”页面。 单击“回放进度”页签,可查看任务进度。 在“回放进度”的录制回放异常SQL和慢SQL模块,可对当前任务的报告进行下载。 单击“录制回放异常SQL”或“慢SQL”模块右侧的,进行报告导出。 在弹出对话框中选择导出字段后,单击“导出”。 图2 导出报告 导出完成后,可单击下载报告。 图3 下载报告
  • 任务状态说明 数据订阅提供了多种任务状态,以便区分不同阶段的订阅任务。 数据订阅任务的状态和说明,请参见表1。 表1 数据订阅任务状态和说明 状态 说明 创建中 正在创建 数据复制服务 需要用到的数据订阅实例。 创建失败 创建数据订阅任务失败。 配置 数据订阅实例创建成功,但还没有启动任务,可以继续配置任务。 冻结 账户余额小于或等于0元,系统对该用户下的实例进行冻结。 启动中 正在启动数据订阅任务。 启动失败 数据订阅任务启动失败。 正常 数据订阅任务创建成功。 异常 数据订阅任务创建失败。 故障恢复 数据订阅实例发生故障,系统自动恢复订阅任务。 对于创建失败的任务,DRS默认保留3天,超过3天将会自动结束任务。 对于未启动、状态为配置中的任务,DRS默认保留3天,超过3天DRS会自动删除后台资源,当前任务状态不变。当用户再次配置时,DRS会重新申请资源。 对于是失败状态的订阅任务,DRS默认保留14天,超过14天DRS会自动删除后台资源,当前任务状态不变。当用户再次配置时,DRS会重新申请资源。 已删除的订阅任务在状态列表中不显示。 父主题: 任务管理
  • 使用场景 为了解决地区故障导致的业务不可用,数据复制服务推出灾备场景,为用户业务连续性提供数据库的同步保障。当主实例所在区域发生突发生自然灾害等状况无法连接时,可将异地灾备实例切换为主实例,在应用端修改数据库链接地址后,即可快速恢复应用的业务访问。数据复制服务提供的实时灾备功能,可实现主实例和跨区域的灾备实例之间的实时同步。 一次完整的数据灾备,是以任务作为导向,依次进行灾备进度观察、灾备 日志分析 、灾备数据一致性对比等多项操作。通过多项指标和数据的对比分析,可以帮助您实现不同业务系统间的数据同步。
  • 使用流程 数据灾备的使用流程如下: 图1 数据灾备流程 步骤一:创建灾备任务。根据需要,选择业务数据库和灾备数据库,创建灾备任务。 步骤二:查询灾备进度。灾备过程中,可以通过查看灾备进度了解数据灾备完成情况。 步骤三:查看灾备日志。灾备日志包含告警、错误和提示等类型的信息,可根据此类信息分析系统存在的问题。 步骤四:对比灾备项。数据灾备提供对比功能,可根据需要查看对象级对比、数据级对比等,来确保业务数据库和灾备数据库的数据一致性。 本章节将以MySQL到RDS for MySQL的灾备场景为示例,介绍在公网网络场景下,通过数据复制服务管理控制台配置数据灾备任务的流程,其他存储引擎的配置流程类似。 在数据复制服务中,数据库灾备是通过任务的形式完成的,通过创建任务,可以完成任务信息配置、任务创建。灾备任务创建成功后,您也可以通过数据复制服务管理控制台,对任务进行管理。
  • 示例代码 示例一:基于图像类型的数据集创建物体检测标注任务。 from modelarts.session import Session from modelarts.dataset import Dataset session = Session() dataset = Dataset(session, dataset_id="VukxA2FlaTUm7tkDtq0") # 初始化数据集 create_task_resp = dataset.create_label_task(task_name="obj_detection_task", task_type=1, description="label task")
  • 参数说明 表1 请求参数 参数 是否必选 参数类型 描述 task_name 是 String 标注任务的名称。 task_type 是 Integer 标注任务的类型。可选值如下: 0:图像分类 1:物体检测 3: 图像分割 100:文本分类 101:命名实体 102:文本三元组 200:声音分类 201:语音内容 202:语音分割 400:表格数据集 600:视频标注 900:自由格式 description 否 String 标注任务的描述信息。
  • 示例代码 查询数据集导出任务列表 from modelarts.session import Session from modelarts.dataset import Dataset session = Session() dataset = Dataset(session, dataset_id) list_tasks_resp = dataset.list_export_tasks() print(list_tasks_resp) # 打印导出任务列表
  • 示例代码 查询数据集导入任务列表 from modelarts.session import Session from modelarts.dataset import Dataset session = Session() dataset = Dataset(session, dataset_id) list_tasks_resp = dataset.list_import_tasks() print(list_tasks_resp) # 打印导入任务列表
  • 管理调度任务 调度任务按照调度任务列表和已结束任务列表两个页面进行展示。 调度任务列表:调度任务列表中的任务是“正常调度中”或者“暂停调度”的周期执行任务。 在任务调度页面,单击“调度任务列表”页签,进入调度任务列表页面。 您可以通过任务状态、调度类型、或者在搜索框中通过任务ID、任务名称进行条件筛选,查看任务信息。 图3 搜索任务 您还可以对调度任务进行以下的操作管理。 查看任务详情:在已完成任务列表操作栏单击“查看详情”,查看本次调度“任务信息”。 图4 任务详情 对于“正常调度中”的任务,可以通过单击“立即触发一次调度”,触发立即调度指令。任务执行成功后,可以在“调度执行记录”页签下查看本次调度执行详情。 在分组列表中查看执行日志及分组详情,还可以查看、修改、复制、删除SQL语句等。 图5 管理SQL 查看调度执行记录:在已完成任务列表操作栏单击“查看调度执行记录”,查看任务执行详情及日志。 查看日志:在已完成任务列表操作栏单击“查看日志”,查看日志详情。 终止任务:在已完成任务列表操作栏,单击“终止”,被终止的任务将从“任务调度”列表移到“已结束任务”列表。 暂停任务:在已完成任务列表操作栏,单击“暂停调度”,该任务状态将从“正常调度中”变为“暂停调度”,可通过单击“恢复调度”回到正常调度状态。 已结束任务:已结束任务列表中的任务是“已终止”的周期执行任务或“已结束”的立即执行和定时执行任务。 在任务调度页面,单击“已结束任务”页签,进入已结束任务列表页面。 您可通过任务状态、调度类型、或者在搜索框中通过任务ID及任务名称进行条件筛选,查看任务信息。 图6 查看任务信息 您还可以对调度任务进行以下的操作管理。 查看任务详情:在已完成任务列表操作栏单击“查看详情”,查看本次调度“任务信息”。 对于已结束的定时和立即执行任务,可以通过单击“立即触发一次调度”,触发立即调度指令。任务执行成功后,可以在“调度执行记录”页签下查看本次调度执行详情。 在分组列表中查看执行日志及分组详情,还可以查看、修改、复制、删除SQL语句等。 查看调度执行记录:在已完成任务列表操作栏单击“查看调度执行记录”,查看任务执行详情,分组执行情况、SQL内容及分组日志等信息。 查看日志:在已完成任务列表操作栏单击“查看日志”,查看日志详情。 删除任务:在已完成任务列表操作栏,单击“删除任务”,将从数据库中清除该任务信息。
  • 注意事项 每一个参数都使用数字,但还可以出现如下特殊字符。 *:表示匹配该域的任意值。假如在“分”使用“*”,即表示每分钟都会触发事件。 ?:只能用在“日(每月中的一天)”和“周”两个参数中。它也匹配参数的任意值,但实际不会。因为“日(每月中的一天)”和“周”会相互影响。例如想在每月的20日触发调度,不管20日是星期几,则只能使用如下写法: 13 13 15 20 * ?,其中最后一位只能用“?”,而不能使用“*”,如果使用“*”表示不管星期几都会触发,实际上并不是这样。 -:表示范围。例如在“分”使用“5-20”,表示从5分到20分钟每分钟触发一次。 /:表示起始时间开始触发,然后每隔固定时间触发一次。例如在“分”使用“5/20”,则表示每小时的第5、25、45分钟分别触发定时任务。 ,:表示列表值。例如:在“分”使用“5,20”,则表示在每小时的第5分和20分触发一次定时任务。 L:表示最后,只能出现在“日(每月中的一天)”和“周”参数中。如果在“周”域使用“5L”表示在最后的一个星期四触发。 W:表示有效工作日(周一到周五),只能出现在“日(每月中的一天)”参数中,系统将在离指定日期的最近的有效工作日触发事件。例如:在 “日(每月中的一天)”使用“5W”,如果5日是星期六,则将在最近的工作日:星期五,即4日触发。如果5日是星期天,则在6日(周一)触发;如果5日在星期一到星期五中的一天,则就在5日触发。W的最近寻找不会跨过月份 。 LW:这两个字符可以连用,表示在某个月最后一个工作日,即最后一个星期五。 #:用于确定每个月第几个星期几,只能出现在“日(每月中的一天)”域。例如在4#2,表示某月的第二个星期三。 定时任务配置QuartZ Cron表达式时,还需要注意以下内容: QuartZ Cron表达式采用UTC+0时区,在配置QuartZ Cron表达式时,您需要把本地时间换算成在UTC+0时区的时间。例如,中国的时区是UTC+8,如果您计划在中国时区(例如每天20:00)执行任务,需要将计划执行时间减去8小时,设置的QuartZ Cron表达式应为012**?
  • 参数说明 数据集成任务支持使用QuartZ Cron表达式配置定时任务的调度计划。 QuartZ Cron表达式由6个部分组成,每个部分使用空格隔开。表达式中的六个部分从左到右代表的含义如下: 秒 分 时 日 月 周 具体参数如表1所示。 表1 QuartZ Cron参数说明 名称 是否必填 可选数值 可选特殊符号 秒 否,该配置项暂不支持 固定为0。 - 分 是 数字0-59。 , - * / 时 是 数字0-23。 , - * / 日 是 每月中的一天,数字1-31。注意2月没有30日和31日,4月、6月、9月、11月没有31日。 , - * ? / L W 月 是 数字1-12,或字符串。数字与字符串的对应关系请参见表2。 假如您想在月参数中填写1月,数字“1”或字符串“JAN”都符合QuartZ Cron表达式的约定。 , - * / 周 是 数字1-7,或字符串。数字与字符串的对应关系请参见表3,QuartZ Cron表达式约定周六为每周的最后一天。 假如您想在周参数中填写周一,数字“2”或字符串“MON”都符合QuartZ Cron表达式的约定。 , - * ? / L # 表2 月参数的数字与字符串对应关系 数字 字符串 1 JAN 2 FEB 3 MAR 4 APR 5 MAY 6 JUN 7 JUL 8 AUG 9 SEP 10 OCT 11 NOV 12 DEC 表3 每周数字与字符串对应表 数字 字符串 含义 1 SUN 周日 2 MON 周一 3 TUE 周二 4 WED 周三 5 THU 周四 6 FRI 周五 7 SAT 周六
  • 配置示例 以下示例将帮助您更好地理解QuartZ Cron表达式的含义。简单示例展示了QuartZ Cron表达式的初级使用方法,常用示例则展示了QuartZ Cron表达式在实际场景中常见的使用方法,您只需根据实际需求对常用示例进行微调即可直接使用。 简单示例: 0 0/1 * * * ? //每隔一分钟执行一次 0 0 23 * * ? //每天23点执行一次 0 0 1 1 * ? //每月一号凌晨1点执行一次 0 0 23 L * ? //每月最后一天23点执行一次 0 33,55 * * * ? //在33分,55分执行一次 0 0 18 * * LW //每月最后一个工作日晚上六点执行一次