+发表新主题
查看: 801|回复: 1

学习Hadoop,需要学习哪些基本技术,主要的学习路线是什么?

[复制链接]

学习Hadoop,需要学习哪些基本技术,主要的学习路线是什么?

[复制链接]
木马童年 发表于 2018-4-10 16:58:56 浏览:  801 回复:  1 [显示全部楼层] 回帖奖励 |倒序浏览 |阅读模式
2018-04-10_165823.png       

    大数据这么火,想学习Hadoop,具体的学习路线是什么?

回复

使用道具 举报

265

主题

593

帖子

2965

积分

网站编辑

Rank: 8Rank: 8

积分
2965
木马童年
 楼主|
发表于 2018-4-10 16:59:16 显示全部楼层
Hadoop其实所负责的主要有存储、计算和处理,说到底Hadoop只是一项分布式系统的工具,我们在学习的时候,要充分理解分布式系统设计中的原则及方法。
学习的时候不要害怕遇到问题,问题是最好的老师,其实学习的过程就是解决问题的过程,Hadoop具体的学习路线主要分为以下几步:
   1.掌握Linux的安装及基本操作、Python安装及编程基础、java基础,需要学习Linux的常用命令、基本网络配置、进程管理、shell语法;Python的常用语法,能够基于Python搭建一个常用的Server服务器和java的基础知识;
   2.搭建Hadoop分布式环境,在自己的电脑上安装Linux,然后准备环境nat配置,搭建Hadoop集群先让Hadoop在自己的电脑上跑起来;
   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.学习Zookeepr分布式协作服务,学会数据管理的树形结构,学会根据应用场景选择不同类型的节点、节点权限管理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.学习Spark开发技术,要能够熟练使用MLLib,能够自己开发Scala的Spark任务,完成表格join、连接和文本中过滤等。
  11.学习推荐系统,要掌握主流的推荐算法,Content Base、Collab Filter。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则