上海

点击搜索

发布

为Azure数据工厂创建自定义.NET活动管道

区域:
上海 > 黄浦 > 南浦大桥
类别:
IDC服务
地址:
上海


Azure数据工厂为收集和准备数据,从而将这些数据用于存储和分析提供了一种基于云的全新方法。那么,您该如何开始使用它来探索其功能呢?Feodor Georgiev向我们介绍了准备使用管道的实际步骤,其中包括从配置Azure环境到将文件从FTP下载到Azure环境中的blob存储的过程。

Azure数据工厂是构建在基于云的ETL理念之上的Azure集成工具,但它使用了提取和加载(EL)模型及转换和加载(TL)模型。为此,它使用了名为管道的数据驱动工作流,而它们可以从一系列的数据存储库中收集数据,并对其进行处理或转换。该数据处理过程可以使用基于Azure的可用计算机服务,如Hadoop、Spark和Azure机器学习等。然后,它就可以将数据发布到各种下游数据存储库中了。本文将为您介绍如何创建用于Azure 数据工厂的自定义.net活动管道。

首先为您介绍一种创建自定义.NET活动的方法,从而将文件从FTP服务器资讯news.webhostin***/下载到Azure环境中的blob存储之上。为此,我们将需要用到Visual Studio 2015来为我们的自定义代码创建一个类库,然后我们将把数据工厂应用程序添加到该项目中,以便我们可以使用Visual Studio创建ADF(Azure Data Factory的简称)管道,从而在我们准备好.NET类后直接部署ADF管道。此外,我们也将用到一种批处理服务和计算环境,它们将在一组Azure虚拟机上运行自定义代码,而这些Azure 虚拟机是在我们安排管道时按需提供的。

本文将使用由一家斯堪的纳维亚的移动运营商所提供的FTP服务器。 该FTP服务器具有匿名访问权限,而我初会将其用于测试互联网连接的速度,这对于我们构建自定义.NET活动的目的来说绰绰有余。

请注意:Azure 数据工厂目前支持FTP数据源,而且我们可以使用Azure portal 和ADF向导来完成所有的步骤。

本文的重点旨在向读者介绍自定义.NET管道的灵活性,以及它们为使用Visual Studio来自动化ADF部署,而不会对代码引入不必要的复杂性所能提供的帮助。还需注意,通过使用Visual Studio来创建自定义.NET活动和ADF部署,我们可以在需要时创建一个公共存储库,并将其用于自动化并加快更大型团队中的管道部署过程。

本文假设读者已经创建了Azure订阅账户,并且熟悉如.NET、dll文件、FTP请求以及Azure 数据工厂这类的概念。

关于源文件

如上所述,源文件存储于其中一家电信公司的服务器之上:如图。 文件夹中存有一系列不同大小的文件,如下所示:

因此,在我们的自定义活动中,我们将让该类下载20MB的.zip文件,并将其存储在我们的blob存储中。

我们需要:

以下是我们对设置可用的自定义.NET活动所要完成的工作的高级概述:

1. 我们需要创建一个批处理帐户和批处理池。

2. Azure Batch是一种用于在云端运行应用程序的平台服务,其运行于接受托管的虚拟机群上。有关Azure Batch的介绍,请访问以下文档://docs.micr***/en-us/azure/batch/batch-technical-overview。 在本文中,我们将使用一台非常简单的Windows server虚拟机来创建一个批处理池,从而执行FTP下载任务。而在现实的用例中,批处理服务极其灵活,而且可以自动扩展虚拟机池。

3. 一个存储文件的Blob存储

4. 一个包含自定义代码的Visual Studio项目:该代码将被编译成DLL,然后会被压缩并存储在blob存储中;而ADF管道将通过blob存储访问该代码。

5. 一个数据工厂应用程序,这样我们就可以直接使用解决方案部署ADF了(这样一来,我们就不需要在每次更改C#代码后,手动压缩和复制DLL到blob存储中了)。

6. 可用于天气数据,并能发布管道的数据工厂。

7. 调试和记录管道活动。 我们将创建一个批处理应用程序来帮助我们在本地调试自定义的.NET活动。

创建批处理账户和批处理池

批处理帐户是一项免费服务,不过您需根据Azure定价来为基础资源(池、虚拟机和存储空间)支付费用。

要创建批处理帐户,您只需使用Azure portal,然后点击“新建”“计算”“批处理服务”即可。

您会看到以下选项卡:

请在必填栏目中输入所需的信息并创建该帐户。请确保您为批处理服务创建了一个相连的存储帐户,因为我们将在使用Visual Studio部署ADF管道时用到该账户。

现在,我们可以转至刚刚创建的批处理服务,并点击池选项卡来创建批处理池。 在池选项卡中,请点击“添加”,并填写必填字段。在本文中,我选择的是具有少可用资源的Windows 2008服务器。但在实际的生产环境中,您需认真衡量这些设置,因为您的选择会对结果产生影响。

请在创建池ID之后对其进行留意,因为我们会将其用于ADF管道。

创建Blob存储

在本文中,我们将在blob存储中使用一个名为ftpdata的文件夹,而该存储是在Azure订阅中创建的。有关如何创建blob存储的详细信息,请访问以下Azure文档:://docs.micr***/en-us/azure/storage/storage-create-storage-account

创建自定义活动代码

首先,我们需要打开Visual Studio(我在示例中使用的是VS2015),并创建一个名为FTPDownloader的类库新项目。请注意,框架的版本应该为4.5.2。

其次,我们需要通过在NuGet软件包管理器控制台中输入以下几行命令来安装NuGet依赖项(要打开控制台,请依次点击“工具”“NuGet软件包管理器”“软件包管理器控制台”):

当您运行了上述的命令后,您将看到该项目中加入了索引。

完成这步之后,我们就可以编写自定义代码了。

请注意,该类使用了IDotNetActivity的执行方法,它需要4个参数:输入列表、输出列表、用于扩展属性的字典以及记录器。它会返回一个字典。

上述代码只会为您简单显示如何实施接口、从JSON管道中获取扩展属性、如何从输出数据集中获取连接字符串、以及如何简单地调用FTP服务器,并将文件直接流式传输到我们的blob存储中。

设置Azure环境并运行自定义.NET活动的方法和步骤有很多,本文先列举以上一些方法和调试代码,你可以很方便的将文件从FTP下载到Azure环境内的blob存储中。
查看更多上海网站/软件服务信息

免责声明:此信息系发布者(UID:453180)自行发布,本站是服务平台,仅提供信息存储空间服务,该信息内容的真实性及合法性由该发布者完全负责。

© lieju.com 联系我们