你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
使用 SSIS 连接器将数据移入或移出 Azure Blob 存储
适用于 Integration Services (SSIS) 的 Azure 功能包提供连接到 Azure、在 Azure 和本地数据源之间传输数据以及处理存储在 Azure 中的数据的组件。
此菜单链接到可用于将数据移入和移出 Azure Blob 存储的技术:
客户将本地数据移到云中后,便可以从任何 Azure 服务访问其数据,以利用 Azure 技术套件的完整功能。 这些数据可以随后使用,例如,用在 Azure 机器学习或 HDInsight 群集中。
有关使用这些 Azure 资源的示例,请参阅 SQL 和 HDInsight 演练。
若要深入了解使用 SSIS 完成混合数据集成方案中常见的业务需求的规范方案讨论,请参阅Doing more with SQL Server Integration Services Feature Pack for Azure(使用用于 Azure 的 SQL Server Integration Services 功能包执行更多操作)博客。
注意
有关 Azure Blob 存储的完整介绍,请参阅 Azure Blob 基本知识和 Azure Blob 服务 REST API。
先决条件
若要执行本文所述任务,必须设置 Azure 订阅和 Azure 存储帐户。 若要上传或下载数据,需要 Azure 存储的帐户名和帐户密钥。
- 若要设置 Azure 订阅,请参阅免费试用一个月。
- 若要查看存储帐户创建说明并了解如何获取帐户和密钥信息,请参阅关于 Azure 存储帐户。
若要使用 SSIS 连接器,则必须下载:
- SQL Server 2014 或 2016 标准版(或更高版本) :安装包括 SQL Server Integration Services。
- 适用于 Azure 的 Microsoft SQL Server 2014 或 2016 Integration Services 功能包:可以从 SQL Server 2014 Integration Services 和 SQL Server 2016 Integration Services 分别下载这些连接器。
注意
SSIS 随 SQL Server 一起安装,但并不包括在 Express 版本中。 有关 SQL Server 各版本中包含哪些应用程序的信息,请参阅 SQL Server 技术文档
若要安装 SSIS,请参阅安装 Integration Services (SSIS)
有关如何使用 SISS 生成简单的提取、转换和加载 (ETL) 包进行启动并运行的信息,请参阅 SSIS 教程:创建简单的 ETL 包。
下载 NYC 出租车数据集
此处所述的示例使用公开可用的数据集,该数据集在 Azure 开放数据集和 TLC 行程记录数据中提供。 此数据集包含 2013 年纽约市内约 1.73 亿次出租车行程。 有两种类型的数据:行程详细信息数据和费用数据。
将数据上传到 Blob 存储
要使用 SSIS 功能包将数据从本地移动到 Blob 存储,使用 Azure Blob 上传任务的实例,如下所示:
下表描述了该任务使用的参数。
字段 | 说明 |
---|---|
AzureStorageConnection | 指定现有 Azure 存储连接管理器或新建一个 Azure 存储连接管理器,该管理器引用指向 blob 文件托管位置的 Azure 存储帐户。 |
BlobContainer | 指定 blob 容器的名称,该容器将上传的文件保存为 blob。 |
BlobDirectory | 指定将上载的文件作为块 blob 存储的 blob 目录。 该 blob 目录是一个虚拟层次结构。 如果 blob 已存在,它会被替换。 |
LocalDirectory | 指定包含要上传的文件的本地目录。 |
FileName | 指定名称筛选器以选择具有指定名称模式的文件。 例如,MySheet*.xls* 包括 MySheet001.xls 和 MySheetABC.xlsx 等文件 |
TimeRangeFrom/TimeRangeTo | 指定时间范围筛选器。 将包括在 TimeRangeFrom 之后以及 TimeRangeTo 之前修改的文件。 |
注意
AzureStorageConnection 凭据必须正确,且在尝试进行传输之前,BlobContainer 必须存在。
从 Blob 存储下载数据
要使用 SSIS 将数据从 Blob 存储下载到本地存储,请使用 Azure Blob 下载任务的实例。
更高级的 SSIS Azure 方案
SSIS 功能包能够通过将任务一起打包来处理更复杂的流。 例如,blob 数据可以直接传输到 HDInsight 群集,可将此群集的输出下载回 blob,再下载到本地存储。 SSIS 可使用附加的 SSIS 连接器在 HDInsight 群集上运行 Hive 和 Pig 作业:
- 若要使用 SSIS 在 Azure HDInsight 群集上运行 Hive 脚本,请使用 Azure HDInsight Hive 任务。
- 若要使用 SSIS 在 Azure HDInsight 群集上运行 Pig 脚本,请使用 Azure HDInsight Pig 任务。
作者
本文由 Microsoft 维护, 它最初是由以下贡献者撰写的。
首席作者:
- Mark Tabladillo | 高级云解决方案架构师
若要查看非公开的 LinkedIn 个人资料,请登录到 LinkedIn。
后续步骤
- Azure Blob 存储简介
- 复制 blob 并将其从一个容器或存储帐户移动到另一个容器或存储账户
- 在 Azure 数据工厂或 Azure Synapse Pipeline 中执行现有 SSIS 包
相关资源
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