数据处理方式,线程与进程,多任务,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有自己的调度器,可以更高效的管理资源和任务

相关推荐
B站计算机毕业设计超人2 小时前
计算机毕业设计hadoop+spark股票基金推荐系统 股票基金预测系统 股票基金可视化系统 股票基金数据分析 股票基金大数据 股票基金爬虫
大数据·hadoop·python·spark·课程设计·数据可视化·推荐算法
WorkAgent15 小时前
windows下本地部署安装hadoop+scala+spark-【不需要虚拟机】
hadoop·spark·scala
村口蹲点的阿三1 天前
Spark SQL 中对 Map 类型的操作函数
javascript·数据库·hive·sql·spark
唯余木叶下弦声1 天前
PySpark之金融数据分析(Spark RDD、SQL练习题)
大数据·python·sql·数据分析·spark·pyspark
村口蹲点的阿三2 天前
spark sql中对array数组类型操作函数列表
大数据·数据库·hive·sql·spark·database
青云游子2 天前
spark,读取和写入同一张表问题
大数据·分布式·spark
StarRocks_labs3 天前
从 Spark 到 StarRocks:实现58同城湖仓一体架构的高效转型
大数据·架构·spark·湖仓一体·lakehouse
兔子宇航员03013 天前
数据开发面经常见题整理-1
大数据·分布式·spark