Spark核心编程原理
1、首先我们搭建好了spark集群
2、客户端与spark集群建立连接,之后才能提交spark应用程序
3、spark提交应用程序到spark集群上
4、Spark与MapReduce最大的不同在于,迭代式计算模型:
MapReduce,分为两个阶段,map和reduce,两个阶段完了,就结束了。所以我们在一个job里能做的处理很有限,只能在map和reduce里处理。
Spark,计算模型,可以分为n个阶段,因为它是内存迭代式的。我们在处理完一个阶段以后,可以继续往下处理很多个阶段,而不只是两个阶段。所以,Spark相较于MapReduce来说,计算模型可以提供更强大的功能。
Spark的核心编程是什么?其实,就是:
首先,第一,定义初始的RDD,就是说,你要定义第一个RDD是从哪里,读取数据,hdfs、linux本地文件、程序中的集合。
第二,定义对RDD的计算操作,这个在spark里称之为算子,map、reduce、flatMap、groupByKey,比mapreduce提供的map和reduce强大的太多太多了。
第三,其实就是循环往复的过程,第一个计算完了以后,数据可能就会到了新的一批节点上,也就是变成一个新的RDD。然后再次反复,针对新的RDD定义计算操作。。。。
第四,最后,就是获得最终的数据,将数据保存起来。
每一批节点上的每一批数据,实际上就是一个RDD!!!一个RDD是分布式的,所以数据都散落在一批节点上了,每个节点都存储了RDD的部分partition。
Spark核心编程原理相关推荐
- Spark核心编程系列(一)——RDD详解
目录 Spark核心编程系列--RDD详解(一) RDD概念 RDD与IO之间的关系 RDD的核心属性 RDD执行原理 基础编程 RDD创建 RDD的并行度与分区 参考 Spark核心编程系列--RD ...
- 【大数据】【Spark】Spark核心编程(一)RDD概述
文章目录 1.RDD的概念 2.核心属性 3.执行原理 4.RDD创建 1.RDD的概念 RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是 Spark 中最 ...
- 尚硅谷大数据技术Spark教程-笔记02【SparkCore(核心编程,map、mapPartitions、mapPartitionsWithIndex、flatMap、glom、groupBy)】
视频地址:尚硅谷大数据Spark教程从入门到精通_哔哩哔哩_bilibili 尚硅谷大数据技术Spark教程-笔记01[Spark(概述.快速上手.运行环境.运行架构)] 尚硅谷大数据技术Spark教 ...
- 深入分析Spark任务调度的原理--Java后端同学入门Spark编程系列
作者:陌北有棵树,Java人,架构师社区合伙人! 之前写了一篇:<我作为Java后端,分享一下入门Spark编程的经历!> 上篇是Spark入门的第一篇,写了一些关于Spark编程中RDD ...
- Spark累加器实现原理及基础编程
Spark累加器实现原理及基础编程 实现原理 累加器用来把 Executor 端变量信息聚合到 Driver 端.在 Driver 程序中定义的变量,在Executor 端的每个 Task 都会得到这 ...
- 可能要用心学高并发核心编程,限流原理与实战,分布式令牌桶限流
实战:分布式令牌桶限流 本节介绍的分布式令牌桶限流通过Lua+Java结合完成,首先在Lua脚本中完成限流的计算,然后在Java代码中进行组织和调用. 分布式令牌桶限流Lua脚本 分布式令牌桶限流Lu ...
- Spark SQL 核心编程
文章目录 Spark SQL 核心编程 1.新的起点 2.SQL 语法 1) 读取 json 文件创建 DataFrame 2) 对 DataFrame 创建一个临时表 3) 通过SQL语句实现查询全 ...
- Spark 核心原理
文章目录 1. Spark核心原理 2. 消息通信原理 2.1. Spark运行时消息通信 2.2. 作业执行原理 2.2.1. 总述 2.2.2. 提交Job 2.2.3. 划分stage 2.2. ...
- 《深入理解Spark:核心思想与源码分析》——第1章环境准备
本节书摘来自华章社区<深入理解Spark:核心思想与源码分析>一书中的第1章环境准备,作者耿嘉安,更多章节内容可以访问云栖社区"华章社区"公众号查看 第1章 环 境 准 ...
- spark任务shell运行_大数据系列:Spark的工作原理及架构
介绍 本Apache Spark教程将说明Apache Spark的运行时架构以及主要的Spark术语,例如Apache SparkContext,Spark shell,Apache Spark应用 ...
最新文章
- 背水一战 Windows 10 (40) - 控件(导航类): AppBar, CommandBar
- excel 某个单元格不是等于空值_excel 单元格为空与不存在
- sqlserver中的数据类型[转]
- Eclipse中在线安装spring-tool-suite插件
- 【转载】2010年最全最新令人无语语录
- 8皇后以及N皇后算法探究,回溯算法的JAVA实现,递归方案(一)
- ibatis--百度百科
- 【转】PF_RING开发指南
- Java 集合系列12之 Hashtable详细介绍(源码解析)和使用示例
- 一直处于building “XXX”gradle project info
- Android MultiAutocompleteTextView
- 基于SpringBoot的简单记账系统
- WIFI sniffer log抓包教程
- 第十节 直流变直流电路(DCDC)芯片选型
- 【Records】部分功能模块介绍
- 中国域名8大玩家传奇故事
- 国内支持Amazon Alexa的智能家居
- 修改element-ui默认的开关样式
- JAVA鸡汤------一个牛人给java初学者的建议
- Markdown 中的flow语法 flowchart.js 的基础教程
热门文章
- 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_09 序列化流_1_序列化和反序列化的概述...
- 十大经典排序算法总结 (Python)
- MAVEN项目标准目录结构(转)
- (原创)c#学习笔记03--变量和表达式03--变量04--变量的声明和赋值
- SQL server中的SQL语句拼接
- CentOS 5.4 安装和卸载桌面
- java连接数据库增删改查公共方法
- 完全卸载vs2013 2015
- 第四百零四天 how can I 坚持
- 黑马day11 脏读数据amp;解