spark入门(spark入门培训)
本篇文章给大家谈谈spark入门,以及spark入门培训对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、Spark从入门到精通3:Spark全分布模式的安装和配置
- 2、Spark从入门到精通7:Spark客户端之Spark Submit的使用
- 3、hadoop,spark入门得多久
- 4、Hudi + Spark3入门第一课
- 5、参加大数据开发培训要掌握哪些方面基础
Spark从入门到精通3:Spark全分布模式的安装和配置
Spark的安装模式一般分为三种:1.伪分布模式:即在一个节点上模拟一个分布式环境,master和worker共用一个节点,这种模式一般用于早大开发和测试Spark程序;2.全分布模式:即真正的集群模式,master和worker部署在不同的节点之上,一般至少需要3个节点(1个master和2个worker),这种模式一般用于实际的生产环境;3.HA集群模式:即高可用集群模式,一般至少需要4台机器(1个主master,1个备master,2个worker),这种模式的优点是在主master宕机之后,备master会立即启动担任master的职责,可以保证集群高效稳定的运行,这种模式就是实际生产环境中多采用的模式。本小节来介绍Spark的全分布模式的安装和陆汪竖配置。
安装介质:
jdk-8u162-linux-x64.tar.gz 提取码:2bh8
hadoop-2.7.3.tar.gz 提取码:d4g2
scala-2.12.6.tgz 提取码:s2ly
spark-2.1.0-bin-hadoop2.7.tgz 提取码:5kcf
准备3台Linux主机,按照下面的步骤在每台主机上执行一遍,设置成如下结果:
安装Linux操作系统比较简单,这里不再详细。参考:《 Linux从入门到精通1:使用 VMware Workstation 14 Pro 安装 CentOS 7 详细图文教程 》
编辑hosts配置文件:# vi /etc/hosts,追加3行:
测试主机名是否可用:
(1)使用ssh-keygen工具生成秘钥对:
(2)将生成的公钥发给三台主机:master、slave1、slave2:
(3)测试秘钥认证是否成功:
由于各个主机上的时间可能不一致,会导致执行Spark程序出现异常,因此需要同步各个主机的时间。在实际生成环境中,一般使用时间服务器来同步时间,但是搭建时间服务器相对较为复杂。这里介绍一种简单的方法来快速同步每台主机主机的时间。我们知道,使用date命令可以设置主机的时间,因此这里使用putty的插件MTPuTTY来同时向每一台主机发送date命令,以到达同步时间的目的。
(1)使用MTPuTTY工具连接三台主机,点击MTPuTTY工具的Tools菜单下的“Send script…”子菜单,打开发送脚本工具窗口。
(2)输入命令:date -s 2018-05-28,然后回车(注意:一定要回车,否则只发送不执行),在下面服务器列表中选择要同步的主机,然后点击“Send script”,即可将时间同步为2018-05-28 00:00:00。
使用陵启winscp工具将JDK安装包 jdk-8u144-linux-x64.tar.gz 上传到/root/tools/目录中,该目录是事先创建的。
进入/root/tools/目录,将jdk安装包解压到/root/training/目录中,该目录也是事先创建的。
使用winscp工具将Hadoop安装包 hadoop-2.7.3.tar.gz 上传到master节点的/root/tools/目录中,该目录是事先创建的。
进入/root/tools/目录,将hadoop安装包解压到/root/training/目录中,该目录也是事先创建的。
进入Hadoop配置文件目录:
(1) 配置hadoop-env.sh文件:
(2) 配置hdfs-site.xml文件:
(3) 配置core-site.xml文件:
(4) 配置mapred-site.xml文件:
将模板文件mapred-site.xml.template拷贝一份重命名为mapred-site.xml然后编辑:
(5) 配置yarn-site.xml文件:
(6) 配置slaves文件:
将master上配置好的Hadoop安装目录分别复制给两个从节点slave1和slave2,并验证是否成功。
第一次启动需要输入yes继续。
启动成功后,使用jps命令查看各个节点上开启的进程:
使用命令行查看HDFS的状态:
使用浏览器查看HDFS的状态:
使用浏览器查看YARN的状态:
(1) 在HDFS上创建输入目录/input:
(2) 将本地数据文件data.txt上传至该目录:
(3) 进入到Hadoop的示例程序目录:
(4) 执行示例程序中的Wordcount程序,以HDFS上的/input/data.txt作为输入数据,输出结果存放到HDFS上的/out/wc目录下:
(5) 查看进度和结果:
可以通过终端打印出来的日志信息知道执行进度:
执行结束后可以在HDFS上的/out/wc目录下查看是否有_SUCCESS标志文件来判断是否执行成功。
如果执行成功,可以在输出目录下看到_SUCCESS标志文件,且可以在part-r-00000文件中查看到wordcount程序的结果:
由于Scala只是一个应用软件,只需要安装在master节点即可。
使用winscp工具将Scala安装包上传到master节点的/root/tools目录下:
进入/root/tools目录,将Scala安装包解压到安装目录/root/training/:
将Scala的家目录加入到环境变量PATH中:
使环境变量生效:
输入scala命令,如下进入scala环境,则证明scala安装成功:
我们先在master节点上配置好参数,再分发给两个从节点slave1和slave2。
使用winscp工具将Spark安装包上传到master节点的/root/tools目录下:
进入/root/tools目录,将Spark安装包解压到安装目录/root/training/下:
注意:由于Spark的命令脚本和Hadoop的命令脚本有冲突(比如都有start-all.sh和stop-all.sh等),
所以这里需要注释掉Hadoop的环境变量,添加Spark的环境变量:
按Esc:wq保存退出,使用source命令使配置文件立即生效:
进入Spark的配置文件目录下:
(1) 配置spark-env.sh文件:
(2) 配置slaves文件:
将master上配置好的Spark安装目录分别复制给两个从节点slave1和slave2,并验证是否成功。
启动后查看每个节点上的进程:
使用浏览器监控Spark的状态:
使用spark-shell命令进入SparkContext(即Scala环境):
启动了spark-shell之后,可以使用4040端口访问其Web控制台页面(注意:如果一台机器上启动了多个spark-shell,即运行了多个SparkContext,那么端口会自动连续递增,如4041,4042,4043等等):
注意:由于我们将Hadoop从环境变量中注释掉了,这时只能手动进入到Hadoop的sbin目录停止Hadoop:
Spark中常用的端口总结:
[img]Spark从入门到精通7:Spark客户端之Spark Submit的使用
通过前面的介绍我们知道,Spark的客户端(Driver)有两种:Spark Submit和Spark Shell。这两种客户端相同点都是维护一个Spark Context对象,来向Spark集群提交任务;不同点是Spark Submit只能提交任务,不能交互,而Spark Shell是一个命令行工具,即可以提交任务,还可以人机交互。本节先来介绍Spark Submit客户端的使用。
例子:使用蒙特卡罗方法计算圆周率。
如图所示,蒙特卡罗方法求圆周率,使用的是概率的思想:往正方形区域随机撒点,总点数记为P2,落在单位圆区域内的点数记为P1,单位圆的面积为π,正方形的面子为4,π = P1 / P2 * 4。这里的P1和P2均由随机实验中得到,实验的次数(P2)越多,得到的结果就越精确。
Spark提供的测试用例$SPARK_HOME/examples/jars/spark-examples_2.11-2.1.0.jar中就有蒙特卡罗求圆周率的例子SparkPI,我们就使用它来介绍Spark Submit的使用。
(1)如果配橘兆置了基于Zookeeper的Spark HA,需要先启动Zookeeper服务器
(2)启动Spark集群
使用Spark Submit的命令格式如下:
(1)提交SparkPI任务,随机实验次数圆塌租为100:
(2)提交SparkPI任务,随机实验次数为1000:
(3)提交SparkPI任务,随机实验次数为10000:
可以看到上面三次实验的结果分别是:
一般对于随机实验来衫冲说,试验次数越多结果越精确。但是不免存在误差。如果想要获取更精确的圆周率,你可以输入更多的次数进行测试。但这不是本文介绍的重点。
至此,使用Spark Submit客户端提交Spark任务的方法已经介绍完毕,祝你玩的愉快!
hadoop,spark入门得多久
如果有java基础的话,上手hadoop 的mapreduce开发,1个礼拜就可以了。
Hudi + Spark3入门第一课
欢迎访问 我的博客
这两个包不用自己编译,可以从maven 中央仓库 获取,(页面很不好找,hudi得把仓库类目梳理一下了)贴兆蚂乎一下。
使用上述预编译的包,就省略族悉自己编译的过程了。
官网发布的支持矩阵:
Spark 3 Support Matrix
可物毕以看到hudi 0.10版本默认构建出来是spark3.1的,也可以构建spark3.0的。
参加大数据开发培训要掌握哪些方面基础
参加大数据开发培训需要掌握以下几个方向的内容。
阶段一:JavaSE基础核心
1、深入理解Java面向对象思想
2、掌握开发中常用基础API
3、熟练使用集合框架、IO流、异常
4、能够基于JDK8开发
阶段二:Hadoop生态体系架构
1、Linux系统的安装和操作
2、熟练掌握Shell脚本槐歼语法
3、Idea、Maven等开发工具的使用
4、Hadoop组成、安装、架构和源码深度解析,以及API的熟练使用
5、Hive的安装部署、内部架构、熟练使用其开发需求以及企业级调优
6、Zookeeper的内部原理、选举机制以及大数据生态体系下的应
阶段三:Spark生态体系架构
1、Spark的入门安装部署、Spark Core部分的基本API使用熟练、RDD编程进阶、累加器和广播变量的使用和原理掌握、Spark SQL的编程掌握和如何自定义函数、Spark的内核源码详解(包括部署、启动、任务划分调度、内存管理等)、Spark的企业级调优策略
2、DophineScheduler的安装部署,熟练使用进行工作流的调度执行
3、了解数据仓库建模理论,充分熟悉电商行业数据分析指标体系,快速掌握多种大数据技术框架,了解认识多种数据仓库技术模块
4、HBase和Phoenix的部署使用、原理架构讲解与企业级优化
5、开发工具GitGit Hub的熟练使用
6、Redis的入门、基本配铅槐冲置讲解、jedis的熟练掌握
7、ElasticSearch的入门安装部署及调优
8、充分理解用户画像管理平台的搭建及使用、用明丛户画像系统的设计思路,以及标签的设计流程及应用,初步了解机器学习算法
9、独立构建功能完全的企业级离线数据仓库项目,提升实战开发能力,加强对离线数据仓库各功能模块的理解认知,实现多种企业实战需求,累积项目性能调优经验
阶段四:Flink生态体系架构
1、熟练掌握Flink的基本架构以及流式数据处理思想,熟练使用Flink多种Soure、Sink处理数据,熟练使用基本API、Window API 、状态函数、Flink SQL、Flink CEP复杂事件处理等
2、使用Flink搭建实时数仓项目,熟练使用Flink框架分析计算各种指标
3、ClickHouse安装、使用及调优
4、项目实战。贴近大数据的实际处理场景,多维度设计实战项目,能够更广泛的掌握大数据需求解决方案,全流程参与项目打造,短时间提高学生的实战水平,对各个常用框架加强认知,迅速累积实战经验
5、可选掌握推荐和机器学习项目,熟悉并使用系统过滤算法以及基于内容的推荐算法等
6、采用阿里云平台全套大数据产品重构电商项目,熟悉离线数仓、实时指标的阿里云解决方案
阶段五:就业指导
1、从技术和项目两个角度按照企业面试、
2、熟悉CDH在生产环境中的使用
3、简历指导
以上为大数据培训所要掌握的内容,当然也可以尝试自学的。
关于spark入门和spark入门培训的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。