2021年大数据Spark(五):大环境搭建本地模式 Local
目录
环境搭建-Local
安装包下载
运行spark-shell
开箱即用
spark-shell说明
初体验-读取本地文件
初体验-读取HDFS文件
监控页面
环境搭建-Local
Spark中有2类角色,一个是Master类似Namenode做管理
一个是Worker类似DataNode是干活的。
Local模式就是,以一个JVM进程,去模拟整个Spark的运行环境,就是讲Master和Worker角色以线程的形式运行在这个进程中。
安装包下载
目前Spark最新稳定版本:2.4.x系列,官方推荐使用的版本,也是目前企业中使用较多版本,网址:
https://github.com/apache/spark/releases
http://spark.apache.org/downloads.html
http://archive.apache.org/dist/spark/spark-2.4.5/
Spark 2.4.x依赖其他语言版本如下,其中既支持Scala 2.11,也支持Scala 2.12,推荐使用2.11。
Spark安装
将spark安装包【spark-2.4.5-bin-hadoop2.7.tgz】解压至【/export/server】目录:
解压软件包tar -zxvf spark-2.4.5-bin-hadoop2.7.tgz创建软连接,方便后期升级ln -s /export/server/spark-2.4.5-bin-hadoop2.7 /export/server/spark如果有权限问题,可以修改为root,方便学习时操作,实际中使用运维分配的用户和权限即可chown -R root /export/server/spark-2.4.5-bin-hadoop2.7chgrp -R root /export/server/spark-2.4.5-bin-hadoop2.7
中各个目录含义如下:
bin 可执行脚本
conf 配置文件
data 示例程序使用数据
examples 示例程序
jars 依赖 jar 包
python pythonAPI
sbin 集群管理命令
yarn 整合yarn需要的东东
运行spark-shell
开箱即用
直接启动bin目录下的spark-shell:
进入Spark安装目录
cd /export/server/spark
##直接使用spark-shell,默认使用local[*]bin/spark-shell## 或bin/spark-shell --master local[2]
spark-shell说明
1.直接使用./spark-shell
表示使用local 模式启动,在本机启动一个SparkSubmit进程
2.还可指定参数 --master,如:
spark-shell --master local[N] 表示在本地模拟N个线程来运行当前任务
spark-shell --master local[*] 表示使用当前机器上所有可用的资源
3.不携带参数默认就是
spark-shell --master local[*]
4.后续还可以使用--master指定集群地址,表示把任务提交到集群上运行,如
./spark-shell --master spark://node01:7077,node02:7077
5.退出spark-shell
使用 :quit
本地模式启动spark-shell:
运行成功以后,有如下提示信息:
其中
创建SparkContext实例对象:sc
SparkSession实例对象:spark
启动应用监控页面端口号:4040
初体验-读取本地文件
1.准备数据
vim /root/words.txt
hello me you her hello you herhello her hello
2.执行WordCount
val textFile = sc.textFile("file:///root/words.txt")val counts = textFile.flatMap(_.split(" ")).map((_,1)).reduceByKey(_ + _)counts.collect
初体验-读取HDFS文件
1.准备数据
上传文件到hdfshadoop fs -put /root/words.txt /wordcount/input/words.txt目录如果不存在可以创建hadoop fs -mkdir -p /wordcount/input结束后可以删除测试文件夹hadoop fs -rm -r /wordcount
2.执行WordCount
val textFile = sc.textFile("hdfs://node1:8020/wordcount/input/words.txt")val counts = textFile.flatMap(_.split(" ")).map((_,1)).reduceByKey(_ + _)counts.collectcounts.saveAsTextFile("hdfs://node1:8020/wordcount/output")
查看文件内容
hadoop fs -text /wordcount/output/part*
监控页面
每个Spark Application应用运行时,启动WEB UI监控页面,默认端口号为4040,
可以使用浏览器打开页面,
http://node1:4040/jobs/
2021年大数据Spark(五):大环境搭建本地模式 Local相关推荐
- 2021年大数据Spark(六):环境搭建集群模式 Standalone
目录 环境搭建-Standalone 前言 Standalone 架构 集群规划 修改配置并分发 修改slaves 分发到其他机器 修改spark-env.sh 集群启动和 ...
- 2021年大数据Spark(八):环境搭建集群模式 Standalone HA
环境搭建-Standalone HA 高可用HA Spark Standalone集群是Master-Slaves架构的集群模式,和大部分的Master-Slaves结构集群一样,存在着Master单 ...
- 2021年大数据Spark(四十二):SparkStreaming的Kafka快速回顾与整合说明
目录 Kafka快速回顾 消息队列: 发布/订阅模式: Kafka 重要概念: 常用命令 整合说明 两种方式 两个版本API 在实际项目中,无论使用Storm还是SparkStreaming与Flin ...
- 2021年大数据Spark(二十七):SparkSQL案例一花式查询和案例二WordCount
目录 案例一:花式查询 案例二:WordCount 基于DSL编程 基于SQL编程 具体演示代码如下: 案例一:花式查询 package cn.itcast.sqlimport org.apache. ...
- 2021年大数据Spark(二十三):SparkSQL 概述
目录 SparkSQL 概述 前世今生 Shark 框架-淘汰了 SparkSQL 模块 Hive 与 SparkSQL 官方定义 第一.针对结构化数据处理,属于Spark框架一个部分 第二.抽象数据 ...
- 2021年大数据Spark(四):三种常见的运行模式
目录 Spark 运行模式 一.本地模式:Local Mode 二.集群模式:Cluster Mode 三.云服务:Kubernetes 模式 Spark 运行模式 Spark 框架编 ...
- 2021年大数据Spark(一):框架概述
目录 Spark框架概述 Spark 是什么 分布式内存迭代计算框架 官方定义: Spark框架概述 Spark 是加州大学伯克利分校AMP实验室(Algorithms Machines and Pe ...
- 2021年大数据Spark(三十一):Spark On Hive
目录 Spark On Hive spark-sql中集成Hive Spark代码中集成Hive Spark On Hive Spark SQL模块从发展来说,从Apache Hive框架而来,发展历 ...
- 2021年大数据Spark(十一):应用开发基于IDEA集成环境
目录 Spark应用开发-基于IDEA 创建工程 WordCount本地运行 WordCount集群运行 注意 修改代码如下 打成jar包 改名 上传jar包 提交到Yarn WordCount-Ja ...
最新文章
- CSE 3100 Systems Programming
- Bundle savedInstanceState的作用
- 以数据为核心的SOC3.0时代到来
- Python进阶:如何将字符串常量转化为变量?
- wince导航_宁可用手机导航,也不用汽车导航?
- js判断浏览器是否支持flash的方法
- 从java到C++入门
- 在WEB中实现打印分页
- css特性:空白外边距互相叠加
- MongoDB:有人敢像我一样说出开源的真实用意吗?
- Seaborn学习(一)------- 构建结构化多绘图网格(FacetGrid()、map())详解
- keil5.24 +注册机 下载
- Android studio 解决Gradle下载缓慢的问题
- grads插值_GrADS学习资料:第2章 数据处理
- java 游戏源码_源码下载 - Java源码 - 游戏娱乐
- 一文教你学会DIY串口线
- 低功耗MCU的选择方法
- 这位程序员桌面很干净
- SVN版本控制与恢复删除
- 如何成为一名数据分析师:数据的初步认知
热门文章
- 伍六七带你学算法 入门篇-最小的k个数
- 2022-2028年中国地铁广告行业研究及前瞻分析报告
- 2022-2028年中国三轴陀螺仪行业市场深度分析及投资前景分析报告
- pytorch版的bilstm+crf实现sequence label
- viterbi维特比算法和隐马尔可夫模型(HMM)
- LeetCode简单题之位1的个数
- LookupError: unknown encoding: uft-8
- python 16进制转10进制, 8进制转10进制, 2进制转10进制的方法
- org.gradle.api.internal.tasks.DefaultTaskInputs$TaskInput........
- java增强for循环