首家大数据培训挂牌机构 股票代码:837906 | EN CN
【小牛原创】Spark SQL 从入门到实战 -- spark sql 1.6版本相关api
【小牛原创】Spark SQL 从入门到实战 -- 概述
Spark Streaming:大规模流式数据处理
spark RDD 相关需求
spark RDD 高级应用
Spark手册 - load&save
Spark手册 - debug
Spark手册 - cache&checkpoint
Spark手册 - RDD Action API
Spark手册 - Partitioner源码
Spark手册 - RDD Transformation API
Spark手册 - RDD的依赖关系
Spark手册 - RDD入门
Spark手册 - 远程debug
Spark手册 - 在IDEA中编写WordCount程序(3)
Spark手册 - 在IDEA中编写WordCount程序(2)
Spark手册 - 在IDEA中编写WordCount程序(1)
Spark手册 - 执行Spark程序
Spark手册 - 集群安装
20页PPT|视频类网站大数据生态 Spark在爱奇艺的应用实践
Spark机器学习入门实例——大数据集(30+g)二分类
Spark官方文档中文翻译:Spark SQL 之 Data Sources
使用Spark MLlib来训练并服务于自然语言处理模型
Spark知识体系完整解读
案例 :Spark应用案例现场分享(IBM Datapalooza)
最全的Spark基础知识解答
Spark在GrowingIO数据无埋点全量采集场景下的实践
Apache Spark探秘:三种分布式部署方式比较
Apache Spark探秘:多进程模型还是多线程模型?
Apache Spark探秘:实现Map-side Join和Reduce-side Join
Apache Spark探秘:利用Intellij IDEA构建开发环境
spark on yarn的技术挑战
Apache Spark学习:将Spark部署到Hadoop 2.2.0上
Hadoop与Spark常用配置参数总结
基于Spark Mllib,SparkSQL的电影推荐系统
spark作业调优秘籍,解数据倾斜之痛
Spark入门必学:预测泰坦尼克号上的生还情况
小牛学堂浅谈基于Spark大数据平台日志审计系统的设计与实现
【Hadoop Summit Tokyo 2016】使用基于Lambda架构的Spark的近实时的网络异常检测和流量分析
Spark编程环境搭建经验分享
Spark技术在京东智能供应链预测的应用
spark中textFile、groupByKey、collect、flatMap、map结合小案例
Spark中DataFrame的schema讲解
深度剖析Spark分布式执行原理
【Spark Summit East 2017】从容器化Spark负载中获取的经验
内存分析技术哪家强?Spark占几何
Spark系列之一:Spark,一种快速数据分析替代方案
6种最常见的Hadoop和Spark项目
Hadoop vs Spark
Hadoop与Spark常用配置参数总结
Spark RPC通信层设计原理分析
Spark Standalone架构设计要点分析
Spark UnifiedMemoryManager内存管理模型分析
网易的Spark技术分享

Spark手册 - 执行Spark程序

于2017-06-16由小牛君创建

分享到:


1.  执行Spark程序

1.1.   执行第一个spark程序

/usr/local/app/spark-2.1.0-bin-hadoop2.6/bin/spark-submit   \

--class org.apache.spark.examples.SparkPi   \

--master spark://mini1:7077 \

--executor-memory 1G \

--total-executor-cores 2 \

/usr/local/app/spark-2.1.0-bin-hadoop2.6/examples/jars/spark-examples_2.11-2.1.0.jar   \

100

 

该算法是利用蒙特·卡罗算法求PI

1.2.   启动Spark Shell

spark-shellSpark自带的交互式Shell程序,方便用户进行交互式编程,用户可以在该命令行下用scala编写spark程序。

1.2.1.   启动spark shell

/usr/local/app/spark-2.1.0-bin-hadoop2.6/bin/spark-shell   \

--master   spark://mini1:7077,mini2:7077,mini3:7077 \

--executor-memory 812m \

--total-executor-cores 2

 

 

参数说明:

--master spark://mini1:7077 指定Master的地址,可用逗号分割指定多台机器

--executor-memory 2g 指定每个worker可用内存为2G

--total-executor-cores 2 指定整个集群使用的cup核数为2

 

注意:

如果启动spark shell时没有指定master地址,但是也可以正常启动spark shell和执行spark shell中的程序,其实是启动了sparklocal模式,该模式仅在本机启动一个进程,没有与集群建立联系。

image.png

Spark Shell中已经默认将SparkContext类初始化为对象sc。用户代码如果需要用到,则直接应用sc即可

 

 

1.2.2.   spark shell中编写WordCount程序

1.首先启动hdfs

2.hdfs上传一个文件到hdfs://node1.edu360.cn:9000/words.txt

3.spark shell中用scala语言编写spark程序

sc.textFile("hdfs://mini1:9000//wordcount/in/*").flatMap(_.split("   "))

.map((_,1)).reduceByKey(_+_).saveAsTextFile("hdfs://mini1:9000/wordcount/out")

 

4.使用hdfs命令查看结果

hdfs dfs -ls   hdfs://mini1:9000//wordcount/out

 

 

说明:

scSparkContext对象,该对象时提交spark程序的入口

textFile(hdfs://mini1:9000//wordcount/in/*)hdfs中读取数据

flatMap(_.split(" "))map在压平

map((_,1))将单词和1构成元组

reduceByKey(_+_)按照key进行reduce,并将value累加

saveAsTextFile("hdfs://node1.edu360.cn:9000/out")将结果写入到hdfs

 

1.2.3.   spark shell测试master HA故障自动切换

 

spark集群状态

image.png

image.png

image.png

 

启动spark shell

/usr/local/app/spark-2.1.0-bin-hadoop2.6/bin/spark-shell   \

--master   spark://mini1:7077,mini2:7077,mini3:7077 \

--executor-memory 812m \

--total-executor-cores 2

val rdd=sc.makeRDD(Array("hello   you","hello me","hello world","hehe   haha"))

rdd: org.apache.spark.rdd.RDD[String] =   ParallelCollectionRDD[2] at makeRDD at <console>:24

 

rdd.collect

res2: Array[String] = Array(hello you,   hello me, hello world, hehe haha)

image.png

关闭mini1master

sbin/stop-master.sh

image.png

spark-shell上显示重连信息

image.png

等待30s左右,mini3被切换成alive master

image.png

继续运行任然可以得到结果

image.png