全书目前刚看到3.2,博客进度会慢一些,很多问题和例子需要操作一遍才能弄清楚。


Why Hadoop


解决的问题

数据存储与分析

在硬盘存储容量多年来不断提升的同时,访问速度却没有与时俱进。

为此,我们使用了多个硬盘并行读/写的方法。但这同样会产生新的问题。主要的两个问题就是如何应对可能出现的硬件故障,以及如何在分析不同来源的数据时保证正确性。

而Hadoop就为我们提供了一个可靠的大数据存储和分析平台,其中HDFS提供存储功能,MapReduce提供分析功能,这也是Hadoop的两个基本核心。


Hadoop的优势

RDBMS

  • 硬盘的寻址时间的提升远远不敌于传输速率的提升。因此在读取大量数据集时,采用流数据读取模式(速率主要取决于传输速率)会快得多。并且在有大量数据更新时,RDBMS采用的B树的效率就明显落后于MapReduce,因为需要使用“排序/合并”来重建数据库;
  • MapReduce适合解决需要以批处理方式分析整个数据集的问题(特别对于一些特定目的);RDBMS适用于索引后数据集的点查询和更新(小规模数据);
  • MapReduce适合一次写入、多次读取,RDB则更适合持续更新的数据集。

网格计算

  • 网格计算适用于计算密集型作业,如果节点的数据访问量过大,就会受到网络带宽的限制;Hadoop则尽量在计算节点上存储数据,以实现数据的本地快速访问,这也是Hadoop数据处理的核心;
  • MPI(消息传递接口)需要程序员显式处理数据流机制;而Hadoop的数据流对程序员是隐性的,仅需从数据模型的角度考虑任务的执行;
  • MapReduce能自动处理系统地部分失效问题,程序员无需关注任务的执行顺序;而MPI程序则必须显式管理紫的检查点和恢复机制,编程难度大。

志愿计算

志愿计算面对的问题是CPU高度密集的,计算所花的时间远超过工作单元数据的传输时间,并且是在接入互联网的不可信的计算机上长时间运行,这些计算机网络带宽不同,对数据本地化也没有要求。而MapReduce的设计目标则是在可靠、专门、运行于同一个内部有高速网络连接的计算机们上,为只需要短时间就能完成的作业提供服务。


小黄象Hadoop?

Hadoop是Hadoop之父Doug Cutting的孩子给他的毛绒象玩具取的名字,没错就是官网上那只愉快的elephant。

HDFS和MapReduce的思想则来源于谷歌的两篇论文的启发(万物基于谷歌):The Google File SystemMapReduce: Simplified Data Processing on Large Clusters

具体的那些年的Hadoop可以自行翻书,还是挺有趣的,可惜现在雅虎已凉。


学习路线

这是书本中给出的学习路线图,我目前还是按照章节顺序学习,不过因为Hadoop需要使用Linux和JAVA,所以这两方面也会补充。


简单总结

第一章主要是关于为什么要创建Hadoop,这不是简单地用Hadoop的运行原理能解释的,它跟时代的发展密切相关。

之后将会进入到Hadoop本身的学习,而不仅仅是Hadoop,关于Linux和Java的相关内容也会更新,,为了在Linux上装个Hadoop我也是历尽艰辛了。。

暂时这样。

