LinkedIn开源Dr.elephant,Hadoop爽了!

数据观  •  扫码分享
我是创始人李岩:很抱歉!给自己产品做个广告,点击进来看看。  

在开源项目方面,LinkedIn一直在为全世界的数据工作者做出贡献。近日,为了提高开发人员的Hadoop和spark工作效率,LinkedIn再次做出贡献,开源了其一款工具“大象医生(Dr.elephant)”。

LinkedIn开源Dr.elephant,Hadoop爽了!

Hadoop这只象需要帮助

Hadoop的标志是一只黄色的小象,这也是LinkedIn这款工具名字的源来所在。“大象医生”是LinkedIn推出的一款Hadoop和Spark性能调节工具。根据LinkedIn软件工程师Akshay Rai在其微博中的介绍,这款工具将更好的帮助用户理解、分析并提高他们的工作效率。

Hadoop这只象虽然强,但也需要帮助

Hadoop是在大数据浪潮中催生的一个强大的分布式系统开源软件基础构架,其常常被用于开发分布式程序,利用集群进行高速本地计算和存储服务。Hadoop以一种一种可靠、高效、可伸缩的方式进行数据处理,并且依赖于社区服务,成本较低,因此至今火爆非常。

而Spark则是一种与Hadoop相似的开源集群计算环境,但是相比Hadoop,spark在工作负载方面的表现更为优越,也被认为是未来取代Hadoop的关键。但实际上,spark是一种对Hadoop的补充,可用来构建大型、低延迟数据分析应用程序。

Spark在开源软件中的应用场景十分宽泛

Hadoop和Spark在开源数据分析处理中占据着举足轻重的地位。作为大数据行业的先行者,LinkedIn对此两款软件的依赖也非常严重。LinkedIn每天运行约10000 Hadoop和Spark工作。而且随着公司业务的增长,Hadoop和Spark被应用于更多的数据分析业务。因此,开发一款可以提高工作效率的工具也就成了必要的事情。

LinkedIn在开源项目方面非常有实力

当利用Hadoop完成大量的分布式存储和大数据集的处理时,多个组件之间的相互作用就变得尤为重要。因此,LinkedIn开发这款工具的目的就是要确保每个组件的执行,并进行相关的优化。

贴切用户的名医

大象医生这款工具可以优化底层硬件资源、网络基础设施、操作系统和其他的组件,这一系列的优化设施会帮助用户更好的控制在集群上运行的工作。

大象医生这款工具很好的帮助提升了Hadoop的作业运营指标,通过分析和介绍帮助用户能够采用一种更为简洁的方法搭建构架。该工具也使得Hadoop的工作变的更容易调整,降低开发难度,提升开发人员的生产力,提高集群工作效率。

大象医生的指点方法也非常人性化,其会对Hadoop和Spark可配置的工作进行分析,基于规则对工作如何进行提供启发式的见解,利用得出的结果提供优化工作的方案,从而更有效的执行。

在LinkedIn,大象医生已经被公司的开发人员加入了所有的开发周期,成为其中的一部分。作为一种强制性的流程,大象医生对开发任务起到了很好的监督作用,如果开发任务成功,大象医生会提供一个绿色信号表示通过。

在开发过程中遇到的任何问题,所有员工都需要询问大象医生的意见。并且,LinkedIn公司鼓励员工利用大象医生解决问题,优化开发流程和解决方案,获取大象医生的绿色信号。这成为了LinkedIn的一种文化,并且这种方式也帮助了很多员工提高了工作效率。

绿色大象代表着成功

通常,在优化Hadoop工作的过程中常常遇到一些障碍。一个是用户不知道如何开始执行,并且不能预估资源消耗;再者,需要审议的信息被分散在多个系统信息之中,收集信息难度较大。面对这些常出现的问题,大象医生作用更为明显。

大象医生提供一个资源管理器,该管理器会提供高层次的信息并且记录生成应用的主日志。除此外,Hadoop过程中的每个任务会有一个相应的记录器,不同类型的任务会由不同的记录器记录并且生成相应的任务日志。

大象医生会收集用户的元数据

大象医生会从资源管理器为用户列出其最近成功或失败的应用。该工具可以收集每个用户的元数据,为每个应用程序的工作平台配置任务以及历史记录并且接连服务器。

一旦其中有元数据发生问题,大象医生会对此进行诊断并生成报告进行标记。这些标记会依据潜在性能问题的严重性分为5个等级,大象医生会根据等级对用户分别进行提示,最终以启发式的方法促成用户进行整体的修改至最终任务完成。

身手全面的家庭医生

大象医生诞生于2014年中期。在其诞生前的几年,LinkedIn的Hadoop团队一直在为他们的员工进行工作流的分析,为他们提供调整意见并批准运行生产等。但是随着用户量的增长,这一流程变得越来越难,这也是促进LinkedIn下定决心自动化取代该流程的原因所在。于是大象医生应运而生。

大象医生像家庭医生一样体贴

大象医生在LinkedIn非常受欢迎,人们喜欢他的简单。大象医生像一个家庭医生一样,通过简单的诊断可以解决工作中80%的问题。不同于普通的集群级别数据统计,大象医生更多的聚焦于为帮助Hadoop用户理解和提升工作水平而提供意见。

大象医生像一个真正的医生一样诊断问题的根源,通过简单的流程图为用户剖析问题。此外,你还可以通过大象医生添加很多启发式的规则,使其变得更加贴合个人使用习惯。

据悉,LinkedIn已经将大象医生应用于多个方面,比如监测流对集群的影响,理解流运行缓慢的原因,如何调整提高流量,与之前的任务比较执行情况,流程故障排查等。

Hadoop和Spark都将受益于大象医生

此外,除了增加改进了启发式算法、扩展工具和新的工作类型以外,LinkedIn还更新了更多的功能。比如大象医生可以根据具体工作对其进行实时的指标化建议,工作集群资源使用情况可视化呈现,以及更好的调整调度以便支持更多的Spark。

大象医生的开源对于数据工作者来讲无疑是一件幸福的事情,准备好迎接他吧。

作者丨贾凯强

责任编辑:王培

随意打赏

提交建议
微信扫一扫,分享给好友吧。