用 AWS SCT 将 SSIS 转换为 AWS Glue
接下来,您可以找到如何使用 AWS SCT 将 Microsoft SQL Server Integration Services (SSIS) 包转换为 AWS Glue。
要将 Microsoft SSIS 包转换为 AWS Glue,请确保使用 AWS SCT 版本 1.0.642 或更高版本。您还需要有一个 SSIS 项目,其中包含 ETL 包 — 本地文件夹中的 .dtsx、.conmgr 和 .params 文件。
您不需要安装 SSIS 服务器。通过本地 SSIS 文件进行转换过程。
使用 AWS SCT 将 SSIS 包转换为 AWS Glue
-
在 AWS SCT 中创建新项目,或打开现有项目。有关更多信息,请参阅 在 AWS SCT 中启动和管理项目。
-
在菜单上选择添加源,将新的源 SSIS 包添加到您的项目中。
-
选择 SQL Server Integration Services 并完成以下操作:
-
连接名称:输入连接的名称。AWS SCT 在元数据树中显示此名称。
-
SSIS 包文件夹:选择包含包的 SSIS 项目文件夹的路径。
AWS SCT 从本地文件夹读取项目文件(扩展名
.dtsx、.conmgr或.params的文件)并对其进行解析。然后,它会将它们组织成 AWS SCT 类别树。 -
-
从菜单中选择添加目标以添加新的目标平台,从而转换源 SSIS 包。
-
选择 AWS Glue 并完成以下操作:
-
连接名称:输入连接的名称。AWS SCT 在元数据树中显示此名称。
-
从 AWS 配置文件复制:选择要使用的配置文件。
-
AWS 访问密钥:输入您的 AWS 访问密钥。
-
AWS 私有密钥:输入您的 AWS 私有密钥。
-
区域:从列表中选择要使用的 AWS 区域。
-
Amazon S3 存储桶文件夹:输入您计划使用的 Amazon S3 存储桶的文件夹路径。
您可以使用虚拟 AWS Glue 目标。在这种情况下,不需要指定连接凭证。有关更多信息,请参阅 在 AWS Schema Conversion Tool 中映射到虚拟目标。
-
-
创建新的映射规则,其中包含源 SSIS 包和 AWS Glue 目标。有关更多信息,请参阅 在 AWS Schema Conversion Tool 中映射新的数据类型。
-
在视图菜单上,选择主视图。
-
在 SSIS 树视图中,打开连接管理器的上下文(右键单击)菜单,然后选择配置连接。
-
配置项目连接管理器。
要为 SSIS 连接管理器配置连接映射,请为相应的 SSIS 连接管理器指定 AWS Glue 连接。确保您已创建 AWS Glue 连接。
-
在连接下,选择项目连接。
-
对于 Glue 目录连接,请选择相应的 AWS Glue 连接。
-
-
配置包连接管理器:
-
在连接下,选择包。
-
对于 Glue 目录连接,请选择相应的 AWS Glue 连接。
-
对包可用的所有连接重复这些操作。
-
-
选择应用。
-
转换包。在源树视图中,找到包。打开包的上下文(右键单击)菜单,然后选择转换包。
-
将转换后的脚本保存到 Amazon S3。在目标树视图中,找到包脚本。打开转换后的脚本的上下文(右键单击)菜单,然后选择保存到 S3。
-
配置 AWS Glue 作业。在目标树视图中,找到包脚本。打开转换后的脚本的上下文(右键单击)菜单,然后选择配置 AWS Glue 作业。
-
完成三个配置部分。
-
完成设计数据流部分:
-
执行策略:选择作业将如何运行 ETL 脚本。选择 SEQUENTIAL,按向导中指定的顺序运行脚本。选择 PARALLEL 并行运行脚本,而不考虑向导中指定的顺序。
-
脚本:选择转换后的脚本的名称。
-
选择下一步。
-
-
完成作业属性部分:
-
名称:输入 AWS Glue 作业的名称。
-
IAM 角色:选择用于运行作业和访问数据存储的资源进行授权的 IAM 角色。
-
脚本文件名:输入转换后的脚本的名称。
-
脚本文件 S3 路径:输入转换后的脚本的 Amazon S3 路径。
-
使用 SSE-S3 加密脚本:选择此选项以使用采用 Amazon S3 托管式加密密钥的服务器端加密(SSE-S3)保护数据。
-
临时目录:输入临时目录的 Amazon S3 路径以获得中间结果。AWS Glue 和 AWS Glue 内置转换则使用此目录读取或写入 Amazon Redshift。
-
AWS SCT 会自动生成 Python 库的路径。您可以在生成的 python 库路径中查看此路径。您不能编辑这个自动生成的路径。要使用其他 Python 库,请在用户 python 库路径中输入路径。
-
用户 python 库路径:输入其他用户 Python 库的路径。使用逗号分隔 Amazon S3 路径。
-
从属 JAR 路径:输入从属 JAR 文件的路径。使用逗号分隔 Amazon S3 路径。
-
引用文件路径:输入脚本所需的其他文件(例如配置文件)的路径。使用逗号分隔 Amazon S3 路径。
-
最大容量:输入此作业运行时可分配的 AWS Glue 数据处理单元 (DPU) 的最大数量。可以输入 2 到 100 的任何整数。默认值为 2。
-
最大并发:输入此作业允许的并发运行的最大数量。默认值是 1。达到此阈值时,AWS Glue 将返回一个错误。
-
作业超时(分钟):输入 ETL 作业的超时值,以防作业失控。批处理作业的默认值为 2880 分钟(48 小时)。当作业执行时间超过此限制时,作业运行状态更改为
TIMEOUT。 -
延迟通知阈值(分钟):输入 AWS SCT 发送延迟通知之前的阈值(以分钟为单位)。
-
重试次数:输入在失败时 AWS Glue 自动重新启动作业的次数(0–10)。达到超时限制的作业不会重新启动。默认值是 0。
-
选择下一步。
-
-
配置所需的连接:
-
从所有连接中,选择所需的 AWS Glue 连接并将其添加到选定连接列表中。
-
选择完成。
-
-
-
创建已配置的 AWS Glue 作业。在目标树视图中,查找并展开 ETL 作业。打开您配置的 ETL 作业的上下文(右键单击)菜单,然后选择创建 AWS Glue 作业。
-
运行 AWS Glue 作业:
-
通过 https://console.aws.amazon.com/glue/
打开 AWS Glue 控制台。 -
在导航窗格中,选择作业。
-
选择添加作业,然后选择要运行的作业。
-
在操作选项卡上,选择运行作业。
-
AWS SCT 可以转换为 AWS Glue 的 SSIS 组件
您可以使用 AWS SCT 转换数据流和控制流组件以及容器、参数和变量。
支持的数据流组件包括:
ADO NET 目的地
ADO NET 源
聚合
缓存转换
字符映射转换
条件拆分转换
复制列转换
数据转换的转换
派生列转换
Excel 目的地
Excel 源
导出列转换
平面文件目的地
平面文件源
模糊查找转换
导入列转换
查找转换
合并联接转换
合并转换
组播转换
ODBC 目的地
ODBC 源
OLE 数据库命令转换
OLE 数据库目标
OLE DB 源
百分比抽样转换
转置转换
原始文件目的地
原始文件源
RecordSet 目的地
行数转换
行采样转换
排序转换
SQL Server 目的地
Union All 转换
反转置转换
XML 源
支持的控制流组件包括:
批量插入任务
执行包任务
执行 SQL 任务
执行 T-SQL 语句任务
表达式任务
文件系统任务
通知操作员任务
发送邮件任务
支持的 SSIS 容器包括:
For 循环容器
Foreach 循环容器
顺序容器