AWS Database Migration Service 功能

概览

AWS Database Migration Service(AWS DMS)可帮助您快速并安全地将数据库迁移至 AWS。AWS DMS 可让您在一项中央服务下大规模计划、评测、转换和迁移数据库和分析系统,从而节省时间、资源和成本。源数据库可在迁移过程中保持全面运行,从而最大程度地减少依赖该数据库的应用程序的停机时间。AWS Database Migration Service 可以在广泛使用的开源商业数据库之间迁移您的数据。

除了 AWS DMS,您还可以使用 AWS Schema Conversion Tool(AWS SCT)迁移数据仓库。查看 AWS SCT 支持来源的完整列表。

数据库图示

功能优势

AWS DMS 易于使用。无需安装任何驱动程序或应用程序,大多数情况下,也不需要对源数据库进行更改。在 AWS 管理控制台中,只需几步即可开始数据库迁移。

AWS DMS 可帮助您将数据库迁移至 AWS,而且几乎没有停机时间。源数据库在迁移期间发生的所有数据更改都会持续复制到目标数据库,因此源数据库在迁移期间仍可继续正常运行。

数据库迁移完成后,目标数据库在您选择的时间段内仍会与源数据库保持同步,使您能够在方便的时候切换数据库。

AWS DMS 是一项低成本服务。您只需为迁移过程中使用的计算资源以及额外的日志存储空间付费。

迁移 TB 容量的数据库可能只需低廉的成本即可完成。此费用同时适用于受支持数据库的同构和异构迁移。这与昂贵的传统数据库迁移方法形成鲜明对比。

AWS DMS 具有很强的弹性和自我修复能力。它可持续监控源数据库和目标数据库、网络连接以及复制实例。如果出现停止的情况,此服务会自动重启迁移过程,并从中止的位置继续迁移。利用 Amazon Relational Database Service(Amazon RDS)多可用区选项,您可以通过启用冗余复制实例来体验数据库迁移和连续数据复制的高可用性。

您可以为一次性迁移或持续复制设置 AWS DMS 任务。持续复制任务能让您的源数据库和目标数据库保持同步。在设置完毕后,持续复制任务将以最小延迟持续地将源数据库的更改应用到目标数据库系统中。在复制任务中都能使用所有 AWS DMS 功能,比如数据验证和转换。

出于开发目的,AWS DMS 可以用于将数据迁移到云以及将数据从云中迁移出来。有两种常见的应用场景:第一种是在 AWS 上部署开发、测试或暂存系统,从而利用云的可扩展性和快速预置功能。这可让开发和测试人员使用真实生产数据的副本,还可以将更新复制回本地生产系统。

第二种应用场景为开发系统位于本地(通常位于个人笔记本电脑中)时,将 AWS 生产数据库的当前副本一次性或持续迁移到这些本地系统。您可以避免打断现有的 DevOps 流程,同时确保生产系统处于最新状态。

您可以使用 AWS DMS,将多个源数据库整合至一个目标数据库。 同构和异构数据库迁移都可以实现此目标,您也可以对受支持的数据库引擎使用此功能。源数据库可以位于您本地(AWS 外部),可以在 Amazon Elastic Compute Cloud(Amazon EC2)实例上运行,也可以是 Amazon RDS 数据库。源数据库还可以分布在不同的地点。

例如,第一个源数据库位于 AWS 之外您自己的场所,第二个数据库在 Amazon EC2 中,第三个数据库则位于 Amazon RDS 数据库。目标数据库可以是 Amazon EC2 或 Amazon RDS 中的数据库。

迁移计划

AWS Database Migration Service(AWS DMS)Fleet Advisor 是 AWS DMS 的一项完全托管式免费功能。它可以自动执行迁移计划,并帮助您轻松大规模地将数据库和分析机群迁移到云。为了加快迁移,AWS DMS Fleet Advisor 将会自动盘存和评测您的本地数据库和分析服务器机群,然后确定潜在的迁移计划。通过使用从自我管理型数据库收集的历史性能和使用模式,Fleet Advisor 可以推荐目标数据库引擎和实例选项并估算成本。AWS DMS 可以帮助您以保密的方式将数据库和分析系统迁移到 AWS,几乎不会产生停机时间。

AWS DMS Fleet Advisor 将会发现和分析 AWS DMS 中支持的相同源数据库,包括 Oracle、Microsoft SQL Server、MySQL、PostgreSQL 等。AWS DMS Fleet Advisor 在几小时内即可提供结果,无需几周甚至数月,并且无需使用任何第三方工具,也无需聘请迁移专家。

在 DMS 控制台中,只需几步即可使用 Fleet Advisor 开始您的迁移计划

架构评估和转换

AWS Database Migration Service Schema Conversion(AWS DMS SC)是 AWS DMS 的全托管功能,允许您在不停机的情况下大规模自动评测和转换数据库架构和代码对象。AWS DMS SC 支持热门的异构迁移,例如从 Oracle 迁移至 Amazon Relational Database Service(Amazon RDS)for PostgreSQL从 SQL Server 迁移至 Amazon Relational Database Service(Amazon RDS)for MySQL从 SQL Server 迁移至 Amazon Aurora PostgreSQL 兼容版以及从 Oracle 迁移至 Amazon Aurora MySQL 兼容版。在 AWS DMS 控制台中,只需几步即可节省数周或数月的手控时间和资源。

只需几步,即可生成显示架构转换复杂性的评测报告。该服务提供了有关如何解决源数据库引擎和目标数据库引擎之间的任何不兼容性的规范性指南。在文档如何开始指南中了解关于 AWS DMS SC 的更多信息。

