编辑: yyy888555 2019-07-03
《Spark编程基础》 厦门大学计算机科学系 林子雨 ziyulin@xmu.

edu.cn 厦门大学计算机科学系 2018版 林子雨 厦门大学计算机科学系 E-mail: ziyulin@xmu.edu.cn 主页:http://www.cs.xmu.edu.cn/linziyu 第4章Spark环境搭建和使用方法 (PPT版本号:2018年7月版本) 温馨提示:编辑幻灯片母版,可以修改每页PPT的厦大校徽和底部文字 《Spark编程基础(Scala版)》 教材官网: http://dblab.xmu.edu.cn/post/spark/ 扫一扫访问教材官网 《Spark编程基础》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 课程教材 本套讲义PPT属于以下教材的配套材料 《Spark编程基础(Scala版)》 厦门大学 林子雨,赖永炫,陶继平 编著 披荆斩棘,在大数据丛林中开辟学习捷径 填沟削坎,为快速学习Spark技术铺平道路 深入浅出,有效降低Spark技术学习门槛 资源全面,构建全方位一站式在线服务体系 本书以Scala作为开发Spark应用程序的编程语言,系统介绍了Spark编程的基础知识. 全书共8章,内容包括大数据技术概述、Scala语言基础、Spark的设计与运行原理、 Spark环境搭建和使用方法、RDD编程、Spark SQL、Spark Streaming、Spark MLlib等.本书每个章节都安排了入门级的编程实践操作,以便读者更好地学习和掌 握Spark编程方法.本书官网免费提供了全套的在线教学资源,包括讲义PPT、习题、 源代码、软件、数据集、授课视频、上机实验指南等. 人民邮电出版社出版发行,ISBN:978-7-115-48816-9 教材官网:http://dblab.xmu.edu.cn/post/spark/ 《Spark编程基础》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 课程配套授课视频 课程在线视频地址:http://dblab.xmu.edu.cn/post/10482/ 《Spark编程基础》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 提纲 4.1 安装Spark 4.2 在spark-shell中运行代码 4.3 编写Spark独立应用程序 4.4 Spark集群环境搭建 4.5 在集群上运行Spark应用程序 百度搜索厦门大学数据库实验室网站访问平台 《Spark编程基础》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 4.1 安装Spark Spark的安装详细过程,请参考厦门大学数据库实验室建设的高校大数据课程公 共服务平台上的技术博客: 《Spark2.1.0入门:Spark的安装和使用》 博客地址:http://dblab.xmu.edu.cn/blog/1307-2/ 4.1.1 基础环境 4.1.2 下载安装文件 4.1.3 配置相关文件 4.1.4 Spark和Hadoop的交互 平台每年访问量超过100万次 《Spark编程基础》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 4.1.1 基础环境 ?安装Spark之前需要安装Linux系统、Java环境和Hadoop环境 ?如果没有安装Hadoop,请访问厦门大学数据库实验室建设的高校 大数据课程公共服务平台,找到 Hadoop安装教程_单机/伪分布式 配置_Hadoop2.6.0/Ubuntu14.04 (适用于 Hadoop2.7.1/Ubuntu16.04),依照教程学习安装即可 ?注意,在这个Hadoop安装教程中,就包含了Java的安装,所以, 按照这个教程,就可以完成JDK和Hadoop这二者的安装 Hadoop安装教程地址:http://dblab.xmu.edu.cn/blog/install-hadoop/ 《Spark编程基础》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 4.1.2 下载安装文件 ?Spark安装包下载地址: http://spark.apache.org 进入下载页面后,点击主页右侧的 Download Spark 按钮进入下载页面,下载页 面中提供了几个下载选项,主要是Spark release及Package type的选择,如下图所 示.第1项Spark release一般默认选择最新的发行版本,截至2018年4月份的最新版 本为2.3.0(本教程采用2.1.0).第2项package type则选择 Pre-build with user- provided Hadoop [can use with most Hadoop distributions] ,可适用于多数 Hadoop版本.选择好之后,再点击第4项给出的链接就可以下载Spark了. 《Spark编程基础》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 4.1.2 下载安装文件 ?解压安装包spark-2.1.0-bin-without-hadoop.tgz至路径 /usr/local: $ sudo tar -zxf ~/下载/spark-2.1.0-bin-without-hadoop.tgz -C /usr/local/ $ cd /usr/local $ sudo mv ./spark-2.1.0-bin-without-hadoop/ ./spark # 更改文件夹名 $ sudo chown -R hadoop ./spark # 此处的 hadoop 为系统用户名 《Spark编程基础》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 4.1.3 配置相关文件 ?配置Spark 的classpath $ cd /usr/local/spark $ cp ./conf/spark-env.sh.template ./conf/spark-env.sh #拷贝配置文件 ?编辑该配置文件,在文件最后面加上如下一行内容: export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath) ?保存配置文件后,就可以启动、运行Spark了 ?若需要使用HDFS中的文件,则在使用Spark前需要启动Hadoop 《Spark编程基础》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 4.1.4 Spark和Hadoop的交互 ?经过上面的步骤以后,就在单台机器上按照 Hadoop(伪分布式) +Spark(Local模式) 这种方式完成了Hadoop和Spark组合环境的搭建. ?Hadoop和Spark可以相互协作,由Hadoop的HDFS、HBase等组件负责 数据的存储和管理,由Spark负责数据的计算. Spark部署模式包括: ?Local模式:单机模式 ?Standalone模式:使用Spark自带的简单集群管理器 ?YARN模式:使用YARN作为集群管理器 ?Mesos模式:使用Mesos作为集群管理器 《Spark编程基础》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 4.2 在spark-shell中运行代码 ? Spark Shell 提供了简单的方式来学习Spark API ? Spark Shell可以以实时、交互的方式来分析数据 ? Spark Shell支持Scala和Python Spark Shell本身就是一个Driver,里面已经包含了main方法 《Spark编程基础》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 4.2 在spark-shell中运行代码 spark-shell命令及其常用的参数如下: ./bin/spark-shell --master Spark的运行模式取决于传递给SparkContext的Master URL的值.Master URL可 以是以下任一种形式: * local 使用一个Worker线程本地化运行SPARK(完全不并行) * local[*] 使用逻辑CPU个数数量的线程来本地化运行Spark * local[K] 使用K个Worker线程本地化运行Spark(理想情况下,K应该根据运行机 器的CPU核数设定) * spark://HOST:PORT 连接到指定的Spark standalone master.默认端口是7077 * yarn-client 以客户端模式连接YARN集群.集群的位置可以在 HADOOP_CONF_DIR 环境变量中找到 * yarn-cluster 以集群模式连接YARN集群.集群的位置可以在 HADOOP_CONF_DIR 环境变量中找到 * mesos://HOST:PORT 连接到指定的Mesos集群.默认接口是5050 《Spark编程基础》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 4.2 在spark-shell中运行代码 在Spark中采用本地模式启动Spark Shell的命令主要包含以下参数: --master:这个参数表示当前的Spark Shell要连接到哪个master,如 果是local[*],就是使用本地模式启动spark-shell,其中,中括号内的 星号表示需要使用几个CPU核心(core),也就是启动几个线程模拟 Spark集群 --jars: 这个参数用于把相关的JAR包添加到CLASSPATH中;

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题