学习hadoop,首先我们要知道hadoop是什么?

说到底Hadoop只是一项分布式系统的工具,我们在学习的时候要理解分布式系统设计中的原则以及方法,只有这样才能以不变应万变。再一个就是一定要动手,有什么案例,有什么项目一定要亲自动手去敲。

学习的时候不要害怕遇到问题,问题是最好的老师。其实学习的过程就是逐渐解决问题的过程,当你遇到的问题越来越少的时候,就说明已经学的差不多了。

下面说一下hadoop的学习路线。

1.我们要掌握Linux的安装及基本操作、Python安装及编程基础、java基础。

需要学习Linux的常用命令、基本网络配置、进程管理、shell语法;Python的常用语法,能够基于Python搭建一个常用的Server服务器和java的基础知识。

这时候只需要掌握基础即可,后边遇到问题再学习,这样才不会混乱,学的才扎实。

2. 搭建Hadoop分布式环境

我们要做的是在自己的电脑上安装Linux,然后准备环境nat配置,搭建Hadoop集群先让Hadoop在自己的电脑上跑起来。使用VMware来搭建。

这时候我们会Host配置、IP配置、SSH免密登录等。

3.学习HDFS分布式文件系统

这一步要学习架构分析、容灾容错策略、local数据策略、数据块概念、机架感应,功能逻辑实现等。要真正的去敲敲,掌握Linux下HDFS Shell常用命令的使用。

4.学习MapReduce计算框架

MapReduce是Hadoop核心编程模型。在Hadoop中,数据处理核心就是MapReduce程序设计模型。这一步需要学的东西很多,大家一定要有耐心,把MR的知识学牢固。

首先我们需要学习MR的基本原理、任务执行流程、Shuffle策略。自己动手写一个MR任务,来实现wordcount。然后要学习表单join、表单查询、数据清洗、全局排序、多目录输入输出、自定义partition分区,掌握二分法算法。

接下来学习自然语言处理方法(NLP),掌握如何提取关键词,TF-IDF算法。这里我们可以实践一下,统计文本中的词频。

学习中文分词,分词的质量直接影响数据挖掘的质量。

5.学习Strom流式计算

Storm是一个开源分布式实时计算系统,它可以实时可靠地处理流数据。

这一步我们要知道Hadoop和Storm的区别,知道他们如何进行互补。了解Storm的体系架构、Zookeeper在架构中的作用和数据流处理的过程。弄懂Storm的工作原理和核心组件(Spout、Bolt)

6.学习Zookeeper分布式协作服务

这一步我们学会数据管理的树形结构,学会根据应用场景选择不同类型的节点、节点权限管理ACL和监控机制。学会Zookeeper开源自带Client工具的Shell使用,开发java代码实现不同类型的节点进行新建、修改、删除和节点的监控。

7.学习数据仓库工具Hive

这一步要了解Hive的体系架构和其与mysql的对比。要掌握Mysql的基本知识、系统搭建标准SQL语(增删查改)。

8.学习分布式存储系统Hbase

这一步要掌握Hbase的体系架构(HMaster、HRegionServer、HStore、HFile、HLog),物理存储、数据逻辑存储、核心功能模块。

细化一点要掌握Hbase表结构设计、Shell操作(增删查改)、javaAPI操作、数据迁移、备份与恢复。与MR结合实现批量导入与导出,与Hive结合使用,集群管理和性能调优。

9.学习Spark

这一步要掌握SPark的编程模型、运行框架、作业提交、缓存策略、RDD、MLLib。

10.学习Scala语言

这一步要掌握Scala的常用语法、函数、元组等操作,不熟Spark。

11.学习Spark开发技术

这一步要能够熟练使用MLLib,能够自己开发Scala的Spark任务,完成表格join、连接和文本串过滤等。

12.学习推荐系统

前面我们学了那么多,最终所学的技术要能落地,我学的是现在主流的推荐系统,现在各大公司都需要这方面的人才。

这一步我们可以找一些案例在学习,要掌握主流的推荐算法,Content Base、Collab Filter。

a.学习基于MR的协同过滤算法

b.学习Mahout,掌握Mahout的适用场景、环境搭建与部署。

学习基于Mahout的协同过滤算法,与MR进行效果对比。

C.学习基于Spark的协同过滤算法

到这里,按照上边的路线认真学习,肯定能学好hadoop开发,在学习的时候一定要亲自动手去敲,要去不断的尝试,把看到的知识尽快转化为自己的技能,这样才能高效率的学会hadoop,学任何一门技术都是一样,需要实际动手。