Meet Hadoop的更多相关文章

  1. hadoop权威指南 chapter1 Meet Hadoop

    Meet Hadoop 1.1 Data!(数据) Most of the data is locked up in the largest web properties (like search e ...

  2. Hadoop 全分布模式 平台搭建

    现将博客搬家至CSDN,博主改去CSDN玩玩~ 传送门:http://blog.csdn.net/sinat_28177969/article/details/54138163 Ps:主要答疑区在本帖 ...

  3. Hadoop的调度器总结

    Hadoop的调度器总结 随着MapReduce的流行,其开源实现Hadoop也变得越来越受推崇.在Hadoop系统中,有一个组件非常重要,那就是调度器,它的作用是将系统中空闲的资源按一定策略分配给作 ...

  4. Hadoop 处理“Name node is in safe mode”问题(转)

    运行hadoop程序时,有时候会报以下错误:org.apache.hadoop.dfs.SafeModeException: Cannot delete /user/hadoop/input. Nam ...

  5. Hadoop之MapReduce分布式计算

    简单介绍一下项目背景——很简单,作死去接下老师的活,然后一干就是半个月,一直忙着从零基础到使用Hadoop中的MapReduce来解决一个实际问题,也就是用来计算一个数据量较大的二度朋友关系. 那么首 ...

  6. 大数据入门第五天——离线计算之hadoop(上)概述与集群安装

    一.概述 根据之前的凡技术必登其官网的原则,我们当然先得找到它的官网:http://hadoop.apache.org/ 1.什么是hadoop 先看官网介绍: The Apache™ Hadoop® ...

  7. HADOOP/HDFS Essay

    HDFS架构 the core of HADOOP/distributed systems is storeage(HDFS) and resource manager(YARN) for compu ...

  8. hadoop(四)MapReduce

    如果将 Hadoop 比做一头大象,那么 MapReduce 就是那头大象的电脑.MapReduce 是 Hadoop 核心编程模型.在 Hadoop 中,数据处理核心就是 MapReduce 程序设 ...

  9. hadoop环境搭建:完全分布式

    目录 1.硬件配置 2.软件版本 3.准备工作 3.1.建立虚拟机,网络设置为桥接模式 3.2.更改主机名 3.3.绑定主机名和IP,建立各主机间的联系 3.4.关闭防火墙 3.5.配置宿主机host ...

随机推荐

  1. Es6对象的扩展和Class类的基础知识笔记

    /*---------------------对象的扩展---------------------*/ //属性简写 ,属性名为变量名, 属性值为变量的值 export default functio ...

  2. 初始Ajax

    一.Ajax准备知识:json 说起json,我们大家都了解,就是python中的json模块,那么json模块具体是什么呢?那我们现在详细的来说明一下 1.json(Javascript  Obie ...

  3. 【splunk】按时间统计并找到异常值

    场景: 有长时间对多个端口访问的日志数据,每天对端口的访问量是稳定的.如果某一天对某个端口的访问量突然增加表示可能出现了问题.现在要通过splunk找到异常值. 思路: 统计每个端口每天的访问量.统计 ...

  4. laravel 关联查询

  5. Winhex数据恢复学习笔记(四)

    睡不着,那就深夜写篇笔记打发一下不瞌睡,❥(^_-) 1.winhex在文件批量处理上主要是针对批量保存.打开.关闭,主要还是基于批量打开的其他一些操作,这里通过构造通配符来批量打开,列如 *符号 ? ...

  6. linux上安装redis并使用

    1.下载:curl -O http://download.redis.io/releases/redis-4.0.6.tar.gz 2.在/usr/local/redis上解压:tar -zxvf r ...

  7. 有一个字典对象,d = {'a':1,'b':2},请用尽量简洁的代码将d转换成{1: 'a', 2: 'b'}

    题目:有一个字典对象,d = {'a':1,'b':2},请用尽量简洁的代码将d转换成{1: 'a', 2: 'b'} 第一种方法: d = {'a': 1, 'b': 2}d = {value: k ...

  8. 解决OS睡眠功能中,移动鼠标就会唤醒

    设备管理器,在相应项目上右键属性.

  9. Go语言之函数签名

    使用type关键字进行, 函数类型变量也可以作为函数的参数或返回值. 我觉得属于高级技巧了,初学者可能需要很多代码实现的, 高级的就可以更通用的实现. package main import &quo ...

  10. [转]maven全局配置文件settings.xml详解

    概要 settings.xml有什么用? 如果在Eclipse中使用过Maven插件,想必会有这个经验:配置settings.xml文件的路径. Paste_Image.png settings.xm ...