当前位置:CIO频道技术探讨 → 正文

Ebates希望云数据湖能摆脱ETL困境

责任编辑:cres 作者:Thor Olavsrud |来源:企业网D1Net  2018-09-14 10:51:07 原创文章 企业网D1Net

几年前,内部部署的数据湖是Ebates针对商业智能(BI)基础设施方面的问题所给出的答案。如今,即席查询的需求激增正在干扰核心ETL的工作负载。
 
设法将数据湖用作数据仓库,这是公司在数据湖方面经常遇到问题的做法之一。Gartner的研究副总裁Merv Adrian表示,这无异于“如果这不管用,这就是一个糟糕的想法”。
 
Ebates的分析副总裁Mark Stange-Tregear对这个问题耳熟能详。Stange-Tregear大概在四年前加入Ebates,那时该公司除了单个SQL服务器和少数几个数据工程师采用主要生产数据库的副本外并没有多少商业智能基础设施。他们在提取,转换和加载(ETL)的过程中感到十分吃力。
 
Stange-Tregear说:“ETL周期曾运行了28个小时。团队成员却无法定期获得所需的报告或信息。我们达到了并发限制。这显然很不稳定。”
 
从成本的角度和Ebates对未来的愿景来看,构建在Hadoop集群上的数据湖似乎是合适的解决方案。Ebates能将所有数据存放在一个地方并使其可用,而无需重新混合并处理多个数据孤岛。
 
Stange-Tregear的团队用Python编写了核心ETL流程,不到几个月的时间该团队就能够从新的数据湖中获取核心的执行报告。
 
Stange-Tregear说:“我们从那里得到了高管的支持。我们以更加快速且高效的方式获取报告。我们开始对所有其它的东西进行迁移。这个结尾日志很长,但最终我们关闭了所有SQL 服务器。”
 
ETL的瓶颈
 
Stange-Tregear解释说,在Ebates单一的Hadoop集群中有两个不同的数据区域,一个是公司所说的数据湖:这是一个非常干净的生产数据库的副本。团队对这些数据所做的转换或清理工作没有太大作用:数据湖中的表格看起来与生产数据库中的数据几乎完全相同,Stange-Tregear这样说道。
 
集群的另一部分是Ebates所指的数据仓库,这是大多数繁重报告所使用的已经得到了清理,合理化,连接的数据。
 
Stange-Tregear说:“我们将数据湖中的数据预先聚合到数据仓库中。我们直接从数据湖做报告,但如果我们做一些预处理,性能就可以得到提升。”
 
这个商业智能基础设施曾是Stange-Tregear刚刚接受Ebates职位时针对这个难题所给出的答案。但随着Hadoop集群的使用量激增,新的难题渐渐增多。
 
Stange-Tregear说:“在某个时刻,如果你在同一台机器上做多种不同类型的工作,你就会遇到资源竞争。如果你在磁盘级别没有资源竞争,你能进行的读写操作十分有限。”
 
Hadoop集群的好处之一是可以添加更多计算机来提高处理能力。Stange-Tregear说,你可以用这种办法来掩盖问题,但这不是长久之计,因为问题始终存在。
 
他解释说:“因为我们有很多针对集群的临时工作负载,这是相对不受控制且不可预测的。如果有人进行了大量的连接(join),集群将会接受这种做法并开始进行处理,这可能会干扰你的ETL工作负载、按预定时间发送的电子邮件和例行报告,最终导致集群崩溃。”
 
Stange-Tregear指出,如今的Hadoop技术非常稳定:“你必须对集群做一些十分令人讨厌的事情才能使它崩溃。但我们现在每天都做几次这样的事情。”
 
有两种显而易见的方法可以解决这个问题。一种方法是尝试找到那些碍事的工作负载类型,让人们不要提交这些负载。
 
Stange-Tregear说:“在努力向所有人提供商业智能的同时,这是很难做到的。其实你并不想控制它,但我想控制它。我们无法消除那些有问题的添加物。可能我的分析团队才是主要的问题,而且当你要导致了这样的负载时,这是不可预测的。”
 
另一种方式(也就是Gartner的Adrian建议的那种方法)是将ETL处理和即席查询方面的工作负载分给不同的硬件。Stange-Tregear承认,这让人难以接受,因为这好像违背了最初的愿景,回到了孤立的数据基础设施。但他指出,通过单独的ETL集群和数据湖集群,Ebates可以将数据从一个集群复制到另一个集群,而不会增加太多的ETL开销。
 
云端的ETL
 
Ebates现在面临的决策是,是否要建立第二个内部部署的Hadoop集群来进行临时报告,或者将第二个集群置于云端。
 
Gartner的Adrian补充道:“云方面的问题往往比数据湖方面的问题更重要,迁入云端往往更有意义。这是运营支出(OpEx)而不是资本支出(CapEx)。有人对此进行备份和改进。这是一个巨大的优势。对数据科学方面的工作负载来说,也许最大的优势在于云,我能够在云中利用计算和存储分离的优势。”
 
Adrian表示,对于生产工作而言,云的好处并不那么明确。生产环境大部分时间都处于运行状态,这就意味着它一直在计费,云的成本优势也不是很大。
 
雅虎的开发,用户数据和分析副总裁,AtScale的创始人兼技术副总裁David Mariani表示,阻碍云端的HDFS使用Hadoop的一个原因是它并不具备真正的成本效益。
 
Mariani说:“数据存储在节点中。计算和存储是挂钩的。你不能关闭那些节点。这些节点全天候运行,这就意味着这些节点一直在计费。”
 
AtScale的答案是将数据直接存储在Amazon S3中,AtScale的中间件将数据连接到所需的Tableau等计算和商业智能工具。Stange-Tregear说,这正是开放云端,以此作为解决Ebates需求的强有力的竞争产品。
 
他解释说:“我们希望能够直接查询数据集。我们可以在不增加额外负载的情况下直接查询S3 bucket吗?”
 
Stange-Tregear说:“这是爬,走,跑的问题。我们的处理器基于内部部署的解决方案。我们首先做什么?显而易见的解决方案是首先将报告转换为云解决方案。如果这么做可行的话,我们现在要做的第二步是将所有的ETL 处理迁移到云端吗?如果事物的报告方面凑效的话,我们可能会朝着将ETL迁移到云中的方向努力。”

关键字:CIO 数据湖 ETL

原创文章 企业网D1Net

Ebates希望云数据湖能摆脱ETL困境 扫一扫
分享本文到朋友圈

关于我们联系我们版权声明友情链接广告服务会员服务投稿中心招贤纳士

企业网版权所有©2010-2018 京ICP备09108050号-6

^