怎么进行Spark WC开发与应用部署的分析

本篇文章给大家分享的是有关怎么进行Spark WC开发与应用部署的分析,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Spark WordCount开发
创建的是maven工程,使用的依赖如下:本地执行,输出结果如下:本地执行,输出结果如下:本地执行,输出结果如下:上面的方式其实都是本地执行的,可以把我们的应用部署到Spark集群或Yarn集群上,前面的代码注释也有提到这一点,就是关于Spark作业执行的问题:local的多种情况可以自己测试一下。这里只测试部署standalone和yarn-cluster两种模式,实际上yarn-client也测试了,不过报异常,没去折腾。注意用的是Scala的代码。其实很显然,这里使用的是Spark离线计算的功能(Spark Core)。将前面的scala版本的代码修改为如下:主要是做了两处的修改,一是注释掉setMaster("local"),因为现在不是本地跑了,另外是数据来源,选择的是HDFS上的数据文件。需要注意的是,要想让Spark集群认识ns1(我的Hadoop集群是HA部署方式),其实有两种方式,一种设置环境变量HADOOP_CONF_DIR,但我测试的时候不生效,依然是无法识别ns1;另外一种是需要在Spark的配置文件spark-defaults.conf中添加spark.files /home/uplooking/app/hadoop/etc/hadoop/hdfs-site.xml,/home/uplooking/app/hadoop/etc/hadoop/core-site.xml,即指定Hadoop的配置文件地址,Hadoop HA的配置,就是在这两个文件中进行的配置。我采用第二种方式有效。上面准备工作完成后就可以将程序打包了,使用普通的打包或者maven打包都可以,注意不需要将依赖一起打包,因为我们的Spark集群环境中已经存在这些依赖了。关于应用的部署,准确来说是submit,官方文档有很详细的说明,可以参考:http://spark.apache.org/docs/latest/submitting-applications.html先编写下面一个脚本:然后执行下面的命令:因为在程序代码中已经添加 香港云主机了collect Action算子,所以运行成功后可以直接在控制台中看到输出结果:然后也可以在spark提供的UI界面中看到其提交的作业以及执行结果:先编写下面一个脚本:执行如下命令:可以通过yarn提供的Web界面来查看其提交的作业情况:但是找了日志也没有找到输出的统计结果,所以这种情况下,数据结果的落地就不应该只是输出而已了,可以考虑其它的持久化存储。总体而言,对比MapReduce,仅仅从Spark Core来看,速度真的是有非常大的提高。参考下面的图示:然后,下面是我跑的一个wordcount任务,在spark history server中查看其详细信息,就很容易理解上面所说的stage划分、宽依赖、窄依赖,相信会有一个相对比较清晰的认识:
以上就是怎么进行Spark WC开发与应用部署的分析,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注开发云行业资讯频道。

相关推荐: springboot2.0.6中SpringApplication实例初始化

这篇文章主要介绍“springboot2.0.6中SpringApplication实例初始化”,在日常操作中,相信很多人在springboot2.0.6中SpringApplication实例初始化问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 09/23 18:31
下一篇 09/23 18:31

相关推荐

发表评论

您的电子邮箱地址不会被公开。