View a markdown version of this page

使用 DMS 架构转换的转化评估报告 - AWS Database Migration Service

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 DMS 架构转换的转化评估报告

DMS 架构转换的一个重要环节是它会生成一份报告,以帮助您转换架构。此转换评估报告分析源架构中的数据库对象,并确定 DMS Schema Conversion 可以自动转换哪些对象以及哪些对象需要手动操作。您可以在 AWS DMS 控制台中查看报告或将副本另存为 PDF 或逗号分隔值 (CSV) 文件。

转化评估报告包括以下内容:

  • 执行摘要

  • 转换需要手动操作的数据库对象的建议

当您有 DMS Schema Conversion 无法自动转换的数据库对象时,该报告会提供估算值,显示为目标数据库实例编写等效代码需要付出多少努力。

使用 DMS 架构转换对转化评估报告进行评估

创建迁移项目后,使用以下方法之一对转换复杂度进行评估。

AWS Management Console
进行评估并生成转化评估报告
  1. 登录 AWS 管理控制台 并打开 AWS DMS 控制台,地址为https://console.aws.amazon.com/dms/v2/

  2. 选择迁移项目。将打开迁移项目页面。

  3. 选择您的迁移项目,然后选择架构转换

  4. 选择启动架构转换。将打开架构转换页面。

  5. 在源数据库窗格中,选择要评估的节点。评估操作可在数据库节点、单个数据库节点和架构节点(如 dbo)上使用。它在表或过程等单个对象节点上不可用。

  6. 在源数据库窗格中选择至少一个父节点。仅当选择父节点时,操作” 菜单才可用。

  7. 打开 操作” 菜单并选择 “评估” 。您将看到确认对话框。

  8. 在对话框中选择评测,以确认选择。

AWS CLI

以下示例使用启动元数据模型评估来排队评估架构中所有对象的转换复杂度。ExampleSchema

aws dms start-metadata-model-assessment \ --migration-project-identifier "arn:aws:dms:us-east-1:111122223333:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRS" \ --selection-rules '{"rules": [{"rule-type": "selection", "rule-id": "1", "rule-name": "1", "object-locator": {"server-name": "source-server", "schema-name": "ExampleSchema"}, "rule-action": "explicit"}]}'
注意

--selection-rules参数采用 JSON 字符串,用于指定评估中要包含哪些数据库对象。有关完整选择规则 JSON 结构,请参阅DMS 架构转换中的选择规则

回复中RequestIdentifier包含标识评估请求的。

