IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Hadoop -> 正文阅读

[大数据]Hadoop

??之前听过hadoop,用过hadoop,发现还没有系统的了解一下。借着这篇文章来讲一下吧~
??大数据时代有两个难题:一是数据存储,二是数据计算。单一主机即没有足够空间也没有足够算力。于是催生出分布式的思想,将大数据拆分成小数据分别进行处理。Hadoop就是分布式的结构,可以帮使用者进行大数据相关的操作。这篇文章希望解释清楚以下几个问题:
??1.什么是hadoop?/hadoop的作用和应用场景
??2.hadoop的组成结构
??3.学习hadoop的重点

一、什么是hadoop?

??Hadoop是存储海量数据和分析海量数据的工具,整体是分布式结构,不需要计算存储一体的大型计算机 多个小型计算机之间通过相互通信协同完成任务。同时hadoop也是一个分布式系统基础架构和对大量数据进行分布式处理的软件框架,可以让用户开发和运行处理海量数据的应用程序。hadoop的logo如下图,是一只可爱的小象:
在这里插入图片描述
图源:https://zhuanlan.zhihu.com/p/400939259

??Hadoop有如下的三大优势:
??1)支持并行计算,可以完成更快的数据处理
??2)能够存储大量数据,并确保数据容错
??3)集群资源管理

??有一个问题了:hadoop的三大优势是如何体现的呢?这就与Hadoop的三大组成结构有关了。

二、Hadoop的组成结构

??Hadoop总共有三大组成结构:HDFS、MapReduce、Yarn(好像还有个Common,但是不是很重要,就总结为三大结构啦~)。下面来介绍下这三大结构吧:

1.HDFS(Hadoop Distributed File System):

??HDFS即分布式文件系统,是分布式文件管理系统的其中一种,主要解决大量数据的存储问题。它将文件拆分,并提供文件通过网络在多台主机上分享的功能。用多台主机存储数据,解决了大量数据的存储问题。
??优点:
????1)高容错,副本机制
????2)分布式,可存储大量数据。成本低
??缺点:
????1)分布式访问时延较高
????2)不支持文件随机修改(适于写一次,读多次的情况)

??HDFS中数据以block为基本单位存储,block的大小为128MB,但具体还是取决于磁盘传输效率

??HDFS主要由三部分组成:
??1)NameNode:master,管理数据块元数据,和客户端交互,控制副本机制
??2)DataNode:实际存储数据,进行数据的读写操作
??3)Secondary NameNode:辅助NameNode, 在NameNode损坏时可辅助恢复

?Namenode是存储控制、Datanode存放具体的文件。一个namenode会有很多个datanode。HDFS具体的存储流程是客户端、namenode、datanode之间的数据流动。

参考:https://blog.csdn.net/weixin_28707609/article/details/118585137

2.MapReduce

??MapReduce是计算框架,会解决大量数据的计算问题,因为在不同主机。MapReduce的计算实际上是并行计算。适合并行计算就要求各节点数据尽量相互独立。
??MapReduce从结构上可分成两个部分:mapper, reducer。mapper将复杂任务进行划分,分解为若干个简单任务,reducer对mapper阶段的结果进行汇总。
??根据结构,工作流程也可以分为两个部分:mapReduce把输入的数据集切分为独立的数据库,map任务以完全并行的方式进行处理。map 任务的输出进行处理后再给reduce任务进行汇总
??在计算时需要进行数据的读写,所以通常MapReduce和HDFS运行在一组相同节点,计算节点和存储节点通常在一起(就近原则)。

参考:https://blog.csdn.net/burpee/article/details/78769161

??对于mapreduce的详细工作流程可以看看:https://www.bilibili.com/video/BV12h411t7jB?p=2&spm_id_from=pageDriver&vd_source=7b9f1ca2783a4c39a4d640a31e23457e

3.Yarn

??Yarn是资源调度平台,为运算程序提供资源管理。这里的资源大多指硬件资源了,有了Yarn可以让HDFS和mapredeuce更好的工作

??Yarn主要有如下四部分构成:
??1)资源管理器:整个系统的资源管理和分配。作用是:处理客户端请求、监控节点管理器、监控应用管理、资源分配调度

??2)节点管理器:处理并监控节点中的资源使用情况,管理单个节点上的资源。处理来自资源管理器和应用管理器的命令

??3)应用管理器:管理当前整体各种应用,为应用程序申请内部资源

??4)容器:所有物理资源的集合

参考:https://blog.csdn.net/sileiH/article/details/117962890

三、学习hadoop的重点

??hadoop的东西还是比较庞大的,从实践和原理两个角度出发谈谈学习的重点吧:
??1.从实践角度,hadoop作为软件框架,开发者可以根据需求进行开发,需要了解重要的组成框架及其各自能够提供的功能,要熟悉常用的命令
??2.理论角度出发,要明确hadoop中实现分布式的运行机制原理,整体围绕三大组件的工作模式。例如HDFS如何实现数据读写、MapReduce如何实现大数据的计算,YARN整体操控的原理。特别是三个组件交互的详细过程。

学习资料:
1.https://www.bilibili.com/video/BV12h411t7jB?p=1&vd_source=7b9f1ca2783a4c39a4d640a31e23457e
2.https://www.zhihu.com/question/333417513

因作者水平有限,如果错误之处,请在下方评论区指出,谢谢!

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-07-03 10:53:18  更:2022-07-03 10:55:10 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/20 1:53:10-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码