Azure数据工厂与SSIS

时间:2016-03-14 10:43:12

标签: azure ssis azure-data-factory

我正在考虑将我们的SSIS ETL移动到Azure Data Factory。我支持这种飞跃的论点是:

  • 我们的资源和目标已经在云中。 ADF是云原生的,所以看起来很合适。

  • ADF是一项服务因此我们可以按需消费和支付。 SSIS意味着许可成本,并且不会为按需消费自然提供借贷(我们考虑使用DevOps在特定的基础上旋转ETL服务器)

  • 使用SSIS以编程方式生成ETL代码需要非常具体的技能,例如BIML或DTS API。通过迁移到ADF,我希望在USQL中结合使用JSON和TSQL以及C#将使必要的技能更加通用。

我希望社区成员能够分享他们的经验,从而帮助我做出决定。

4 个答案:

答案 0 :(得分:3)

这个旧帖子的答案已经过时了。我在下面的评论与ADF版本2有关。

首先,ADF具有运行SSIS包的能力,因此不仅可以迁移旧的ETL进程,而且可以逐步迁移到ADF,但建议这样做。您不想随着每一项新技术的出现而改变一切。然后,您只能在ADF活动上实施新的或修改的ETL流程。

第二,尽管可能还不完全存在,但是使用ADF数据流,您可以执行转换,而可以使用SSIS。仍然有些遗漏,但是大多数常用功能都在那里。

ADF创作不需要Visual Studio。它确实需要特定的技能,但是我发现学习曲线并不陡峭。在某些领域仍然缺少文档和最佳实践,但是已经在数据库/数据仓库体系结构和ETL中具有丰富经验的人会发现它相对容易。最好的是,大多数事情都可以在视觉上完成,而不会弄乱代码(这只是简单的JSON)。

此外,ADF与Azure Devops集成并使用Gi​​t进行版本控制。因此,您可以免费获得变更管理。

对于更高级的需求,您还可以使用Java(Scala)或Python运行Databricks活动,并与Hadoop(Hive和Pig)和Spark集成。

最后,ADF包含了监视和诊断工具,您必须在SSIS中自行构建。您可以更轻松地查看哪个活动失败以及错误是什么。

答案 1 :(得分:1)

ETL是提取转换并加载,而ADF不会进行任何转换(使用ADF可以通过使用SQL语句或Proc进行转换,但是在ETL中基本的提取逻辑是开箱即用的。) / p>

如果您要从中选择一个,则完全取决于您    要求。

  • 如果转换逻辑很复杂,请使用ETL

  • 如果要处理大量数据,请使用ADF

  • 根据使用情况收取ADF费用,但SSIS附带许可证。

  • 如果您的数据位于内部部署中,建议您使用ETL

  • ETL的性能完全取决于您的本地计算机
    配置,而对于ADF,您不必担心
    性能。

答案 2 :(得分:0)

如果您的ETL简单易于转换 - 请使用Data Factory替换。 如果他们需要复杂的逻辑,请使用SSIS 换句话说,如果转换逻辑可以通过配置实现,那么Data Factory是最好的。 如果它需要编写代码和编程技能,SSIS是正确的工具。

可能有助于其他人的一些链接(您很可能已经做出决定)

"Azure Data Factory and SSIS compared"

  

将ADF视为SSIS的补充服务,主要用途   案件仅限于廉价处理云中的大数据。

从sqlbits下载Azure_Data_Factory_vs_SSIS article

答案 3 :(得分:0)

使用SSIS进行丰富的转换,使用ADF处理大数据工作量和规模。在云中执行SSIS包应该没有问题。这是一个提速换班的方案。您无需租用Compute,而是租用Compute。

如果您不熟悉触发器,那么调度就不会成为问题,就像SSMS一样,您会获得一个类似的界面来调度ADF上的内容

但是我宁愿拭目以待,如果我有大量的本地投资。