{ "RequestIdentifier": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

由于评估是异步运行的,因此使用 a ws dms 等待对元数据模型进行评估,直到评估完成后再继续。

aws dms wait metadata-model-assessed \ --migration-project-identifier "arn:aws:dms:us-east-1:111122223333:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRS"

该命令每 30 秒轮询一次,并在评估达到终端状态时返回。如果评估在 360 次检查(大约 3 小时)后仍未完成,则会以返回代码 255 退出。

开始评估不会每次都从头开始生成全新的报告。转化评估报告反映了您的迁移项目的当前状态,因此它包括您迄今为止评估或转换的所有操作项目和生成式 AI 候选对象。有关更多信息,请参阅 了解转化评估报告指标

保存 DMS 架构转换的转化评估报告

运行评估或转换后,您可以将转化评估报告的副本另存为 PDF 或逗号分隔值 (CSV) 文件。

AWS Management Console
PDF 报告
将转化评估报告另存为 PDF 文件
  1. 选择导出,然后选择 PDF。查看对话框,然后选择导出为 PDF

  2. DMS 架构转换将 PDF 文件存储在您在迁移项目的 S3 存储桶访问设置下配置的 Amaz on S3 存储桶中。

  3. 打开 Amazon S3 存储桶中的评测报告文件。

导出 CSV
将转化评估报告另存为 CSV 文件
  1. 选择导出,然后选择 CSV。查看对话框,然后选择导出为 CSV

  2. DMS 架构转换将包含 CSV 文件的 ZIP 存档存储在您在迁移项目的 S3 存储桶访问设置下配置的 Amazon S3 存储桶中。

  3. 从您的 Amazon S3 存储桶中下载并提取 ZIP 档案,以访问 CSV 文件。

S3 存储桶和文件名

DMS 架构转换存储导出报告的 Amazon S3 存储桶是您在创建迁移项目时在 S3 存储桶访问设置下指定的存储桶。

文件存储在与您的迁移项目名称相匹配的文件夹下。从导出时 AWS 管理控制台,文件使用源引擎、目标引擎和 UTC 时间戳命名:project-name/SOURCE_ENGINE_TARGET_ENGINE_YYYY-MM-DDTHH-MM-SS.sssZ— 例如。ora-pg-demo/ORACLE_POSTGRESQL_2026-07-01T09-00-47.846Z.pdf

CSV 存档包含在两级目录路径下组织的至少三个文件。顶级目录是源服务器名称,与源数据提供器中配置的名称完全相同(主机名或 IP 地址)。子目录和文件名使用目标数据库主机名

  • source-server/target-host/target-host.csv— 每个操作项出现一行。

  • source-server/target-host/target-host_Action_Items_Summary.csv— 每个操作项类型一行,包含努力值。

  • source-server/target-host/target-host_Summary.csv— 每种对象类型一行,计算复杂程度。

  • source-server/target-host/target-host_Stub_Objects.csv— 为不支持的内置对象生成的每个存根对象一行。仅当在迁移项目设置中启用了将不支持的内置对象转换为存根对象时,此文件才会出现。

AWS CLI

以下示例使用导出元数据模型评估将迁移项目的转化评估报告以 PDF 文件和 CSV 档案的形式导出到您的 Amazon S3 存储桶。

aws dms export-metadata-model-assessment \ --migration-project-identifier "arn:aws:dms:us-east-1:111122223333:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRS" \ --selection-rules '{"rules":[{"rule-type":"selection","rule-id":"1","rule-name":"1","rule-action":"explicit","object-locator":{"server-name":"source-server","schema-name":"ExampleSchema"}}]}' \ --assessment-report-types pdf csv
注意

--selection-rules参数采用 JSON 字符串,用于指定要在报告中包含哪些数据库对象。有关完整选择规则 JSON 结构,请参阅DMS 架构转换中的选择规则

响应包含每个报告文件的 Amazon S3 对象密钥和下载网址。

如果未指定--file-name,文件将存储在与您的迁移项目名称相匹配的文件夹下,使用时间戳作为文件名:project-name/YYYY-MM-DD-HH-MM-SS.pdfproject-name/YYYY-MM-DD-HH-MM-SS.zip — 例如,sqlserver-pg-pma/2026-07-15-10-08-12.zip。指定覆盖--file-name该文件夹中的时间戳前缀。

{ "PdfReport": { "S3ObjectKey": "project-name/YYYY-MM-DD-HH-MM-SS.pdf", "ObjectURL": "https://amzn-s3-demo-bucket.s3.amazonaws.com/project-name/YYYY-MM-DD-HH-MM-SS.pdf" }, "CsvReport": { "S3ObjectKey": "project-name/YYYY-MM-DD-HH-MM-SS.zip", "ObjectURL": "https://amzn-s3-demo-bucket.s3.amazonaws.com/project-name/YYYY-MM-DD-HH-MM-SS.zip" } }
注意

转化评估报告在您运行转化操作后也可用,而不仅仅是在运行明确的评估之后。转换后,该报告反映仍需要手动操作的对象,并标记 DMS Schema Conversion 使用生成式 AI 转换的对象。有关运行转换的信息,请参阅转换数据库架构:分步指南

查看 DMS 架构转换的转化评估报告

要查看您的转化评估报告,请使用以下方法之一。

重要

转换评估报告仅涵盖最近评估或转换操作范围内包含的数据库对象。运行 “评估” 或 “转换” 时未选择的对象不会出现在报告中,即使它们存在于源数据库中也是如此。

每项新的评估或转换操作都会覆盖先前的报告。摘要操作项目选项卡始终仅反映最近的操作。如果您需要保留当前报告的结果,请在运行新的评估或转换之前将其导出为 PDF 或 CSV 文件。有关导出说明,请参阅保存评测报告

AWS Management Console

运行评估或转换后,DMS 架构转换会在以下选项卡中添加信息:

  • 摘要

  • 操作项目

摘要选项卡

摘要选项卡显示转化评估报告中的摘要信息。它显示了 DMS Schema Conversion 可以自动转换为数据库存储对象和数据库代码对象的数据库对象的数量。

DMS Schema Conversion 会自动转换许多数据库对象,并识别那些需要手动操作才能完成向目标数据库引擎的转换。摘要选项卡估算了在目标数据库实例中创建等同于源数据库实例中的数据库对象所需的工作量。

要查看数据库存储对象(例如表、序列、约束、数据类型等)的转换摘要,请选择数据库存储对象

要查看数据库代码对象(如过程、函数、视图、触发器等)的转换摘要,请选择数据库代码对象

要更改评测报告的范围,请在源数据库树中选择所需的节点。DMS 架构转换会更新评测报告摘要以匹配所选范围。

“Action items (操作项)”选项卡

操作项选项卡包含数据库对象的操作项列表,DMS Schema Conversion 无法自动将其转换为与目标数据库引擎兼容的格式。对于每个操作项目,DMS 架构转换均提供问题描述和建议的操作。DMS 架构转换对相似的操作项目分组并显示出现次数。

要查看相关数据库对象的代码,请在列表中选择一个操作项目。

生成式 AI

DMS 架构转换结合生成式人工智能,能够简化数据库迁移过程,它通过提供建议,帮助您转换那些通常需要复杂手动操作、此前未转换的代码对象。目前,此功能可用于 Oracle、SQL Server、SAP ASE(Sybase ASE)、适用于 LUW 的 IBM Db2 以及 IBM Db2 z/OS 作为源数据库,转换为 PostgreSQL 或 Aurora PostgreSQL。

评估报告显示哪些数据库代码对象是使用生成式 AI 进行转换的候选对象。您可以将此报告导出为 PDF,获取每个行动项中包含五个对象的简短列表。您可以将报告导出到 CSV 文件,以查看候选项的完整列表。

当您启用使用生成式 AI 转换架构并执行转换时,更新的评估报告会将每个数据库对象标记为相应的操作项——既包括使用生成式 AI 成功转换的对象,也包括生成式 AI 无法转换的对象,便于识别和跟踪转换结果。 AI-assisted

要快速定位由生成式人工智能转换的对象,请执行以下操作:

  1. 导航至操作项目选项卡。

  2. 在右上角,找到下拉菜单。

  3. 从选项中选择由 AI 生成

此筛选方法允许您高效地查看使用此功能成功转换的所有数据库对象。有关使用生成式 AI 转换数据库对象的更多信息,请参阅生成式人工智能转换的范围

PDF report

PDF 报告按顺序包含以下四章:

  • 执行摘要 — 迁移复杂性概述。显示 DMS Schema Conversion 可以自动转换的数据库对象的数量以及需要手动操作的数量,按对象类型(表、视图、过程、触发器等)和复杂性类别(自动转换、简单操作、中等复杂度操作和复杂操作)细分。有关这些类别的更多信息,请参阅复杂性类别

  • 具有转换操作的数据库对象 -按对象类型划分哪些特定数据库对象需要手动操作。每个条目按名称标识对象并列出其操作项代码。

  • 使用生成式 AI 进行转换的候选对象 — DMS Schema Conversion 将数据库对象识别为使用生成式 AI 进行自动转换的候选对象。PDF 每种操作项类型最多列出五个候选对象。要查看候选人的完整列表,请将报告导出为 CSV。

  • 详细的迁移建议 — 对需要手动操作的每个数据库对象进行逐一分析。对于每个对象,本章显示操作项代码(参见操作项目代码)、与目标数据库引擎的具体不兼容性描述以及推荐的手动转换操作。与中的操作项选项卡不同 AWS 管理控制台,后者按类型对所有对象的操作项进行分组,而本章分别列出了每个受影响的对象。

要将报告导出为 PDF,请参阅保存评测报告

CSV report

将评估报告导出为 CSV 时,DMS 架构转换会创建一个包含至少三个 CSV 文件的档案。档案使用两级目录结构:顶级目录是源服务器名称,与源数据提供商中配置的完全一致(主机名或 IP 地址),子目录和文件名使用目标数据库主机名。

操作项文件 (target-host.csv)

主 CSV 文件(无后缀)每出现一个操作项都包含一行。它包含以下各列:

  • 类别 -操作项适用的数据库对象的类型,例如procedureview-constraint

  • 发生次数 -操作项影响的特定数据库对象实例的完全限定路径,例如Schemas.schema_name.Procedures.procedure_name

  • 操作项目 -用于标识转换问题类型的数字操作项代码。有关更多信息,请参阅 操作项目代码

  • 主题 -操作项引用的特定数据库对象名称或代码元素,例如未解析的标识符。当操作项未引用特定对象名称时,此字段为空。

  • 群组 — 每次出现该操作项代码时共享的议题类型的通用描述。DMS 架构转换使用此值将相关事件分组在一起。

  • 描述 — 对此事件的具体不兼容性的详细描述。

  • 文档参考 -用于解决不兼容问题的相关文档的链接。

  • 推荐的操作 -建议的手动转换步骤,以解决不兼容问题。

  • 已筛选 -表示操作项是否已从报表视图中筛选出来。

  • 估计的复杂程度 — 分配给此事件的复杂性类别:自动转换、简单操作、中等复杂度操作或复杂操作。

  • — 源对象代码中发生不兼容的行号。

  • 位置 — 出现不兼容的行中的字符位置。

  • -源数据库引擎。

  • 目标 -目标数据库引擎。

  • 服务器 IP 地址和端口 -源数据库服务器的主机和端口。

  • 数据库名称 -源数据库的名称。

  • 架构名称 -包含受影响对象的源架构的名称。

  • AI/ML 建议 — 当启用生成式 AI 转换并针对这种情况生成结果时,用于转换此对象的生成式 AI 推荐。

操作项摘要文件 (target-host_ Action_Items_Summary .csv)

每种操作项类型包含一行,包含以下各列:

  • 架构 -包含受影响对象的源架构的名称。

  • 操作项目 -用于标识转换问题类型的数字操作项代码。有关更多信息,请参阅 操作项目代码

  • 出现次数 -受此操作项类型影响的数据库对象总数。

  • 学习曲线 — 为该操作项类型设计转化方法所需的一次性工作。无论出现多少次数,每种措施项类型都需要支付一次此费用。值使用从低(最少努力)到高(最大努力)的加权量表。

  • 转化某一事件的努力 ——按照设计的转换方法,解决该操作项类型的每个单独发生次数所需的努力。价值观使用与学习曲线相同的加权量表。

  • 操作项描述 -对该操作项类型所代表的不兼容性的描述。

  • 推荐的操作 -解决此操作项类型的建议手动转换步骤。

摘要文件 (target-host_Summary.csv)

每种数据库对象类型都包含一行,包含以下各列:

  • 类别 -该行汇总的数据库对象类型,例如、TABLEVIEWPROCEDURETRIGGERINDEXCONSTRAINTSEQUENCE、或FUNCTION。该文件还包括Category值为Storage_objects_countCode_objects_count、或的聚合指标行SQL_syntax_elements_number。有关这些聚合值的更多信息,请参阅转化统计数据和 SQL 指标

  • 对象数量 -评估范围内此类数据库对象的总数。

  • 自动转换的对象 -DMS 架构转换无需任何手动操作即可转换的对象数量。

  • 操作简单的对象 -需要少量手动操作才能转换的对象的数量。

  • 操作中等复杂度的对象 -需要适度手动操作才能转换的对象的数量。

  • 具有复杂操作的对象 -需要大量手动操作才能转换的对象的数量。

  • 代码总行数 -此类型所有对象的源代码总行数。

要将报告导出为 CSV,请参阅保存评测报告

存根对象文件 (target-host_ Stub_Objects .csv)

仅当在迁移项目设置中启用了将不支持的内置对象转换为存根对象时,此文件才会出现。它包含为不支持的内置程序生成的每个存根对象一行,包括以下各列:

  • 类别 -存根对象的类型,例如scalar-function

  • 存根对象名称 -生成的存根的完全限定名称,包括架构和签名。

  • 出现次数 -转换后的代码中引用此存根对象的次数。