了解Apache Spark故障和瓶颈(预览)

译自:https://dzone.com/refcardz/understanding-apache-spark-failures-and-bottleneck?chapter=2

(written by Rishitesh Mishra  Principal Engineer Unravel Data)

翻译:by Janvn in Aug.18.2019

 

前言:

当一切按计划进行时,在Apache Spark中编写和理解应用程序很容易。但是,有时调整良好的应用程序可能会因数据更改或数据布局更改而失败 - 或者到目前为止运行良好的应用程序可能因资源不足而开始表现不佳。因此了解底层运行组件(如磁盘使用情况,网络使用情况,竞争情况等)非常重要,这样我们就可以在出现问题时做出明智的决策。

 

Introduction to Spark Performance

Challenges of Monitoring and Tuning Spark

正文:

(1)Spark性能简介

 Apache Spark是一个功能强大的开源分布式计算框架,用于对商用计算集群上运行的大数据应用进行可扩展和高效的分析。 Spark提供了一个框架,该框架用于编写具有内置数据并行性和容错能力的整个集群,同时隐藏所使用的分布式系统底层复杂性。

Spark的大量垂直行业,应用程序和用例已经被企业大量采用。 Spark提供速度(内存执行速度比Hadoop MapReduce快100倍),并通过统一的高级API轻松访问所有Spark组件(在R,Python,Scala和Java中编写应用程序)。 Spark还处理各种工作负载(ETL,BI,分析,ML,图形处理等),并执行交互式SQL查询,批处理,流数据分析以及数据管道。Spark也将替换MapReduce作为Hadoop的处理引擎组件。

 一切按计划进行时,Spark应用程序易于编写且易于理解。但是,当Spark应用程序开始减速或失败时,它变得非常困难。有时,经过良好调整的应用程序可能会因数据更改或数据布局更改而失败。有时,到目前为止运行良好的应用程序由于资源匮乏而开始表现不佳。这些问题一直存在。

不仅理解Spark应用程序非常重要而且理解它的底层运行组件(如磁盘使用,网络使用,竞争情况等)也很重要,以致于我们可以在事情变得糟糕时做出明智的决定。

(2)监控和调优Spark的挑战

在Spark上构建大数据应用程序,从数据中获利并从数据中提取业务价值已成为大型企业的默认标准。

虽然Spark为开发人员和数据科学家提供了极大的易用性,但部署,监控和优化生产应用程序可能是一项非常复杂和繁琐的工作。这些工作为负责整体管理大数据应用(需同时解决了SLA管理,MTTR,DevOps生产力等方面的许多业务需求)的运营团队(和最终用户)带来了重大挑战。

Apache Ambari和Cloudera Manager等工具主要提供系统视图点来管理集群并测量与服务运行状况/性能和资源利用率相关的指标。它们仅为独立作业提供高级指标,并指向YARN到或Spark Web UI中的相关部分,以进行进一步的调试和故障排除。解决与大数据应用程序missed SLAs,性能,故障和资源利用率相关的问题的指导路径在生态系统中仍然存在巨大差距。

这是了解Apache Spark Failures和Bottlenecks Refcard的预览。要阅读整个Refcard,请从上面的链接下载PDF。

PDF: https://dzone.com/storage/assets/12328706-dzone-refcard309-apachespark.pdf

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值