hadoop学习路线的更多相关文章

  1. Hadoop 学习路线

    大数据实时计算工程师/Hadoop工程师/数据分析师职业路线图 描述 本路线图是一个专门针对大数据实时处理.Hadoop工程师和数据分析师所设计的课程体系介绍,在实时计算方向主要包括了从数据收集框架. ...

  2. [hadoop]hadoop学习路线

    1.主要学习hadoop中的四大框架:hdfs.mapreduce.hive.hbase.这四大框架是hadoop最最核心的,学习难度最大的,也是应用最广泛的. 2.熟悉了解hadoop基本知识及其所 ...

  3. hadoop学习路线(转)

    刚刚入门hadoop,如何去学习hadoop.google一篇学习路线图,与童鞋们共勉: 转自:http://blog.csdn.net/zhoudaxia/article/details/88017 ...

  4. 大数据学习路线copy自淘宝

    一.hadoop视频学习(入门到精通) 二.数据挖掘(入门到精通) 三.Hadoop学习路线 1.开发前期准备 首先,如果你没有Java和Linux基础,建议你先简单学一下这两门课程,此宝贝里面都为你 ...

  5. Hadoop入门学习路线

    走上大数据的自学之路....,Hadoop是走上大数据开发学习之路的第一个门槛. Hadoop,是Apache的一个开源项目,开发人员可以在不了解分布式底层细节,开发分布式程序,充分利用集群进行高速运 ...

  6. Hadoop生态系统学习路线

    主要介绍Hadoop家族产品,经常使用的项目包含Hadoop, Hive, Pig, HBase, Sqoop, Mahout, Zookeeper, Avro, Ambari, Chukwa.新添加 ...

  7. 一位资深程序员大牛给予Java初学者的学习路线建议

    java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议?今天我是打算来点干货,因此咱们就不说一些学习方法和技巧了,直接来谈 ...

  8. Hadoop学习路线图

    Hadoop家族产品,常用的项目包括Hadoop, Hive, Pig, HBase, Sqoop, Mahout, Zookeeper, Avro, Ambari, Chukwa,新增加的项目包括, ...

  9. 一位资深程序员给予Java初学者的学习路线建议

    一位资深程序员给予Java初学者的学习路线建议 java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议?今天我是打算来点干 ...

随机推荐

  1. Excel--截取所需内容

    如上图,需截取*号后的数字,那么公式怎么写: 1.使用Find和Mid函数: FIND:获取指定字符所在字串的位置: MID:截取字串中的子串. 写法: 2.也可以使用Replace函数代替mid函数 ...

  2. Dell Inspiron 620 / Vostro 260 BIOS 开启 AHCI 模式

    1.Dell Vostro 260 台式机,WIN7 旗舰版   2.登陆 DELL 官方支持站点,获取 MS-A10.exe 安装文件   3.从网络中获取 AMIBCP.exe 工具,双击打开此程 ...

  3. JVM垃圾回收器

    JVM堆内存 -Xms和-Xmx:用于设置堆内存的大小 -XX:NewSize和-XX:MaxNewSize :用于设置年轻代的大小,建议设为整个堆大小的1/3或者1/4,两个值设为一样大. -XX: ...

  4. PTA币值转化

    include<stdio.h> include<math.h> int n,s=0; int main(void){ int i,j,k,p=1,flag=1; int f( ...

  5. oracle修改sequence,查询sequence信息

    -- 1.查询sequence当前值. select serviceproviderid.nextval from dual; -- 2.查询sequence最大值SELECT SEQUENCE_NA ...

  6. 学习oracle存储过程

    --创建存储过程create or replace procedure BCPS.getApplyDate(applyno varchar2)as a_date date;begin select a ...

  7. package.json文件解析

    1.用途:管理你所安装的npm包的依赖,在开发过程中能清楚的查询安装的包的版本以及项目中使用的包依赖,便于开发组成员共享. 2.创建:可以手动创建也可以通过npm init 自动创建. 3.配置项: ...

  8. redis-cli显示中文

    在启动redis-cli时在其后面加上--raw参数即可启动后 再显示就正常了

  9. 图表相同数据会自动合并问题(finereport)

    finereport中,对于图表的操作,当遇到需要显示多个重复分类下的多个值时,由于自动合并相同数据,无法达到效果反复查询手册无果后,困扰好久,终想到了一个解决的办法:1.给查询的数据添加个列序号,每 ...

  10. python3 lcs 最大公共子序列

    抛出问题: 假定字符串 s1 = 'BDCABA', s2 = 'ABCBDAB',求s1和s2的最大公共子序列. 问题分析: 我们想要求出s1和s2的最大公共子序列,我们可以用c(i,j)表示s1( ...