从高成本数据仓库将任务卸载有时被看做是Hadoop商用集群的首要目标。迁移提取、转换、加载(ETL)、查询以及报告工作并不能显著改变商业模式,但它可能会抑制数据仓库的增长和成本。
但是,即便进入Hadoop时代已经有些年头了,将任务迁移至分布式平台并非易事。能够找出哪些任务在不给大量开发人员带来麻烦的情况下进行迁移,有助于数据管理人员做出***选择。
一款来自Cloudera公司的Hadoop工具Navigator Optimizer可能是个不错的选择。它源于该公司在2015年收购的Xplain.io,这家公司试图将某些与SQL类似的数据库优化功能引入Hadoop。该产品于今夏开始正式供应。
“该工具可以让人们查看那些正在其他平台上运行的查询,并可以查看它们将会如何在我们的Hadoop环境中表现,” Conversant的一名软件工程经理Peter Wojciechowski说,而Conversant是一家数字营销公司,它通过对大量数据的处理来呈现个性化的广告。
Conversant在查询中的表现
Conversant最初是将Hadoop用作数据的***着陆点,之后通过Pivotal Greenplum数据仓库进行处理以用于分析。团队使用Navigator已经能够将某些任务迁移至Hadoop和Apache Hive数据仓库以及Impala SQL查询环境。
“如今,核心的ETL和某些大型处理工作是在一个Hadoop集群上进行的,”Wojciechowski说,高度迭代的处理工作对于Hadoop来说是不错的目标,但Greenplum并未被取代。在他的公司里,Greenplum仍担当着重要的分析责任。但现在,其使用则更为精炼。
Wojciechowski说,“以前,Greenplum负责了所有的工作负载,但并不是所有工作负载都与其契合。现在,有了该工具,我们就能更加游刃有余,例如,我们可以判断什么才是适合在Hive中运行的。”
通过使用Optimizer,Wojciechowski和他的团队能够说出在Hive和Impla中查询将会如何更好的执行,这就如同是接受在新环境中查询是如何执行的指导是一样的。Hadoop工具在生产中还有着进一步的应用。Optimizer与Navigator协同工作会帮助你判断如何将工作负载查询进行分组,这样就能发现更多的重复并更有效的对集群进行利用,”他说。
像Navigator Optimizer之类的技术有助于揭示数据连接,这是一个SQL常见的特性,而它会对Hadoop造成阻碍,451 Research的分析师James Curtis如是说。“Navigator会在将任务迁移至Impala或Hive之前对已有工作进行分析,并对需要重做的连接数量进行估计,”他说。
对于该工具在任务迁移中的作用他表示认同,但他强调对查询的优化远比仅用于迁移有着更广泛的使用。“对于那些拥有数以千计查询的公司来说,优化查询并不是琐碎的工作,”Curtis说。
改变和提升
像Cloudera Navigator套件之类产品的可用性可以覆盖包括所有最困难迁移任务中的一项:即将主框架数据迁移至Hadoop生态系统。
为此,主框架和Hadoop数据转换公司Syncsort表示,它正在和Cloudera合作,通过将Navigator连接至其工具来追踪传统来源的数据沿袭以改善数据治理。这些传统来源不仅限于主框架,而是包括运行在中端系统上的数据仓库。
对于将关系型数据仓库任务迁移至Hadoop来说,Cloudera并不是可以提供工具唯一厂商,这一领域是十分活跃的。
对于他们来说,独立的Hadoop分销竞争对手Hortonworks和MapR Technologies Inc.会提供相关的Hadoop工具,包括基于Apache Calcite的SQL优化工具,而Apache Calcite是一款包括了一个SQL解析器和查询规划器的开源项目,而它刚刚迎来它的***个生日。
而且,数据管理服务公司Bitwise最近推出了Hydrograph,这是一款旨在简化卸载ETL工作负载到Hadoop和其他大数据框架的工具。Bitwise的软件是与客户Capital One一起开发的,它基于的开发环境使用了XML接口,因此任务可以迁移至不同的Hadoop框架,例如从MapReduce到Tez,只需要少量重新配置。
如果这些Hadoop工具能够让迁移设计更上一层楼并不断探索试错,则会改善对Hadoop的提升。对于企业中Hadoop和它的生态系统组件来说,在平台上高效地获取数据仓库工作仍是一项重要步骤。