spark hadoop

这篇具有很好参考价值的文章主要介绍了spark hadoop。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.Hadoop 生态圈组件

Hadoop是一个分布式系统基础架构,具备可靠、高效、可伸缩等特点。它的核心设计是HDFS、MapReduce。

1.1.HDFS(分布式文件系统)


HDFS是整个hadoop体系的基础,负责数据的存储与管理。HDFS有着高容错性(fault-tolerant)的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。

 1.2.MapReduce(分布式计算框架)

MapReduce是一种基于磁盘的分布式并行批处理计算模型,用于处理大数据量的计算。其中Map对应数据集上的独立元素进行指定的操作,生成键-值对形式中间,Reduce则对中间结果中相同的键的所有值进行规约,以得到最终结果。

1.3.Spark(分布式计算框架)

Spark是一种基于内存的分布式并行计算框架,不同于MapReduce的是——Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。

1.4.Yarn/Mesos(分布式资源管理器)

YARN是下一代MapReduce,即MRv2,是在第一代MapReduce基础上演变而来的,主要是为了解决原始Hadoop扩展性较差,不支持多计算框架而提出的。

Mesos诞生于UC Berkeley的一个研究项目,现已成为Apache项目,当前有一些公司使用Mesos管理集群资源,比如Twitter。与yarn类似,Mesos是一个资源统一管理和调度的平台,同样支持比如MR、steaming等多种运算框架。

2.mapreduce

2.1.MapReduce的定义

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

2.2 MapReduce优缺点


.2.2.1 优点
(1)易于编程
它简单的实现一些接口,就可以完成一个分布式程序,这个分布式程序可以分布到大量廉价的 PC 机器上运行。也就是说你写一个分布式程序,跟写一个简单的串行程序是一模一样的。

(2)良好的扩展性
当你的计算资源不能得到满足的时候,你可以通过简单的增加机器来扩展它的计算能力。

(3)高容错性
MapReduce 设计的初衷就是使程序能够部署在廉价的 PC 机器上,这就要求它具有很高
的容错性。比如其中一台机器挂了,它可以把上面的计算任务转移到另外一个节点上运行, 不至于这个任务运行失败,而且这个过程不需要人工参与,而完全是由 Hadoop 内部完成的。

(4)适合PB级以上海量数据的离线处理
可以实现上千台服务器集群并发工作,提供数据处理能力。

2.2.2 缺点
(1)不擅长实时计算
MapReduce 无法像 MySQL 一样,在毫秒或者秒级内返回结果。

(2)不擅长流式计算
流式计算的输入数据是动态的,而 MapReduce 的输入数据集是静态的,不能动态变化。
这是因为 MapReduce 自身的设计特点决定了数据源必须是静态的。

(3)不擅长DAG(有向无环图)计算
多个应用程序存在依赖关系,后一个应用程序的输入为前一个的输出。在这种情况下,
MapReduce 并不是不能做,而是使用后,每个 MapReduce 作业的输出结果都会写入到磁盘, 会造成大量的磁盘 IO,导致性能非常的低下。

2.3. MapReduce核心思想


分布式的运算程序往往需要分成至少2个阶段。

 2.3.1.第一个阶段的MapTask并发实例,完全并行运行,互不相干。

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

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

3.spark技术特点和概述

Spark是用于大规模数据处理的统一分析引擎,其具有如下特点:

3.1.快速

Spark 使用DAG执行引擎以支持循环数据流与内存计算,其在内存中的运算速度是 Hadoop MapReduce运行速度的 100 多倍,在硬盘中是 Hadoop MapReduce的 10 多倍。

3.2.易用

支持使用scala、Java、python、R等语言进行编程,

3.3.通用

spark提供完整强大的技术栈,包括Spark SQL(SQL查询)、Spark Streaming(流式计算)、MLib (机器学习)及 GraphX(图算法)等

3.4.随机运行

支持多种运行方式

4.对比mapreduce和spark的区别


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

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

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

4.4.shuffle与排序,mapreduce有reduce必排序

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

5.结构化数据与非结构化数据是什么?

5.1.结构化数据

结构化数据:也称行数据,指可以使用关系型数据库表示和存储,表现为二维形式的数据。
特点:数据以行为单位,一行数据表示一个实体的信息,每一行数据的属性是相同的。

5.2.非结构化数据

非结构化数据:指数据结构不规则或不完整,没有预定义的数据模型,不方便用数据库二维逻辑表来表现的数据。包括所有格式的办公文档、文本、图片、各类报表、图像和音频/视频信息等等

6.Linux简单操作命令实训练习

6.1实验任务一:文件与目录操作


6.1.1步骤一:pwd 命令

spark hadoop,hadoop,spark
6.1.2步骤二:ls 命令

spark hadoop,hadoop,spark
6.1.3步骤三:cd 命令

spark hadoop,hadoop,spark
6.1.4步骤四:mkdir 命令

spark hadoop,hadoop,spark
6.1.5步骤五:rm 命令

spark hadoop,hadoop,spark
6.1.6步骤六:cp 命令

spark hadoop,hadoop,spark
6.1.7步骤七:mv 命令

spark hadoop,hadoop,spark
6.1.8步骤八:cat 命令

spark hadoop,hadoop,spark
6.1.9步骤九:tar 命令

6.2实验任务二:用户操作


6.2.1步骤一:useradd 命令

spark hadoop,hadoop,spark
6.2.2步骤二:passwd 命令

spark hadoop,hadoop,spark
6.2.3步骤三:chown 命令

spark hadoop,hadoop,spark
6.2.4步骤四:chmod 命令

spark hadoop,hadoop,spark
6.2.5步骤五:su 命令

spark hadoop,hadoop,spark文章来源地址https://www.toymoban.com/news/detail-854036.html

到了这里,关于spark hadoop的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Spark和Hadoop的安装

            进入Linux系统,完成Hadoop伪分布式模式的安装。完成Hadoop的安装以后,再安装Spark(Local模式)。         使用hadoop用户名登录进入Linux系统,启动Hadoop,参照相关Hadoop书籍或网络资料,或者也可以参考本教程官网的“实验指南”栏目的“HDFS操作常用Shell命令”,使

    2024年04月29日
    浏览(32)
  • Hadoop和Spark的区别

    表达能力有限。 磁盘IO开销大,延迟度高。 任务和任务之间的衔接涉及IO开销。 前一个任务完成之前其他任务无法完成,难以胜任复杂、多阶段的计算任务。 Spark模型是对Mapreduce模型的改进,可以说没有HDFS、Mapreduce就没有Spark。 Spark可以使用Yarn作为他的资源管理器,并且可

    2024年02月03日
    浏览(43)
  • Spark,hadoop,Linux基础命令

    目录 Linux命令 查看主机名:hostname​编辑 修改主机名:hostnamectl set-hostname xxx 创建新用户,该命令只能由 root 用户使用:useradd 设置或修改指定用户的口令:passwd 显示当前目录:pwd 显示指定目录中的文件或子目录信息。当不指定文件或目录时,显示 当前工作目录中的文件或子目

    2024年03月24日
    浏览(40)
  • spark获取hadoop服务token

    通过yarn-cluster模式提交spark作业,客户端日志一直卡在submit app,没有运行 appid已生成,通过yarn查看app状态为等待am运行。具体查看am日志发现其一直在尝试访问hbase,尝试了36次后失败(集群hbase服务已正常停止) 问题:作业逻辑中不含hbase的相关内容,为什么会去访问hbase? 分析

    2024年02月06日
    浏览(32)
  • hadoop spark jupyterbook 打开过程

    [root@Host1 ~]# /Hadoop/hadoop-3.3.6/sbin/start-dfs.sh Starting namenodes on [Host1] Starting datanodes Starting secondary namenodes [Host1] [root@Host1 ~]# jps 2288 NameNode 2917 Jps 2760 SecondaryNameNode [root@Host1 ~]# /Spark/spark-3.5.1-bin-hadoop3/sbin/start-all.sh starting org.apache.spark.deploy.master.Master, logging to /Spark/spark-3.5.1-bin-hadoop

    2024年03月13日
    浏览(32)
  • Hadoop/Hive/Spark小文件处理

    小文件指的是文件size比HDFS的block size小很多的文件。Hadoop适合处理少量的大文件,而不是大量的小文件。 首先,在HDFS中,任何block,文件或者目录在内存中均以对象的形式存储,每个对象约占150byte,如果有1000 0000个小文件,每个文件占用一个block,则namenode大约需要2G空间。

    2024年02月09日
    浏览(44)
  • Hadoop 之 Spark 配置与使用(五)

    环境 版本 Anolis Anolis OS release 8.6 Jdk java version “11.0.19” 2023-04-18 LTS Spark 3.4.1 Spark 下载 域名 地址 类别 nn 192.168.1.6 master nd1 192.168.1.7 slave nd2 192.168.1.8 slave 同单机配置,在 nd1 、nd2 部署 spark,并设置环境变量(也可利用 scp 命令将住节点下配置好的文件拷贝到从节点) workers 文

    2024年02月15日
    浏览(35)
  • 学了Hadoop之后,如何快速理解Spark?

    Apache Spark 是一个开源的分布式计算系统,由加州大学伯克利分校的AMPLab(现在的RISELab)最初开发,旨在 提高大规模数据处理的速度和效率 。Spark 是为了克服 Hadoop MapReduce 模型在某些数据处理任务上的局限性(如迭代算法和交互式数据挖掘任务)而设计的。Spark 提供了一个强

    2024年03月12日
    浏览(42)
  • 【大数据技术Hadoop+Spark】Spark架构、原理、优势、生态系统等讲解(图文解释)

    Spark最初由美国加州伯克利大学(UCBerkeley)的AMP(Algorithms, Machines and People)实验室于2009年开发,是基于内存计算的大数据并行计算框架,可用于构建大型的、低延迟的数据分析应用程序。Spark在诞生之初属于研究性项目,其诸多核心理念均源自学术研究论文。2013年,Spark加

    2024年01月16日
    浏览(51)
  • 分布式搭建(hadoop+hive+spark)

    hadoop-master 192.168.43.141 hadoop-slave1 192.168.43.142 hadoop-slave2 192.168.43.143 链接:https://pan.baidu.com/s/1OwKLvZAaw8AtVaO_c6mvtw?pwd=1234 提取码:1234 MYSQL5.6:wget http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm Scale:wget https://downloads.lightbend.com/scala/2.12.4/scala-2.12.4.tgz

    2024年02月12日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包