或者,您可以下载 AWS SCT 并在本地系统上执行相似的评测和转换。AWS SCT 用户指南提供关于如何开始最佳实践故障排除的详细说明。

数据库和分析迁移

迁移支持AWS DMS 可以在广泛使用的商用和开源数据库之间迁移数据。 该服务支持同构迁移(例如从 Oracle 迁移至 Oracle),以及不同数据库基础设施之间的异构迁移(例如从 Oracle 迁移至 Aurora)。

AWS DMS 支持 20 多个数据库和数据仓库作为源和目标端点。

由于源数据库和目标数据库的架构结构、数据类型和数据库代码都是兼容的,此类迁移只需一个步骤即可完成。您可以创建与源数据库和目标数据库相连的迁移任务,然后单击一个按钮开始迁移。AWS DMS 会负责其余的工作。

源数据库可以位于 AWS 之外您自己的场所,可以运行在 Amazon EC2 实例上,或 Amazon RDS 数据库。目标数据库可以是 Amazon EC2 或 Amazon RDS 中的数据库。

AWS DMS 提供多个执行同构迁移的选项。第一个选项是使用内置的原生数据库工具自动迁移到目标数据库,无需管理复制实例。该选项最适用于以 Aurora 和 Amazon RDS 为目标引擎的、MySQL 和 PostgreSQL 所有数据类型和辅助对象的迁移。替代选项,即使用 AWS Database Migration Service(AWS DMS)实例或按需复制实例适用于所有其他引擎。

  • 异构数据库迁移:在异构数据库迁移中,源数据库和目标数据库采用不同的数据库引擎,例如从 Oracle 迁移至 Aurora从 Oracle 迁移至 PostgreSQL从 Microsoft SQL Server 迁移至 MySQL

    在这种情况下,源数据库和目标数据库的架构结构、数据类型和数据库代码可能差别巨大,要求在开始迁移数据之前先执行架构和代码转换。

    这使得异构数据库迁移需要分成两个步骤。 首先,使用 AWS DMS SC 转换源架构和代码,使之与目标数据库的架构和代码匹配。然后使用 AWS DMS 将源数据库中的数据迁移到目标数据库。AWS DMS 提供使用按需复制实例或 AWS DMS 无服务器的选项,通过自动执行配置、监控和扩展迁移资源等耗时任务来简化迁移。

    在迁移期间,系统会自动转换所需的数据类型。 源数据库可以位于 AWS 外部、您自己的场所或第三方数据库服务、Amazon EC2 实例或 Amazon 数据库上。同样,目标数据库可以位于 AWS 外部、EC2 实例或托管的 Amazon 数据库和分析服务上。查看支持的源引擎和目标引擎列表。

无服务器

AWS DMS Serverless 让您可以灵活轻松地迁移数据,无需预置复制实例或手动监控使用情况和调整容量。它可以自动配置、监控和扩展迁移资源,使其达到满足需求所需的最佳容量。AWS DMS Serverless 支持常用的 AWS DMS 应用场景,包括连续数据复制、数据库整合和迁移,即使源数据库引擎与目标数据库引擎不同也不例外。它甚至可以帮助进行最复杂的迁移,包括同时迁移数十个甚至数百个工作负载或在 AWS 上完成持续的数据复制。

AWS DMS Serverless 具有成本效益,因为您不再需要为满足峰值需求而过度预置资源。您只需为使用的数据迁移容量付费。请访问 AWS DMS Serverless 文档了解更多信息。

对于相似引擎或兼容引擎之间的同构迁移,AWS DMS 还提供了使用具有自动扩缩功能的内置原生工具来实现无缝数据库迁移的选项。仅按实际使用时间(小时)付费。

连续数据复制

使用 AWS DMS,您可以从支持的源中将数据低延迟、持续地复制到支持的目标。连续数据复制具有多种用途,包括灾难恢复实例同步、地理数据库分发以及开发和测试环境同步。

您可以使用 AWS DMS 针对受支持的数据库引擎执行同构和异构数据复制。 源数据库或目标数据库可以位于 AWS 之外您自己的场所,可以运行在 Amazon EC2 实例上,或 Amazon RDS 数据库。

您可以将数据从一个数据库复制到一个或多个目标数据库,或者对来自多个数据库的数据进行整合并将其复制到一个或多个目标数据库。

例如,您可以从多个源复制到 Amazon Simple Storage Service(Amazon S3),以构建高度可用且可扩展的数据湖解决方案。您还可以通过将数据流传输到 Amazon Redshift 来将数据库整合到 PB 级数据仓库中。

通过了解如何设置 AWS DMS 复制实例使用 AWS DMS 复制实例开始。

常见问题

除了持续的数据复制和数据库整合外,AWS DMS 还可用于出入 AWS 的数据库和分析迁移。使用 AWS DMS,您可以对包括 Aurora 在内的托管服务进行现代化改造。AWS DMS 包含诸如用于转换架构和源代码的 AWS DMS SC 以及用于自动预置、监控和扩展容量资源以进行低接触迁移的 AWS DMS Serverless 等功能。

AWS DMS 免费套餐包括每月最多 750 个小时的单可用区 dms.t2.micro 实例使用时长。不同功能的费用视使用情况而定。对于 AWS DMS Fleet Advisor 和 AWS SC,您只需为所使用的存储空间付费。对于 AWS DMS 迁移选项,无论是使用复制实例还是无服务器选项,都按小时使用量付费。有关更多详细信息,请参阅 AWS DMS 定价