大数据技术Hadoop+Spark

一、Hadoop 生态圈组件介绍

Hadoop包括以下3个核心模块。

  • 1)HDFS(分布式文件系统):一个分布式文件系统,能够以高吞吐量访问应用中的数据。

  • 2)YARN(分布式资源管理器):一个作业调度和资源管理框架。

  • 3)MapReduce(分布式计算框架):一个基于YARN的大数据并行处理程序。

HDFS(Hadoop Distributed File System):HDFS 是 Hadoop 的 分布式文件系统,它是将大规模数据分散存储在多个节点上的基础。HDFS 主要负责数据的存储和管理,可以将大数据集分成多个数据块,并将这些数据块分配到不同的计算节点上存储,提高数据的可靠性和处理效率。

MapReduce:MapReduce 是 Hadoop 的 分布式计算框架,它提供了一种简单的编程模型,通过将大规模数据分解成多个小任务并行处理,可以大大提高数据处理的效率。MapReduce 模型包括 Map 和 Reduce 两个阶段,其中 Map 阶段将数据分解成多个小块进行处理,Reduce 阶段将处理结果合并。

YARN(Yet Another Resource Negotiator):YARN 是 Hadoop 的 资源管理器,它负责为多个应用程序分配和管理计算资源,可以有效地提高计算资源的利用率。YARN 可以将集群中的计算资源划分为多个容器,为不同的应用程序提供适当的资源,并监控和管理各个应用程序的运行状态。

二、 MapReduce 概述

1.1 MapReduce的定义

MapReduce是一个分布式运算程序的编程框架,核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个Hadoop集群上。

1.2 MapReduce 的优缺点

1、优点:

  1. MR 易于编程
  2. 有良好的扩展性
  3. 有很高的容错性
  4. 适合做 PB 级以上海量数据的离线处理

2、缺点:

  1. 不擅长实时计算
  2. 不擅长流式计算
  3. 不擅长 DAG (有向图)计算

1.3 MapReduce的核心思想

(1)分布式计算程序通常分为 2 个阶段
(2)第一个阶段的 MapTask 并发实例,完全并行运行,互不相干

(3)第二个阶段的 ReduceTask 并发实例互不相干,但是他们的数据依赖于上一个阶段的所有 MapTask 并发实例的输出

(4)MapReduce编程模型只能包含一个Map阶段和一个Reduce阶段,如果用户的业务逻辑非常复杂,那就只能多个MapReduce程序,串行运行

三、spark技术特点和概述

1.1 Spark概述

Spark 是一种由 Scala 语言开发的快速、通用、可扩展的大数据分析引擎

spark框架包含多个紧密集成的组件,包括Spark SQL(即席查询)、Spark Streaming(实时流处理)、Spark MLlib(机器学习库)、Spark GraphX(图计算)。如下图所示,并且spark支持在一个应用中同时使用这些组件。

1.2 Spark的特点

  • 运行速度快
  • 易于使用
  • 通用性强
  • 适用环境广
  • 代码简洁

1.3 Spark的运行架构

Spark运行架构由三个主要组件组成:Driver节点、Cluster Manager和Executor节点。

  • 集群资源管理器(Cluster Manager)
  • Spark 驱动节点(Driver)
  • 若干个工作节点(Worker Node)

(1)Driver节点是应用程序的入口点,它负责解析用户的应用程序代码,并将任务划分成一系列的任务(stage),以及在集群上为任务安排调度。Driver节点负责管理各个任务之间的依赖关系,并将它们转换成一个可执行的物理执行计划(DAG)。
(2)Cluster Manager负责在集群中为应用程序分配资源。它可以是Standalone,YARN或Mesos等。
(3)Executor节点负责在工作节点上执行任务。每个Executor都运行在自己的JVM进程中,并且为应用程序分配了一定数量的内存和CPU资源。Executor在运行过程中负责接收和执行任务。

1.4 Spark的原理

四、mapreduce和spark的区别

① mapreduce是基于磁盘的,spark是基于内存的。mapreduce会产生大量的磁盘IO,而 spark基于DAG计算模型,会减少Shaffer过程即磁盘IO减少。

②spark是多线程运行,mapreduce是多进程运行。进程的启动和关闭和会耗费一定的时间。

③兼容性:spark可单独也可以部署为on yarn模式,mapreduce一般都是on yarn模式

④shuffle与排序,mapreduce有reduce必排序

⑤spark有灵活的内存管理和策略

五、结构化数据与非结构化数据是什么?

结构化数据:即行数据,存储在数据库里,可以用二维表结构来逻辑表达实现的数据。

非结构化数据:不方便用数据库二维逻辑表来表现的数据,包括所有格式的办公文档、文本、图片、XML、HTML、各类报表、图像和音频/视频信息等等。 

六、Linux简单操作命令实训练习

  • 23
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
实战大数据(hadoop spark flink)pdf是指利用大数据处理技术(如HadoopSpark、Flink)进行实际的数据分析和应用开发,并以PDF格式进行文档化。 大数据处理技术的出现,使得企业和机构可以处理和分析海量的数据,从而发掘出更多有价值的信息和洞察。而HadoopSpark和Flink作为目前比较流行的大数据处理框架,具有各自的特点和适用场景。 首先,Hadoop是一个基于分布式文件系统的大数据处理框架,能够实现数据的存储和计算的分布式处理。它采用MapReduce计算模型,可以对大规模数据进行批处理,适用于离线的数据分析任务。因此,在实战大数据的PDF中,可以介绍如何使用Hadoop进行大数据的存储和离线计算,以及如何利用Hadoop的生态系统组件如Hive、HBase等进行数据处理和查询。 其次,Spark是一个内存计算框架,它具有很强的处理速度和灵活性。Spark提供了一系列的API,可以方便地处理和分析大规模数据,同时支持批处理和实时流处理,适用于交互式和实时的数据分析任务。在实战大数据的PDF中,可以介绍如何使用Spark进行数据的处理和分析,包括数据清洗、特征工程、机器学习等方面的实践。 最后,Flink是一个流式计算框架,它具有低延迟、高吞吐量和状态一致性等特点。Flink支持基于时间的窗口计算、迭代计算和状态管理等功能,适用于复杂的实时数据分析任务。在实战大数据的PDF中,可以介绍如何使用Flink进行实时数据处理和分析,包括窗口计算、流式机器学习等方面的实践。 总之,实战大数据(hadoop spark flink)pdf可以从不同维度和使用场景来介绍大数据处理技术的应用,帮助读者了解和掌握这些技术在实际项目中的使用方法和优势。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值