数据处理方式,线程与进程,多任务,Spark与MR的区别

目录

数据处理的方式有哪些

单机数据处理

集群数据处理

分布式计算框架

MapReduce

ApplicationMaster

Spark分布式计算类别

进程与线程的区别

进程是计算时分配资源的最小单位

线程是执行计算任务的最小任务

多进程的执行效率没有多线程的执行效率高

多任务

Spark和MapReduce的区别

处理速度

实现方式

容错机制

调度


数据处理的方式有哪些

单机数据处理

依赖单个计算机的资源,处理的数据量较少,当数据量过大时,无法执行

集群数据处理

采用分布式技术,借助分布式服务实现海量数据处理

  • 分布式存储 HDFS : 主-NameNode 从-DataNode
  • 分布式资源调度 Yarn : 主-ResourceManager 从-NodeManager

分布式计算框架

MapReduce

  • 需要开发人员编写计算代码
  • MapReduce采用的是多任务方式(进程)进行分布式计算,每个计算任务运行在不同的服务器上
  • MapReduce包含Map和Reduce两个部分,两个部分分别以进程的方式运行
  • Map运行的数量由谁决定?
    • 默认情况下,split切割的数据会给到Map,而split默认切割一个块的的数据,所以,一个块对应一个map
  • Reduce运行数量?
    • 默认情况下,根据计算的数据量自动决定产生多少个reduce
    • hive在进行计算时,可以通过set进行设置
    • 指定的reduce个数决定了分区数 ,分区数和reudce个数是一致的

ApplicationMaster

ApplicationMaster管理MapReduce的计算

Spark分布式计算类别

spark有很多部署方式,不同的部署方式决定spark计算时的资源调度方式

  • Local模式 使用单机资源
  • 使用master参数指定资源调度方式 默认 loca
  • standalone 使用spark自带的资源调度
  • yarn 使用hadoop的资源调度

进程与线程的区别

进程是计算时分配资源的最小单位

  • 如果要执行一个计算任务,是按照进程分配资源
  • 运行时,需要先创建进程,一个进程就有一份资源

线程是执行计算任务的最小任务

  • 线程依赖进程的资源,没有进程就没有线程
  • 默认情况下一个进程中包含一个线程,使用线程执行任务

多进程的执行效率没有多线程的执行效率高

  • 创建进程资源需要花费时间
  • spark的执行速度比Mapreduce的速度快

多任务

  • 可以通过多任务实现多个计算机任务同时执行
  • 多任务可以通过进程实现多个任务,也可以多个线程实现

Spark和MapReduce的区别

处理速度

MapReduce只要是基于磁盘计算,将数据存储在HDFS上,并在计算工程中频繁读写磁盘.

Spark是支持内存计算,当内存够大,可以比MapReduce快100倍

实现方式

MapReduce 采用的是多进程方式实现多任务计算,提升计算效率

Spark 采用的多线程方式实现多任务,提升计算效率

容错机制

MapReduce 通过在HDFS上存储中间数据来实现容错

Spark通过RDD的血统机制来实现容错,如果某个节点失败,可以从血统信息重新计算丢失的数据.

调度

MapReduce使用Hadoop的YARN作为资源调度器

Spark有自己的调度器,可以更高效的管理资源和任务

相关推荐
xiaoyaohou119 小时前
025、分布式计算实战:Spark Core与Spark SQL
sql·ajax·spark
xiaoyaohou119 小时前
024、大数据技术栈概览:Hadoop、Spark与Flink
大数据·hadoop·spark
2501_9481142410 小时前
Muse Spark 闭源转型背后的系统化演进:PAO 架构、KV Cache 压缩与聚合接入实践
大数据·架构·spark
Henb92911 小时前
# Spark 内核级调优源码分析
大数据·ajax·spark
薛定猫AI11 小时前
【深度解析】Meta Muse Spark:原生多模态推理模型与多智能体编排的工程化实践
大数据·分布式·spark
xiaoyaohou1111 小时前
026、流式计算:Kafka与Spark Streaming实时处理
spark·kafka·linq
chaofan9801 天前
Meta Muse Spark 深度解构:并联智能体架构与开发者接入实战指南
大数据·架构·spark
初遇见1 天前
【DGX Spark v3.0:基于多智能体交互网络与 Alpaca 实盘集成的企业级量化交易系统】
大数据·网络·spark·nvidia
talen_hx2962 天前
《零基础入门Spark》学习笔记 Day 13
笔记·学习·spark