我是SSIS开发人员。我在SSIS中做了很多SQL存储过程查找概念。但是当进入Azure数据工厂时,我还没有想过如何使用SQL存储过程执行查找。
有人可以指导我吗?
提前致谢! 杰
答案 0 :(得分: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中使用Lookups,因为早期版本的性能往往很差。虽然在以后的版本中已经改进了,但通常如果你可以在SQL中做到这一点,你可能应该这样做。这种模式利用了SQL Server的强大功能,而不是将数据拖入SSIS管道,例如用于查找(基本上是连接)并再次将数据推回。我主要在涉及非关系数据时保留数据流转换,例如xml或使用关系数据加入您的电子邮件服务器。无论如何,这是我的个人观点:)