繁体   English   中英

Spark可以替换ETL工具

[英]Can Spark Replace ETL Tool

现有流程 - 原始结构数据被复制到Redshift的暂存层。 然后使用Informatica,Telend等ETL工具对Datamart / datawarehouse的Fact and Dimension表进行增量加载。 所有连接都发生在数据库层中(ETL将查询推送到DB中) - Spark可以替换ETL工具并执行相同的处理并将数据加载到Redshift中吗? - 这种架构有哪些优点和缺点?

我已经在项目上进行了大量工作,将现有的ETL工作迁移到了过去4年的火花中。

ETL工作的问题如下

  1. 他们没有给我们严格的SLA。 作业共享相同的资源池,因此优先级很难。 每个人都把自己的工作视为business critical

  2. 另一个重要问题是基于ETL的工作成本很高,因为我们向提供商付款。

  3. 规模是另一个重要问题。 我们需要大规模的ETL,我们觉得它太贵了。

因此,我们将所有ETL迁移到了火花作业。 Spark和hadoop都是开源的,除了计算之外我们没有任何额外的成本问题。

SQL的Spark支持随着时间的推移而显着改善。 您可以在同一数据帧上运行ML / Graph查询和普通ETL。 Spark连接速度很快,可以针对不同的数据集进行优化。 您可以对转换和连接进行更细粒度的控制。

我们首先使用Long运行集群,支持spark和其他大数据工具。 我们统一了平台,以便所有客户都可以使用它。 我们慢慢地将所有ETL工作迁移到了工作岗位上。

我们确实使用Redshift进行报告,但是从数据,联接,管理传入数据以及将现有快照合并到火花中的所有重要提升。

通过远离现有的ETL作业并将它们迁移到Spark,我们节省了数百万美元。

我的两个便士是,最终火花,蜂巢大数据,hadoop最终将超过ETL的工作。 我不是说ETL会被剔除,但绝对是开源解决方案将成为这个领域的主导力量。

我是否知道用Spark替换Informatica的原因。 Informatica BDM 10.1版本附带Spark执行引擎,它将Informatica映射转换为Spark等效(Scala代码)并在集群上执行此操作。 另外,在我看来,Spark更适合不在中间的数据,在ETL的情况下,数据从转换到转换!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM