在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
Spark是UC Berkeley AMP lab所开源的类HadoopMapReduce的通用的并行计算框架,Spark基于map reduce算法实现的分布式计算,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是Job中间输出和结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的map reduce的算法。
一、’什么是 Spark
Spark 是基于内存计算大数据分析引擎,提高了在大数据环境下数据处理的实时性。Spark 仅仅只涉及到数据的计算,没有涉及到数据的存储。
二、Spark HA 高可用部署
*Spark HA 解决 Master 单点故障的两种方案:
1.基于文件系统的单点恢复(主要用于开发或测试环境)
2.基于 zookeeper 的 Standby Masters(用于生产模式)
*基于 zookeeper 的 Spark HA 高可用集群部署
(1)im spark-env.sh
注释掉 export SPARK_MASTER_HOST=hdp-node-01
(2)在 spark-env.sh 添加 SPARK_DAEMON_JAVA_OPTS,内容如下:
spark.deploy.recoveryMode:
恢复模式(Master 重新启动的模式)有三种:
(1)ZooKeeper
(2) FileSystem
(3)NONE
spark.deploy.zookeeper.url:ZooKeeper 的 Server 地址
spark.deploy.zookeeper.dir:保存集群元数据信息的文件、目录。包括 Worker,Driver 和 Application。
注意:
在普通模式下启动 spark 集群,只需要在主机上面执行 start-all.sh 就可以了。在高可用模式下启动 spark 集群,先需要在任意一台节点上启动 start-all.sh命令。然后在另外一台节点上单独启动 master。命令 start-master.sh。
三、Spark-Shell
读取本地文件
1.运行 spark-shell --master local[N](N 表线程数)
2.编写 scala 代码
sc.textFile("file:///root///words.txt")
.flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).collect
读取 HDFS 上数据
1.整合 spark 和 HDFS,修改配置文件 spark-env.sh
export HADOOP_CONF_DIR=/opt/bigdata/hadoop-2.6.4/etc/hadoop
2.启动 hdfs,然后重启 spark 集群
3.向 hdfs 上传个文件
4.在 spark shell 中用 scala 语言编写 spark 程序指定具体的 master 地址
1.执行启动命令:
spark-shell \
--master spark://hdp-node-01:7077 \
--executor-memory 1g \
--total-executor-cores 2
若没指定 master 地址则默认本地模式
2.编写 scala 代码
以上就是“科普Spark,什么是Spark”的全部内容,大家都了解了吗?
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
互联网医疗大数据商业变现应用
互联网医疗大数据商业变现应用,2018年《国家健康医疗大数据标准、安全、服务管理办法(试行)》正式出炉,与以往政策不同,该规定不再停留于宏观指导层面,而是对医疗大数据标准、安全、服务中的权责利进行了详细规定。
8398
2019-04-18 18:12:28
大数据笔记之分布式文件存储系统
现在是大数据的时代,也是数据爆炸的时代,如何处理大数据的存储成为了摆在人们面前的难题,因此分布式文件存储系统应用而生。同时分布式文件存储系统在大数据面试中,也是一个常常可以见到的考点之一。本文为大家梳理了相关的大数据知识点,感兴趣的小伙伴可以看一看。
6542
2019-11-05 16:26:09
大数据有哪些工作岗位?都需要掌握哪些技能?
随着大数据时代的来临,大数据的应用已经深入我们生活的方方面面。现在,各行各业对大数据人才的需求都是空前巨大的。那么,大数据有哪些工作岗位?都需要掌握哪些技能呢?目前,大数据工程师工作领域大致可分为五类:离线相关工作岗位、Storm实时计算工作岗位、Spark内存计算工作岗位、Flink 实时计算工作岗位和机器学习相关岗位。下面我们来看看从事以上岗位要学习掌握的技能。
7705
2020-03-12 12:42:17
大数据智能与人工智能的联系和区别
现在进入了互联网时代,提出人工智能概念,人工智能已经在多个领域中实践,比如无人驾驶、图像识别、语音识别等领域。大数据不断采集、沉淀、分类等积累数据,人工智能基于大数据的支持和采集,运用于人工设定的特定性能和运算方式来实现。
6797
2020-07-27 16:48:30
学大数据一定要会Java开发吗?
学大数据必学Java,当前大数据领域的岗位主要集中在开发、分析、运维三大领域,其中大数据开发对于Java语言的依赖程度比较高,如果从事大数据开发岗学习Java语言很有必要。
4553
2021-03-29 18:15:02