《Windows Azure Platform 系列文章目录》
我们在做数据分析和数据转换的时候,经常会遇到ETL的场景,所谓ETL就是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。
现在在大数据的背景下,不仅有ETL,也会有ELT的场景。Azure数据工厂为这些复杂的数据集成项目,沟通的PaaS服务。
熟悉微软产品的读者都知道,微软传统的数据库产品SSIS (SQL Server Integration Service)就是数据库的ETL工具。
但是在云平台,我们的数据源会有很多种,除了传统的CSV, Excel,关系数据库以外,还有AWS S3,AWS Redshift,Salesforce,SAP HANA,Google BigQuery等等多种数据源。
Azure Data Factory (ADF)除了支持多种数据源以外,还支持数据转换,数据加载和变量参数配置等等。我们会在后面的内容做详细的介绍。
在开始ADF的演示之前,我们还需要了解ADF的核心概念。包含:
1.Pipleline管道
2.Activity活动
3.Dataset数据集
4.Linked Service链接服务
5.Parameter参数
1.Pipleline管道
数据工厂可以包含一个或多个数据管道。 “管道”是共同执行一项任务的活动的逻辑分组。 例如,执行一个或者多个任务,每个任务可以有依赖关系,或者没有依赖关系。并且任务可以并行执行。
2.Activity活动
管道中的活动定义对数据执行的操作。 例如,可使用复制活动将数据从本地 SQL Server 复制到 Azure Blob 存储。 然后,使用数据流活动或 Databricks 笔记本活动来处理数据并将其转换为 Azure Synapse 分析池,在此基础上构建了商业智能报告解决方案。
3.Dataset数据集
数据集可识别不同数据存储(如表、文件、文件夹和文档)中的数据。 例如,Azure Blob 数据集可在 Blob 存储中指定供活动读取数据的 Blob 容器和文件夹,或者是SQL Server里的一张Table表
4.Linked Service链接服务
Linked Service链接服务类似于连接字符串,它定义数据工厂连接到外部资源时所需的连接信息。 不妨这样考虑:数据集代表SQL Server中的Table数据结构,而链接服务则定义到SQL Server的数据库链接连接。 例如,Azure 存储链接服务可将存储帐户链接到数据工厂。 Azure Blob 数据集表示 blob 容器以及包含要处理的输入 blob 的 Azure 存储帐户的文件夹。
5.Parameter参数
概念上类似于变量,可以在运行时被调用。比如文件名保存的时候,是以当前运行时间的年、月、日、小时等信息来保存。或者是自增量,每次调用的时候自加1等等。
ADF和传统SSIS的比较:
ADF | SSIS |
Pipleline | Package |
Activity | Task |
Dataset | Source/Destination |
Linked Service | Connection Manager |