

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

# 发现阶段
<a name="discover"></a>

在发现阶段，您可以创建要迁移到 AWS的 SSIS 软件包的列表。不同的开发团队遵循不同的风格、标准和模式来开发 ETL 工作。我们建议您查看贵组织的现有文档以了解这些模式。但是，文档往往不完整。您可以自动从 ETL 脚本中提取重要信息。这样可以节省手动工作和时间，减少人为错误，并标准化迁移方法。以下是您需要提取的一些重要细节：
+ 控制流任务总数
+ 控制流任务的详细信息
+ 数据流任务总数
+ 使用的数据流转换
+ 事件处理器
+ 连接管理器

使用这些信息来了解您的组织中使用的 ETL 模式，评估其复杂性，并确定要将此信息迁移到哪个合适的 AWS 服务。

从 SSIS 迁移这些 ETL 详细信息构成了迁移工作的大部分。但是，其他属性可以让人们深入了解设计和建筑决策。其中一些 SSIS 属性是：
+ [检查点](https://docs.microsoft.com/en-us/sql/integration-services/packages/restart-packages-by-using-checkpoints)，SSIS 中使用这些检查点从故障点重新启动作业
+ [传播变量](https://docs.microsoft.com/en-us/sql/integration-services/system-variables)，这有助于 SSIS 包在特定用例中取得成功，即使出现错误也是如此
+ [事务隔离级别](https://docs.microsoft.com/en-us/sql/integration-services/set-package-properties)，用于控制从数据库读取的数据的质量
+ [记录](https://docs.microsoft.com/en-us/sql/integration-services/performance/integration-services-ssis-logging)，以了解当前设计所捕获的日志类型及其存储位置

发现阶段的结果可以是清单，如下表所示。

![SSIS ETL 清单，作为迁移中发现阶段的输出](http://docs.aws.amazon.com/zh_cn/prescriptive-guidance/latest/migration-ssis-etl/images/ssis-etl-inventory.png)


此清单可能包含以下信息：
+ Package：要迁移的 SSIS 包的名称
+ 流：[控制流](https://docs.microsoft.com/en-us/sql/integration-services/control-flow/control-flow)或[数据流](https://docs.microsoft.com/en-us/sql/integration-services/data-flow/data-flow)
+ 任务：控制流任务或数据流组件的名称
+ 计数：在 SSIS 包中使用任务的次数