Hadoop短期学习笔记----阿冬专栏

Hadoop 是一个能够对大量数据进行分布式处理的软件框架。Hadoop 是可靠的,因为它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败的节点重新分布处理。Hadoop 是高效的,因为它以并行的方式工作,通过并行处理加快处理速度。Hadoop 还是可伸缩的,能够处理 PB 级数据。此外,Hadoop 依赖于社区服务器,因此它的成本比较低,任何人都可以使用。

Hadoop是Apache Lucene的创始人 Doung Cutting 创建的 Hadoop起源于Apache Nutch 一个开源的网络搜索引擎也是Apache的Lucene项目的一部分。Hadoop是创始人Doung Cutting的儿子给一头大象起的名字。 Hadoop的子项目及其后续项目所用的名称也与其本身的功能多数相关通常以动物的名字。一些小的组件名称通常具有很好的描述性。比如jobtracker是用于跟踪MapReduce作业的。从零开始构建一个网络搜索引擎是一个很大的计划并且往往会遇到很多的问题。不仅是因为编写一个爬虫并索引页面的软件比较复杂而且一个这样的项目需要一个专门的团队来实现。项目中也包含许多随时都需要修改的组件不断的需要开发人员随时对应。 [4]

Hadoop是Apache软件基金会所研发的开放源码并行运算编程工具和分散式档案系统根据Google公司发表的MapReduce和Google档案系统的论文自行实作而成。

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

Hadoop 主要由HDFS(Hadoop Distributed File System)和MapReduce 引擎两部分组成。最底部是HDFS它存储Hadoop 集群中所有存储节点上的文件。HDFS 的上一层是MapReduce 引擎该引擎由JobTrackers 和TaskTrackers组成。虽然Hadoop自身由Java语言开发但它除了使用Java语言进行编程外同样支持多种编程语言如C++

学习方法:
        首先我觉得要思考这样一个问题: Hadoop对于我们来讲,是一种工具,那么Hadoop帮助我们解决了什么问题?或者换个角度想,没有Hadoop,我们做同样一项工作会增加什么任务?(想清楚了这问题,心里就会形成Hadoop到底是什么,能做什么的概念。初学者在最初时候很容易框架当成负担,但实际上他应该是工具。明白了Hadoop这个神器的美妙后,你就可以开始心怀期待的去慢慢驾驭它了。)
初学Hadoop,最基础的也就是HDFS和Mapreduce了,HDFS是一个分布式存储文件系统,Mapreduce是一个分布式计算的框架,两者结合起来,就可以很容易做一些分布式处理任务了。作为入门,先只需要学习这两样就够了。
好了,那就开始讲一下怎么学习这两样。
1、首先你肯定要搭建好环境。(这些网上教程很多。)然后,找一篇讲Hdfs java API的文章 HDFS API详解 把其中的例子跑一下,感受一下就可以了。(只需要只要有哪些API,大概怎么用,以后要用,直接在里面找,或者查看API文档。)
2、然后就是Mapreduce了。说简单一点,这就是一个编程接口,这个框架帮我们抽象了很多分布式处理的细节,我们只需要简单的编写mapreduce任务就可以了。要想编写mapreduce程序,首先你应该弄清楚mapreduce的基本流程 Hadoop -- MapReduce过程 ,然后要清楚,我们自己编程写mapreduce任务需要编写哪些东西(就是哪些部分是可以重写,应该重写的),这个可以参考刘鹏的《实战Hadoop》,里面细致的剖析了wordcount程序的运行过程,并说明了哪些函数是我们编程需要实现的。看懂了这些(最好要运行一些这些程序),你基本就可以写一些mapreduce程序,处理一些简单的任务了。(至于mapreduce高级运行,比如定制数据类型、patitioner、组合任务等等这些,你只要知道有这些就可以了,需要用的时候再仔细看。)

还有谷歌的那篇MapReduce_Simplified_Data_Processing_on_Large_Clusters可以多读几遍,可以解决你心中对于mapreduce框架的很多疑问。另外给个链接 MapReduce的核心资料索引

我觉得知道了这些,基本就是入门了。然后再要深入学习,你就可以根据自己的需要去学了(这个时候你应该也知道该怎么学了)。至于hadoop衍生的那些HIVE、Pig等等,我觉得只需要知道有那些东西,知道那些能做什么就可以了。因为我们的目的只是把Hadoop作为 工具 。如果是其他目的,你可以看看mapreduce源码分析之类吧。、

《从零开始学习Hadoop》一书完整pdf版在这里可以下载: http://vdisk.weibo.com/s/zK1F9hyOXkXvO/1383551752
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值