Spark角色介绍

  • 1、Driver

    • 它会运行客户端的main方法,构建了SparkContext对象,它是所有spark程序的入口

  • 2、Application

    • 它就是一个应用程序,包括了Driver端的代码和当前这个任务在运行的时候需要的资源信息

  • 3、Master

    • 它是整个spark集群的老大,负责资源的分配

  • 4、ClusterManager

    • 它是一个可以给任务提供资源的外部服务

      • standAlone

        • spark自带的集群模式,整个任务的资源分配由Master负责

      • yarn

        • spark可以把程序提交到yarn中去运行,整个任务的资源分配由ResourceManager负责

      • mesos

        • 它是一个apache开源的类似于yarn的资源管理平台

  • 5、Worker

    • 它是整个spark集群的小弟,任务最后会运行在worker节点

  • 6、Executor

    • 它是一个进程,任务最后会运行在worker节点的executor进程中。

  • 7、task

    • 它是一个线程,spark的任务是以线程的方式运行在worker节点的executor进程中。

spark-shell的使用

1、通过spark-shell --master local[N] 读取本地数据文件实现单词统计

--master local[N]

  • local表示本地运行,跟spark集群没有任何关系,方便于我们做测试

  • N表示一个正整数,在这里local[N] 就是表示本地采用N个线程去运行任务

  • 它会产生一个SparkSubmit进程

spark-shell --master local[2]
sc.textFile("file:///root/words.txt").flatMap(x=>x.split(" ")).map(x=>(x,1)).reduceByKey((x,y)=>x+y).collect sc.textFile("file:///root/words.txt").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).collect

2、通过spark-shell --master local[N] 读取HDFS上数据文件实现单词统计

#spark整合HDFS
vim spark-env.sh #引入hadoop中配置文件路径
export HADOOP_CONF_DIR=/export/servers/hadoop/etc/hadoop
spark-shell --master local[2]

sc.textFile("hdfs://node1:9000/words.txt").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).collect

sc.textFile("/words.txt").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).collect

3、通过spark-shell 指定master为整个spark集群中alive的master地址

spark-shell --master spark://node1:7077 --executor-memory 1g  --total-executor-cores 2

sc.textFile("/words.txt").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).collect

使用spark-submit提交jar包任务到集群

bin/spark-submit \
--class org.apache.spark.examples.SparkPi \
--master spark://node1:7077,node2:7077,node3:7077 \
--executor-memory 1G \
--total-executor-cores 2 \
examples/jars/spark-examples_2.11-2.1.3.jar \
10

Spark角色介绍及spark-shell的基本使用的更多相关文章

  1. 2 Spark角色介绍及运行模式

    第2章 Spark角色介绍及运行模式 2.1 集群角色 从物理部署层面上来看,Spark主要分为两种类型的节点,Master节点和Worker节点:Master节点主要运行集群管理器的中心化部分,所承 ...

  2. Spark概念介绍

    Spark概念介绍:spark应用程序在集群中以一系列独立的线程运行,通过驱动器程序(Driver Program)发起一系列的并行操作.SparkContext对象作为中间的连接对象,通过Spark ...

  3. 大数据学习day18----第三阶段spark01--------0.前言(分布式运算框架的核心思想,MR与Spark的比较,spark可以怎么运行,spark提交到spark集群的方式)1. spark(standalone模式)的安装 2. Spark各个角色的功能 3.SparkShell的使用,spark编程入门(wordcount案例)

    0.前言 0.1  分布式运算框架的核心思想(此处以MR运行在yarn上为例)  提交job时,resourcemanager(图中写成了master)会根据数据的量以及工作的复杂度,解析工作量,从而 ...

  4. spark API 介绍链接

    spark API介绍: http://homepage.cs.latrobe.edu.au/zhe/ZhenHeSparkRDDAPIExamples.html#aggregateByKey

  5. Spark记录-spark编程介绍

    Spark核心编程 Spark 核心是整个项目的基础.它提供了分布式任务调度,调度和基本的 I/O 功能.Spark 使用一种称为RDD(弹性分布式数据集)一个专门的基础数据结构,是整个机器分区数据的 ...

  6. Spark(二) -- Spark简单介绍

    spark是什么? spark开源的类Hadoop MapReduce的通用的并行计算框架 spark基于map reduce算法实现的分布式计算 拥有Hadoop MapReduce所具有的优点 但 ...

  7. Spark MLlib介绍

    Spark MLlib介绍 Spark之所以在机器学习方面具有得天独厚的优势,有以下几点原因: (1)机器学习算法一般都有很多个步骤迭代计算的过程,机器学习的计算需要在多次迭代后获得足够小的误差或者足 ...

  8. Apache Spark简单介绍、安装及使用

    Apache Spark简介 Apache Spark是一个高速的通用型计算引擎,用来实现分布式的大规模数据的处理任务. 分布式的处理方式可以使以前单台计算机面对大规模数据时处理不了的情况成为可能. ...

  9. spark相关介绍-提取hive表(一)

    本文环境说明 centos服务器 jupyter的scala核spylon-kernel spark-2.4.0 scala-2.11.12 hadoop-2.6.0 本文主要内容 spark读取hi ...

随机推荐

  1. Django的url别名功能的使用

    - URL: from django.urls import reverse url(r'^all/(?<article_type_id>\d+).html$', home.index, ...

  2. java编程之POI读取excel表格的内容

    07版本的excel需要另外加一个jar包.xbean.jar的jar包 读取代码模板.利用模板介绍读取excel的一些poi的api这是重点 /** * 读取excel文件 * @Title: re ...

  3. BW建模开发入门

    本文档主要指导具体操作步骤,一些技术名称和描述可能在各步骤中不对应,可以忽略 一.模型建立 1.建立信息区和信息对象目录 1)进入BW工作台 2)创建信息区 输入技术名称和描述 3)创建特性和关键值的 ...

  4. c++中using的使用

    #include <iostream> #include <vector> #include <map> using namespace std; //1.相当于t ...

  5. i.e 和e.g 的区别

    i.e 和e.g 的区别 两者都是拉丁文缩写 i.e是id est的缩写,意思是that is. e.g是exempli gration的缩写,意思是for example;

  6. logcat调试系统

    日志存放位置:/dev/log shell@xxx:/ $ ls /dev/log -l crw-rw-rw- root log , -- : events crw-rw-rw- root log , ...

  7. 【备忘录】Golang交叉编译

    Golang 支持交叉编译,在一个windows平台可以生成linux或Mac系统下的可执行文件. Mac 下编译 Linux 和 Windows 64位可执行程序 CGO_ENABLED=0 GOO ...

  8. Vim编辑器基本操作学习(一)

      最近在服务端编辑文件总不可避免要使用vim编辑器,下面就对学习到的常用命令进行总结,以便自己以后查看.   基本编辑命令   删除字符:x 删除一行:dd 删除换行符:J,同时将两行合并成一行 撤 ...

  9. asterisk配置SIP服务器

    服务器asterisk我们安装完以后,需要在windows(就是自己的本机)上在安装一个客户端xlite,直接下载安装就行,安装完以后,我们就需要自己手动配置一下sip服务器了. 下面给大家讲一下怎么 ...

  10. POJ-3273 Monthly Expense (最大值最小化问题)

    /* Monthly Expense Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 10757 Accepted: 4390 D ...