代码改变世界

hadoop学习笔记

2021-01-02 11:24  l_v_y_forever  阅读(100)  评论(0)    收藏  举报

hadoop学习笔记

第一章、初识Hadoop

一、目前面临的挑战,即为什么会使用hadoop

1、目前数据量比较庞大

2013年预计数据量将从2013年的4.4ZB到2020年的44ZB。1ZB等于10^21字节,等于1000EB,1000000PB,等于10亿TB。

纽交所每天产生的交易数据大约4TB至5TB之间

Facebook存储的照片超过2400亿张,并以每月至少7PB的速度增长

家谱网站Ancestry.com存储的数据约为10PB

互联网档案馆(The Integer Archive)存储的数据约为18.5PB

瑞士日内瓦附近的大型强子对撞机每年产生的数据约为30PB

2、产生的数据还在快速的增长

3、磁盘存储容量不断提升的同时,访问速度(磁盘熟读读取速度)却没有与时俱进。

一个普通磁盘存1370MB数据,传输速度为4.4MB/s,5分钟才能读完。

1TB的磁盘,传输速度为100MB/s,读完磁盘数据至少话2.5个小时。

 

二、对多个磁盘并行读写面临的挑战

1、硬件故障问题,一旦开始使用多个硬件,其中个别硬件就很有可能发生故障,为避免数据丢失,最常见的做法是复制,即系统保存数据的副本。一旦有系统发生故障,就可以使用另外保存的副本,RAID及Hadoop的文件系统(Hadoop Distributed FileSystem,HDFS)都是这一类

2、大多数分析人物需要以某种方式结合大部分数据来共同完成分析,即从一个硬盘读取的数据需要与另外99个硬盘中读取的数据结合使用。各种分布式系统允许结合不同来源的数据进行分析,但保证其正确性是一个非常大的挑战。MapReduce提出一个编程模型,该模型抽象出这些磁盘读/写问题并将其转换为对一个数据集(由键-值对组成)的计算。这样的计算有map和reduce两部分组成,而且只有这两部分提供对外的接口。与HDFS类似,MapReduce自身也有很高的可靠性。

简而言之,Hadoop为我们提供了一个可靠的且可扩展的存储和分析平台。此外,由于Hadoop运行在商用硬件上且是开源的,因而可以说Hadoop的使用成本是在可承受范围内的。