现有的流程原始结构数据被复制到Redshift的登台层。然后使用Informatica、Telend等ETL工具对数据仓库/数据仓库的事实表和维度表进行增量加载。所有的连接都发生在数据库层( ETL将查询推到数据库中)- Spark可以取代ETL工具并进行相同的处理并将数据加载到Redshift中吗?-这种架构的优点和缺点是什么?
发布于 2019-08-18 19:22:16
在过去的4年里,我在将现有的ETL工作迁移到spark的项目上做了大量的工作。
ETL作业的问题如下
,
business critical
。因此,我们将所有的ETL迁移到spark作业。Spark和hadoop都是开源的,除了计算之外,我们没有任何额外的成本问题。
随着时间的推移,Spark对SQL的支持得到了极大的改进。您可以在同一数据框上运行ML/Graph查询和普通ETL。Spark joins速度很快,可以针对不同的数据集进行优化。您可以对转换和连接进行更细粒度的控制。
我们首先使用了一个长期运行的集群,并支持spark和其他大数据工具。我们统一了平台,这样所有的客户都可以使用它。我们慢慢地将所有的ETL作业迁移到spark作业。
我们确实使用Redshift进行报告,但所有繁重的工作都是在spark中完成的,包括从数据中发现洞察力、连接、管理传入数据并将其与现有快照合并。
通过将现有的ETL工作转移到Spark,我们节省了数百万美元。
我的两个便士是,最终火花,蜂巢大数据,hadoop最终将超过ETL作业。我并不是说ETL将被剔除,但开源解决方案肯定会成为该领域的主导力量。
发布于 2016-11-29 14:25:24
我想知道用Spark替换Informatica的原因。Informatica BDM 10.1版本附带Spark执行引擎,它将Informatica映射转换为Spark等效项(Scala代码)并在集群上执行。此外,在我看来,Spark更适合于非中间的数据,在ETL的情况下,数据从一个转换到另一个转换!
https://stackoverflow.com/questions/40812573
复制相似问题