初识hadoop
1.什么是hadoop ?
hadoop是一个高度容差的分布式文件系统,采用Master/Slave结构.由HDFS,MapReduce,HBase,Hive,ZooKeeper组成,是Sun的Apache下的项目.
2.hadoop为什么会出现?
随着现代各类技术的发展,应用产生的数据与日据增.而数据存储密度增大的速度要远大于数据传输增大的速度.
处理这类问题的一种方法是将数据存储在多个磁盘中,对数据进行并行存取.这样可以使数据存取速度与并行运行的磁盘数量呈正比.
3.多磁盘并行存取可能出现的问题.
a.硬件故障.多磁盘运行比单磁盘运行出现硬件故障的可能性要大得多.解决这一问题的办法是采用冗余磁盘阵列.
b.对数据的分拆和整合.将数据分拆用于存放于多个磁盘中;将数据整合来还原原数据.这个问题在hadoop中由MapReduce解决.
4.为何不使用关系数据库而要使用hadoop?
hadoop与关系数据库一个最大的不同在于它们结构化数据的数量.结构化数据指拥有准确定义的实体化数据.关系数据库是一个高度结构化的数据库.而hadoop是非结构化的数据库.它需要在处理的过程中解释数据.这为hadoop数据流的高速传输提供了条件,不用去处理和结构有关的事情.这样能有效的提高数据的存取速度.
5.什么是MapReduce?
MapReduce是hadoop中的数据分析和处理工具.用来分拆数据和整合数据.它使用一种key/value对的数据模型.value对应数据文件中的数据,key是人们根据数据格式设计出来用于标识value的值.
MapReduce也是一个编程模型.程序员设计两个函数.Map和Reduce.系统根据Map函数对数据进行分拆,再存储,根据Reduce函数对数据进行整合以进行数据查询等操作.
MapReduce相对网格计算(High Performance Compute,HPC)的优点在于数据的本地化.海量数据在结点之间的传输时间将成为网格计算对海量数据处理的瓶颈.