Dr. Elephant:Hadoop和Spark的优化“神器”

简介:

美国加州软件公司Pepperdata的应用程序分析软件建立在Dr. Elephant(Dr. Elephant 是Hadoop和Spark的性能监视和调优工具)开源项目上。主要目的是让更多的Hadoop和Spark应用程序投入生产。

Pepperdata的应用程序分析器作为早期访问版本,基于去年推出的Apache开源项目Dr. Elephant。Dr. Elephant项目的贡献者包括Airbnb,Foursquare,Pepperdata等。

Dr. Elephant软件通过活动日志解析,适用于已知的良好部署规则,并提供有关Hadoop应用程序运行状况的报告。 这可能是试图运行多个Hadoop作业的团队的有效措施。通常,这样的团队几乎没有指导,需要深层次的Java编程技能来确定其Hadoop集群的效率。

加州LinkedIn公司的高级软件工程师Carl Steinbach表示,去年开源后,Apache Spark部署规则已被添加到Dr. Elephant中,支持Oozie和Airflow工作流调度程序。Spark历史记录器的增强功能现在也是包的一部分。

Steinbach说,实际上,Dr. Elephant承担了审查工作表现和建议调查工作的艰巨任务。Dr. Elephant使你不必学习如何调整工作,它会告诉你为什么需要作出改变。Steinbach说:“你甚至不需要Java工程师。”

基于Steinbach的经验,程序员调整Hadoop的能力是非常重要的。作为LinkedIn Hadoop开发团队的技术主管,Steinbach及其同事在许多Hadoop应用程序中投入使用。他们参加了许多代码审查会议,并提出了结合Dr. Elephant的一些最佳做法,所以更多的程序员可以在Hadoop的生产中取得成功。

及时修复问题
Steinbach表示,他已经在LinkedIn上看到了积极的效果,因为Dr. Elephant的使用已经扩大。这是因为它在大数据集群上运行的其他作业的上下文中提供了单独的作业配置文件。

Steinbach说:“你不仅可以看到你的工作,也可以看到其他人的工作。而且,如果看到工作出现问题,就会给我们带来一种积极的压力,然后进行及时地更正。在这里,‘做正确的事情’意味着对工作表现进行微调。”

Dr. Elephant规则或启发式在某种程度上类似于一年级医学院校的教科书,就像观察症状并提出有效的修复建议。Steinbach说。

例如,Dr. Elephant可能发现的性能瓶颈,包括MapReduce处理偏移问题或太多垃圾收集开销。它在第一种情况下的反应可能是重新分配数据,而在第二种情况下,响应可能是调整Java虚拟机中的垃圾收集设置。

Steinbach表示,自从开源以来,Dr. Elephant已经被应用到更大的大数据工作负载列表中,因此它已经涵盖了更多样化的Hadoop和Spark工作类型。 他指出,Pepperdata已经将补丁提供给了开源项目,并且能够提供重要的新功能。

跟踪群集瓶颈
像Dr. Elephant这样的工具有助于转发DevOps的概念,开发人员在确保应用运行良好方面发挥更大的作用。该工具不需要系统操作员和开发人员之间进行太多繁琐的交流。

Pepperdata公司的首席执行官Ash Munshi表示,应用程序分析工具使开发人员更好地了解实际工作中对DevOps的重要作用,他说,Pepperdata是基于Dr. Elephant的应用程序分析器提供服务,并且它提供了附加的上下文数据,以更好地传达在大数据作业正在运行时在大型集群上发生的情况。它加入了一个Pepperdata软件套件,其中包括一个集群分析器,容量分析器和一个策略执行器。

根据Munshi的说法,到目前为止,Hadoop性能跟踪的很多工具都面向系统运营商,但他表示,他预计开发人员的应用程序分析工具数量将会扩大。

本文转自d1net(转载)

相关文章
|
7月前
|
存储 分布式计算 Hadoop
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
322 79
|
分布式计算 Kubernetes Hadoop
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
460 6
|
分布式计算 资源调度 Hadoop
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
254 2
|
9月前
|
SQL 分布式计算 Java
Spark SQL向量化执行引擎框架Gluten-Velox在AArch64使能和优化
本文摘自 Arm China的工程师顾煜祺关于“在 Arm 平台上使用 Native 算子库加速 Spark”的分享,主要内容包括以下四个部分: 1.技术背景 2.算子库构成 3.算子操作优化 4.未来工作
1076 0
|
11月前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第27天】在大数据时代,数据湖技术凭借其灵活性和成本效益成为企业存储和分析大规模异构数据的首选。Hadoop和Spark作为数据湖技术的核心组件,通过HDFS存储数据和Spark进行高效计算,实现了数据处理的优化。本文探讨了Hadoop与Spark的最佳实践,包括数据存储、处理、安全和可视化等方面,展示了它们在实际应用中的协同效应。
491 2
|
11月前
|
分布式计算 监控 大数据
如何优化Spark中的shuffle操作?
【10月更文挑战第18天】
|
11月前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第26天】本文详细探讨了Hadoop与Spark在大数据处理中的协同作用,通过具体案例展示了两者的最佳实践。Hadoop的HDFS和MapReduce负责数据存储和预处理,确保高可靠性和容错性;Spark则凭借其高性能和丰富的API,进行深度分析和机器学习,实现高效的批处理和实时处理。
421 1
|
存储 分布式计算 监控
Spark如何优化?需要注意哪些方面?
【10月更文挑战第10天】Spark如何优化?需要注意哪些方面?
168 6
|
分布式计算 Java 大数据
大数据-92 Spark 集群 SparkRDD 原理 Standalone详解 ShuffleV1V2详解 RDD编程优化
大数据-92 Spark 集群 SparkRDD 原理 Standalone详解 ShuffleV1V2详解 RDD编程优化
145 0
大数据-92 Spark 集群 SparkRDD 原理 Standalone详解 ShuffleV1V2详解 RDD编程优化
|
SQL 分布式计算 大数据
大数据-91 Spark 集群 RDD 编程-高阶 RDD广播变量 RDD累加器 Spark程序优化
大数据-91 Spark 集群 RDD 编程-高阶 RDD广播变量 RDD累加器 Spark程序优化
159 0

相关实验场景

更多