什么是 AWS Database Migration Service? - AWS 数据库迁移服务

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

什么是 AWS Database Migration Service?

AWS Database Migration Service (AWS DMS) 是一项云服务,可以迁移关系数据库、数据仓库、NoSQL 数据库和其他类型的数据存储。您可以使用将数据迁移 AWS DMS 到云和本地设置的组合中, AWS 云 或者在两者之间迁移。

使用 AWS DMS,您可以发现源数据存储、转换源架构和迁移数据。

  • 要搜索您的源数据基础设施,您可以使用 DMS Fleet Advisor。该服务从您的本地数据库和分析服务器收集数据,并生成可以迁移到云端的服务器、数据库和架构的 AWS 清单。

  • 要迁移到其他数据库引擎,您可以使用 DMS 架构转换。此服务会自动评测您的源架构,并将其转换到新的目标引擎。或者,您可以将 AWS Schema Conversion Tool (AWS SCT)下载到本地 PC 以转换源架构。

  • 转换源架构并将转换后的代码应用于目标数据库后,您可以使用迁 AWS DMS 移数据。您可以执行一次性迁移,或者复制持续更改以保持源和目标同步。因为 AWS DMS 是其中的一部分 AWS 云,所以您可以获得 AWS 服务所提供的成本效益、上市速度、安全性和灵活性。

在基本层面上, AWS DMS 是中运行复制软件 AWS 云 的服务器。您可以创建源和目标连接,以告知从 AWS DMS 何处提取数据以及从何处加载数据。接下来,您可以安排在此服务器上运行的任务来移动数据。 AWS DMS 如果目标上不存在表和关联的主键,则创建它们。如果您愿意,可以自行创建目标表。或者你可以使用 AWS Schema Conversion Tool (AWS SCT) 来创建部分或全部目标表、索引、视图、触发器等。

下图说明了 AWS DMS 复制过程。

入门 AWS DMS
参考信息

AWS DMS 执行的迁移任务

AWS DMS 接管了迁移项目中涉及的许多困难或繁琐的任务:

  • 在传统解决方案中,您需要执行容量分析、采购硬件和软件、安装和管理系统以及测试和调试安装。 AWS DMS 会自动管理迁移所需的所有硬件和软件的部署、管理和监控。您的迁移可以在 AWS DMS 配置过程开始后的几分钟内启动并运行。

  • 使用 AWS DMS,您可以根据需要扩大(或缩小)迁移资源以匹配实际工作负载。例如,如果您确定需要额外的存储空间,则可轻松增加分配的存储空间并重新开始您的迁移,通常在几分钟内完成。

  • AWS DMS 使用 pay-as-you-go模型。您只需在使用 AWS DMS 资源时为资源付费,而传统的许可模式需要预付购买成本和持续的维护费用。

  • AWS DMS 自动管理支持迁移服务器的所有基础架构,包括硬件和软件、软件修补和错误报告。

  • AWS DMS 提供自动故障转移。如果您的主复制服务器因任何原因发生故障,则备份复制服务器可接管运行,而对服务造成的中断很少或没有。

  • AWS DMS Fleet Advisor 会自动清点您的数据基础架构。它会创建报告,帮助您确定迁移候选项并规划迁移。

  • AWS DMS 架构转换会自动评估源数据提供商迁移的复杂性。它还将数据库架构和代码对象转换为与目标数据库兼容的格式,然后应用转换后的代码。

  • AWS DMS 可以帮助您切换到比现在运行的数据库引擎更具成本效益的现代数据库引擎。例如, AWS DMS 可以帮助您利用亚马逊关系数据库服务 (Amazon RDS) 或亚马逊 Aurora 提供的托管数据库服务。或者,它可以帮助您迁移到由 Amazon Redshift 提供的托管数据仓库服务、NoSQL 平台(例如 Amazon DynamoDB)或低成本存储平台(例如 Amazon Simple Storage Service(Amazon S3))。相反,如果您想从旧的基础架构迁移出来,但继续使用相同的数据库引擎, AWS DMS 也支持该过程。

  • AWS DMS 支持几乎所有当今最流行的 DBMS 引擎作为源端点。有关更多信息,请参阅 数据迁移的源

  • AWS DMS 广泛涵盖了可用的目标引擎。有关更多信息,请参阅 数据迁移的目标

  • 您可以从任何支持的数据源迁移到任何支持的数据目标。 AWS DMS 完全支持受支持的引擎之间的异构数据迁移。

  • AWS DMS 确保您的数据迁移是安全的。静态数据通过 AWS Key Management Service (AWS KMS) 加密进行加密。迁移过程中,您可以在传输中的数据从源传输至目标时使用安全套接字层 (SSL) 对其进行加密。