小白学习大数据测试之hadoop初探

转发是对小编的最大支持

回顾

Hadoop的历史

这里就不多说了,网上很多资料,总而言之对于hadoop谷歌和雅虎对于ta的贡献功不可没。更多介绍请自行查看这里:https://baike.baidu.com/item/Hadoop/3526507?fr=aladdin

Hadoop的应用场景

数据分析,如日志系统、推荐系统

离线计算

海量数据存储

Hadoop的核心

Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。

这里特别需要注意的是hadoop是一个总称,主要由HDFS和MapReduce组成。其中MapReduce可以独立使用,用户只要继承MapReduceBase,提供分别实现Map和Reduce的两个类,并注册Job即可自动分布式运行

HDFS

ta是Hadoop分布式文件系统,是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,适合那些有着超大数据集的应用程序。可以加入QQ交流群522720170一起来学习。

那么HDFS有什么优势吗?显然非常多,大致有如下几点:

1、适合存储大数据的文件,T级别以上或者一大坨的数据

2、这些大数据文件被打散存储,存储在不同的计算器上,这样方便快速的读取

3、一次写入不能做变化了,如果变化也只能在末尾添加,也就是不支持动态改变文件内容

4、同一个文件块副本会分配到其它某几个主机上,如果其中一台主机失效,可以迅速找另一块副本取文件

5、不用多说了,一堆廉价的机器就可以撑起大数据集群

了解HDFS之后我们来看看他的存储结构,看图说话

上图的解释如下:

HDFS 内部的所有通信都基于标准的 TCP/IP 协议

NameNode(仅一个),保存整个文件系统的目录信息、文件信息及分块信息。以前如果NameNode挂了那就完蛋了,但是hadoop2.x之后可以有备用使用了。

DataNode可以分布在不同的机器上,用来存储在 HDFS 中的文件被分成块(block)

block块的大小(通常为 64MB)和复制的块数量在创建文件时由客户机决定。

NameNode 依赖来自每个 DataNode 的定期心跳消息。如果 DataNode 不能发送心跳消息,NameNode 将采取修复措施,重新复制在该节点上丢失的块

MapReduce

ta大家可以理解为编程模型,主要就是完成对数据的处理的。当HDFS完成存储之后,对海量数据的分析处理就要依靠MapReduce了。简单来理解就是先对数据进行map划分,在对数据进行reduce合并,如下图。

hadoop大数据处理的意义

Hadoop得以在大数据处理应用中广泛应用得益于其自身在数据提取、变形和加载(ETL)方面上的天然优势。

Hadoop的分布式架构,将大数据处理引擎尽可能的靠近存储,对例如像ETL这样的批处理操作相对合适,因为类似这样操作的批处理结果可以直接走向存储。

Hadoop的MapReduce功能实现了将单个任务打碎,并将碎片任务(Map)发送到多个节点上,之后再以单个数据集的形式加载(Reduce)到数据仓库里

微信二维码 QQ群二维码

安装荔枝FM手机APP,搜索“挨踢脱口秀”,可收听技术、娱乐、行业、爆料等语音,播放量已经破百万了哦

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180118A03IZQ00?refer=cp_1026

扫码关注云+社区