1

我是SSIS开发人员。我在SSIS中做了很多SQL存储过程查找概念。但是当来到Azure Data Factory时,我不知道如何使用SQL存储过程执行查找。如何在Azure数据工厂中执行查找?

任何人都可以请指导我吗?

在此先感谢! Jay

回答

1

Azure数据工厂(ADF)更多的是ELT工具而不是ETL,因此不支持直接查找。相反,这种类型的操作以及其他转换是下推到您实际使用的计算中。例如,如果要将数据移动到SQL Server,Azure SQL数据库或Azure SQL数据仓库,则应确保所有数据位于同一台服务器上,并使用Stored Procedure task来执行使用T-SQL和连接的查找。如果您正在使用Azure Data Lake Analytics(ADLA),则可以使用U-SQL Activity运行U-SQL或执行ADLA存储过程,再次通过连接或自定义U-SQL代码(如Combiner,Applier,Reducer)进行查找。事实上,您可以使用任何ADF计算选项,如SQL,HDInsight(包括Hive,Pig,Map Reduce,Streaming和Spark脚本),Machiine Learning或自定义.net活动。

所以你需要用ADF以不同的方式考虑事情。看看通过这篇文章,以获得在ADF转化数据的更深入的了解:

变换数据Azure的数据工厂 https://docs.microsoft.com/en-us/azure/data-factory/data-factory-data-transformation-activities

顺便说一句,我很少会使用查找在SSIS在早期版本中性能曾经很穷。尽管在后续版本中这已经得到了改进,但通常情况下,如果你可以在SQL中使用它,你可能应该这样做。这种模式利用了SQL Server的强大功能,而不是将数据拖拽到SSIS管道中,例如用于查找(基本上是连接)和将数据重新推出。我主要在涉及非关系数据时保留数据流转换,例如xml或将您的电子邮件服务器加入关系数据。这是我个人的看法:)

+0

感谢您的详尽解释!基本上,我也做文件级别的操作。让我们准确地说 我们的输入文件有很多字段(比方说#50),(逗号)分隔符。我们应该修改/使文件写入可接受的输出文件。 我有一些关于上述相关转换的问题。你能为我澄清这些吗? – Jayendran

+0

1.我们如何做简单的字符串连接? - 使用.NET进行自定义活动(https://docs.microsoft.com/zh-cn/azure/data-factory/data-factory-use-custom-activities)。但不知道哪部分函数/代码将用于我的简单连接。另外,还有没有比自定义活动做到这一点? 2.如何从客户端SFTP服务器复制文件并移动到我的天蓝色云存储中?是否有任何内置任务可用,或者我们应该在相同的自定义活动中执行此操作? – Jayendran

+0

3.如何从客户端SFTP重命名/删除文件? 4.如何执行一个简单的操作,例如,如果#field1 =“male”,那么我们的输出文件包含第一行中的列#field4? 在此先感谢 – Jayendran