小白学习大数据测试之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合并,如下图。

为了让大家更好的理解,这里举个栗子。假设小强测试品牌学员群有上亿的学员(这是我们的目标,嘿嘿,官网http://xqtesting.sxl.cn)我们想找出其中薪水最高的那个人。放到MapReduce里大概是这样的过程:将数据扔到block中,然后进行map找到最高的,然后再reduce汇总分析找出最大的。这个过程非常复杂要经历key-value的产生重组等过程,但是hadoop已经帮我们实现了,我们只需要编写相应的命令即可。

hadoop大数据处理的意义



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

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

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

原文地址:http://blog.51cto.com/xqtesting/2062189

时间: 2024-10-08 23:12:56

小白学习大数据测试之hadoop初探的相关文章

小白学习大数据测试之揭秘大数据的背景与发展

大数据是个神马鬼 根据麦肯锡全球研究所给出的定义是:一种规模大到在获取.存储.管理.分析方面大大超出了传统数据库软件工具能力范围的数据集合,具有海量的数据规模.快速的数据流转.多样的数据类型和价值密度低四大特征. 简单点说就是指无法在一定时间范围内用传统的计算机技术进行处理的海量数据集. 大数据市场前景 阿里巴巴创办人马云来台演讲中就提到,未来的时代将不是IT时代,而是DT的时代,DT就是Data Technology数据科技,显示大数据对于阿里巴巴集团来说举足轻重. 当前医疗行业.能源行业.通

小白学习大数据测试之ETL

之前发布过一篇关于ETL的文章,无奈被人说太简单....唉,小编也是刚接触啊,自然不能那么高深,所以只是对学习的过程做了记录转换为文章分享给大家,如果对你有帮助,不要吝啬点赞+转发,如果对你没有帮助,那就请转身离开....或者你写一篇更详细的给我,我申请红包给你(邪恶的笑~) 好啦,回归正题,这次作为补充在详细介绍下.ETL是什么?其实ta指的是一个过程,就是大数据中对数据处理的过程(抓取>转换>装载),并不是一个技术! 小编也是慢慢的学习大数据测试的知识,一直有个问题也困扰着我,就是怎么能判

小白学习大数据测试之主流程和关键步骤

转发是对小编的最大支持 万变不离其宗,不论是什么测试ta的主流程基本都是一样的,就是我们刚开始学习测试的那一套流程.也许你会觉得简单,但你要明白,无规不成方圆,有时候没有推行好或者结果不好不一定是因为技术不行,也许是没有好的流程.就好像,一辆汽车的生产,如果没有好的流程你觉得最终出来的汽车质量会好吗? 明白这个道理之后,我们就先来看看大数据测试的主流程是个神马样子的. 需求分析.这步考虑的越全面那么后续问题就会越少. 测试计划.此处省略N个字. 测试用例编写与评审.可以从数据库层面和页面层面考虑

湿货|小白学习大数据测试之Hive和Hbase

作为初学者经常会对Hive和Hbase产生疑问,不知道两者是干啥的,有啥区别,总觉得都是存储数据的.其实他们还真是有本质区别的,请听我慢慢道来~ Hbase是nosql数据库,以key-value形式存储数据的,主要用于海量数据的实时查询,比如日志信息. Hive是数据仓库,而非数据库,主要是用来解决数据处理.计算的.开发人员能够通过SQL来计算和处理HDFS上的结构化数据,适用于离线的批量数据计算 两者一般都是配合使用的,为了方便大家理解我简单画了下数据流图. 最后来一点小科普: 数据处理大致

大数据测试之hadoop命令大全

大数据测试之hadoop命令大全 1.列出所有Hadoop Shell支持的命令  $ bin/hadoop fs -help2.显示关于某个命令的详细信息  $ bin/hadoop fs -help command-name3.用户可使用以下命令在指定路径下查看历史日志汇总  $ bin/hadoop job -history output-dir这条命令会显示作业的细节信息,失败和终止的任务细节.4.关于作业的更多细节,比如成功的任务,以及对每个任务的所做的尝试次数等可以用下面的命令查看 

小白学习大数据掌握这几个方法轻松入门

有很多学习大数据的朋友,在初期学习时,通常会对如何学习而感到迷茫.我经常在知乎上收到朋友关于如何入门.如何规划学习大数据.大数据的学习流程是什么的一些问题.今天我就粗浅的总结几点学习大数据方法. 一.兴趣建立 兴趣是可以让一个人持续关注一个事物的核心动力,那么兴趣的培养就非常重要了.如果你把写程序单纯作为赚钱手段,久而久之疲劳感会越来越强,会给今后的工作和生活带来很大的压力. 那么如何建立起对大数据的兴趣呢? 相信大家都有自己的兴趣爱好,而大数据的应用恰恰非常广泛,总能找到与你兴趣点符合的应用.

大数据学习|小白学习大数据需要满足这六个条件你就能学好大数据

有很多学习大数据的朋友,在初期学习时,通常会对如何学习而感到迷茫.我经常收到零基础的朋友关于如何入门.如何规划学习大数据.大数据的学习流程是什么的一些问题.今天我就粗浅的总结几点学习大数据方法. 大数据学习资料分享群119599574一.兴趣建立 兴趣是可以让一个人持续关注一个事物的核心动力,那么兴趣的培养就非常重要了.如果你把写程序单纯作为赚钱手段,久而久之疲劳感会越来越强,会给今后的工作和生活带来很大的压力. 那么如何建立起对大数据的兴趣呢? 相信大家都有自己的兴趣爱好,而大数据的应用恰恰非

小白学习大数据掌握这几个方法可轻松入门

有很多学习大数据的朋友,在初期学习时,通常会对如何学习而感到迷茫.我经常在知乎上收到朋友关于如何入门.如何规划学习大数据.大数据的学习流程是什么的一些问题.今天我就粗浅的总结几点学习大数据方法. 一.兴趣建立 兴趣是可以让一个人持续关注一个事物的核心动力,那么兴趣的培养就非常重要了.如果你把写程序单纯作为赚钱手段,久而久之疲劳感会越来越强,会给今后的工作和生活带来很大的压力. .在入门学习大数据的过程当中有遇见学习,行业,缺乏系统学习路线,系统学习规划,欢迎你加入我的大数据学习交流裙:52986

一步一步学习大数据:Hadoop 生态系统与场景

Hadoop概要 到底是业务推动了技术的发展,还是技术推动了业务的发展,这个话题放在什么时候都会惹来一些争议. 随着互联网以及物联网的蓬勃发展,我们进入了大数据时代.IDC预测,到2020年,全球会有44ZB的数据量. 传统存储和技术架构无法满足需求 .在2013年出版的<大数据时代>一书中,定义了大数据的5V特点:Volume(大量).Velocity(高速).Variety(多样).Value(低价值密度).Veracity(真实性). 大数据学习群:119599574 当我们把时间往回看