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的优点有哪些?Hadoop?态圈【详细介绍】

前情回顾:
?数据是如何产?的?
什么是数据仓库?

目前为止,我们知道了海量数据的存储是使用数据仓库,而为了保证数据的质量呢,我们要有元数据管理,还有数据治理。而为了保证这些数据的性能、还有使用的效率等等,那么我们采取的是分层架构。

在目前市面上用的比较广泛的数据仓库是Hive,而Hive又是依存于Hadoop这样一个开源的分布式计算平台上。所以本篇博客我们就来介绍一下Hadoop。

Hadoop概述

1 Hadoop简介

Hadoop是什么?简单来说,Hadoop就是解决?数据时代下海量数据的存储和分析计算问题。

Hadoop不是指具体的?个框架或者组件,它是Apache软件基?会下?Java语?开发的?个开源分布式计算平台,实现在?量计算机组成的集群中对海量数据进?分布式计算,适合?数据的分布式存储和计算,从?有效弥补了传统数据库在海量数据下的不?。

2 Hadoop优点

  • ?可靠性:Hadoop按位存储和处理数据的能?值得?们信赖。
  • ?扩展性:Hadoop是在可?的计算机集群间分配数据并完成计算任务,这些集群可以?便地扩展到数以千计的节点中。
  • ?效性:Hadoop能够在节点之间动态地移动数据,并保持各个节点的动态平衡,因此处理速度?常快。
  • ?容错性:Hadoop能够?动保存数据的多个副本,并且能够?动将失败的任务重新分配(比如一个计算机出现故障了,那有其他副本的计算机会重新进行工作,也就是说它这个容错性是很高的。)。
  • 低成本:Hadoop是开源的,项?的软件成本因?得以??降低。

3 Hadoop?态圈

我们再来看一下Hadoop的生态圈,它的核心组件是HDFS,还有MapReduce。那随着处理任务的多样性,Hadoop生态圈它的组件会越来越多。
在这里插入图片描述

在这里插入图片描述

3.1 分布式存储(HDFS)

HDFS就是将?件切分成固定??的数据块block(?件严格按照字节来切,所以若是最后切得省?点点,也算单独?块,hadoop2.x默认的固定??是128MB,不同版本,默认值不同.可以通过Client端上传?件设置)。

它主要是负责分布式存储的,它把一个大文件切割成不同的小块,然后存储在相应的节点上,也就是计算机上。默认情况下呢它是把这个块分成一百二十八兆,当文件大于一百二十八兆的时候,它就会进行切割。

举个例子(如图),假如我现在有一个文件是二百兆,那它就切割了两块,分别放在不同的节点上。并且它对每一块进行备份,默认情况下是三个部分(本身加两个备份)。对于不同的副本,它是存储在不同的节点上的,那下一个我们可以这样算,也达到了这样子的三块。

在这里插入图片描述
也正是因为HDFS的这样一个分布式存储,还有多副本的备份,实现了Hadoop的这样一个容错性,还有就是工作量的均衡。

那如果我们把两块都存在了一个节点上,那当对这个数据进行处理的时候,我们可以第一块的计算那是在节点1,那对于第二块的计算,我们就到其他的副本节点上计算,让工作量保持均衡。

所以分布式存储保证了我们Hadoop系统的这样一个高容特性,还有高效性。

HDFS 的优点:

  • 分布式存储
  • ?持分布式和并?计算
  • ?平可伸缩性

3.2 分布式计算(MapReduce)

MapReduce为海量的数据提供了计算。

MapReduce从它名字上来看就?致可以看出个缘由,两个动词Map和Reduce,“Map(展开)”就是将?个任务分解成为多个任务,“Reduce”就是将分解后多任务处理的结果汇总起来,得出最后的分析结果。MapReduce采?"分?治之"的思想,简单地说,MapReduce就是"任务的分解与结果的汇总"。

举个例子,当有了对刚才的二百兆这个文件的一个计算的任务的时候,那MapReduce会把我们的这个任务分发给有这个块的这样一个节点,节点进行计算之后,然后他再整合输出。同理,也是因为MapReduce的分布式计算保证了Hadoop的高效性。

3.3 HBase

对于数据仓库来说,它存储的多数是历史数据,不太支持实时的这样一个交互。但是HBase它既存储数据,也能和HDFS进行交互,所以HBase存储的数据是可以支持实时的这样一个交互的,也就是说它可以用来完成MySQL、Oracle和SqlServer这样业务型数据库的功能,但是这样使用的还是比较少的。

所以在业务系统中,数据需要实时交互的,我们还是采用传统数据库比较好一些。

3.4 Zookeeper

Zookeeper,主要是对于我们的数据平台进行配置和调度的,主要是用来解决分布式应用中经常遇到的一些数据管理问题,例如统一命名、状态同步等等。它的目标就是封装好复杂、易出错的相关服务,将简单、易用的系统提供给用户。

举个例子,假设我们的程序是分布式部署在多台机器上的,也就是我们每一台机器上都有相应的应用程序。但是我们现在要更新,要改配置文件,那就需要逐台的来进行改变,这样就比较麻烦。但是现在呢我们把这个配置文件全部放在Zookeeper上,存储在Zookeeper上的某个目录中,然后相关的应用程序,也就是在每一台机器上的应用程序就会监测Zookeeper。当Zookeeper上的配置文件发生变化了之后,就会自动的进行下载、更新,这样我们就避免了每一台机器都进行逐步的更改。

3.5 Pig Hive ChuKwa

Pig、Hive和ChuKwa属于Hadoop生态圈的应用层,主要都是对数据进行处理和分析的,只是不同的场景,选择不同的组件会更好一些。

后期我会详细介绍Hive,其他两部分就暂时不介绍了。

结束语

一直在学习路上!

了解更多内容,可以关注我的数据分析专栏

CSDN@报告,今天也有好好学习

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章           查看所有文章
加:2021-08-28 09:24:49  更:2021-08-28 09:27:40 
 
开发: 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年11日历 -2024/11/23 16:27:30-

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