主页 > 新闻资讯 > Spark开发:Spark大数据开发编程示例

Spark开发:Spark大数据开发编程示例

作者:张老师 浏览次数: 2020-02-11 18:13
大数据开发人员,根据企业大数据处理的需求,进行大数据平台系统的搭建,比如说Hadoop,比如说Spark,而不同的大数据处理框架,采取不同的编程语言和编程模型,这就需要技术开发人员要掌握相关的技术。今天我们以Spark开发为例,来分享一下Spark大数据开发当中的一些编程示例。

Spark框架的核心思想,还是基于分布式架构,并且计算模式继承了MapReduce,并在此基础之上进行了扩展,支持更多的计算模式,以满足更多的大数据应用场景需求。

Spark开发

Spark程序架构,严格来说还是按照分布式架构来的,所有Spark开发,严格来说属于分布式编程。Spark程序工作时通常最少2个进程,有且只有两个角色driver和executor。

Spark程序开发的流程,一般有以下三个步骤:

1、本地ide开发逻辑,并使用local[*]进行调试

2、部署集群使用spark-client进行测试(可能没有)

3、部署集群使用spark-cluster实际部署

一般开发一个spark程序都要走上面的3个步骤,但是有些非常奇怪的现象是,步骤1没问题,但是实际到集群部署,到了2和3就出错,这是为什么呢?

主要的原因是因为读取的配置参数和预期不符合,常见错误和问题:

submit提交后出现

java.lang.NullPointerException

Not Serializable

另外,Spark程序模型实质是分布式编程,两个角色driver和executor之间如何实现信息传递呢?

首先,信息收集到driver

通常都是用spark自己提供的action算子。

然后,信息下发到executor

这种情况很常见几乎每个程序都会用到,具体分为启动初始化时参数传递和允许中传递:

①利用闭包特性(高大上,驾驭有难度,各种跨进程rpc编程,分布式编程框架所使用,缺点是由于jvm专用,一般在启动初始化时传递)

②利用--files传递配置文件,executor通过lazy读取

③利用spark的广播功能,注意可序列化,属于允许中传递

④利用spark-submit和yarn机制

关于Spark开发,以上就是给到大家的一个简单的编程示例介绍,作为大数据领域重要的计算框架掌握Spark开发是必须的技能,也建议大家在学习阶段予以重视,做到牢牢掌握。成都加米谷大数据,大数据技术知识分享,专业大数据培训班每月开班中,详情可联系客服了解!
热点排行
推荐文章
立即申请>>