热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

初学hadoop的个人历程

  在学习hadoop之前,我就明确了要致力于大数据行业,成为优秀的大数据研发工程师的目标,有了大目标之后要分几步走,然后每一步不断细分,采用大事化小的方法去学习hadoop。下面

     在学习hadoop之前,我就明确了要致力于大数据行业,成为优秀的大数据研发工程师的目标,有了大目标之后要分几步走,然后每一步不断细分,采用大事化小的方法去学习hadoop。下面开始叙述我是如何初学hadoop的。

  Hadoop学习两步走:linux学习、hadoop学习。

  在接触hadoop之前我有java基础,为此我的计划是首先学习Linux,然后学习hadoop生态系统,为此学习hadoop第一步计划就是学习linux了,然后linux又可以分为四个步骤走。

  linux任务第一个目标就是要熟练操作linux常用命令以及网络配置;

  第二个目标就是熟悉用户以及权限管理操作;

  第三个目标就是熟悉软件包以及系统命令管理,第四个就是要学习shell编程了。

  Linux系统学习完毕之后,紧接着就是第二个计划了学习Hadoop。

  Hadoop阶段分两步走。

  第一阶段能熟练搭建伪分布式集群以及完全分布式集群,我个人认为先搭建hadoop环境然后再学习hadoop这样效果更好。就如同看别人代码一样,我们先把别人代码能跑起来,然后再分析代码,如果代码都跑不起来,何谈代码分析,所以先让hadoop环境搭建起来,能正常运行wordcount程序,我们才能慢慢分析整个Hadoop生态系统,这样我们能对hadoop有个整体上的认识。

  Hadoop第二阶段就是基于第一阶段的基础上,再细分几大阶段:

  首先第一阶段整体上认识hadoop生态系统,了解MapReduce分布式计算框架、Yarn集群资源管理和调度平台、hdfs分布式文件系统、hive数据仓库、HBase实时分布式数据库、Flume日志收集工具、sqoop数据库ETL工具、zookeeper分布式协作服务、Mahout数据挖掘库;

  第二阶段学习MapReduce,MapReduce作为hadoop核心内容,要先易后难,首先了解Mapper、Reducer、Configuration、job等这些类,熟悉MapReduce流程图,然后写简单的单词统计代码,整体上对MapReduce认识,之后学习MapReduce运行机制,熟练掌握,MapReduce输入格式,MapReduce输出格式,以及MapReduce优化;

  第三阶段学习hadoop另一个核心内容HDFS,首先明白什么是hdfs,然后再分析hdfs的优点,然后再了解Hdfs的缺点有哪些,HDFS是如何存储数据的,采用什么样的架构,我们如何实现读取和写入HDFS中的文件,以及了解HDFS副本存放策略,同时熟练掌握HDFS的shell访问和java访问。

  第三阶段就是学习hadoop另一个核心内容:Yarn,首先我们要了解Yarn是什么,为什么使用Yarn,Yarn的构架,Yarn的原理。我个人认为,hadoop初学者只要掌握了提供海量数据存储的HDFS,分布式计算的MapReduce,以及集群资源管理和调度平台的yarn,基本上也就掌握了Hadoop最核心的东西,也为以后的hbase、hive学习打下了坚实的基础。

  以下是我个人初学hadoop学习历程的思维导图,仅供参考。

        初学hadoop的个人历程

 

转载:http://www.chinacloud.cn/show.aspx?id=24165&cid=22


推荐阅读
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • Hadoop源码解析1Hadoop工程包架构解析
    1 Hadoop中各工程包依赖简述   Google的核心竞争技术是它的计算平台。Google的大牛们用了下面5篇文章,介绍了它们的计算设施。   GoogleCluster:ht ... [详细]
  • 《Spark核心技术与高级应用》——1.2节Spark的重要扩展
    本节书摘来自华章社区《Spark核心技术与高级应用》一书中的第1章,第1.2节Spark的重要扩展,作者于俊向海代其锋马海平,更多章节内容可以访问云栖社区“华章社区”公众号查看1. ... [详细]
  • 我们在之前的文章中已经初步介绍了Cloudera。hadoop基础----hadoop实战(零)-----hadoop的平台版本选择从版本选择这篇文章中我们了解到除了hadoop官方版本外很多 ... [详细]
  • Java开发实战讲解!字节跳动三场技术面+HR面
    二、回顾整理阿里面试题基本就这样了,还有一些零星的问题想不起来了,答案也整理出来了。自我介绍JVM如何加载一个类的过程,双亲委派模型中有 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • IT方面的论坛太多了,有综合,有专业,有行业,在各个论坛里混了几年,体会颇深,以前是论坛哪里人多 ... [详细]
  • 本文介绍了在Ubuntu下制作deb安装包及离线安装包的方法,通过备份/var/cache/apt/archives文件夹中的安装包,并建立包列表及依赖信息文件,添加本地源,更新源列表,可以在没有网络的情况下更新系统。同时提供了命令示例和资源下载链接。 ... [详细]
  • 一次上线事故,30岁+的程序员踩坑经验之谈
    本文主要介绍了一位30岁+的程序员在一次上线事故中踩坑的经验之谈。文章提到了在双十一活动期间,作为一个在线医疗项目,他们进行了优惠折扣活动的升级改造。然而,在上线前的最后一天,由于大量数据请求,导致部分接口出现问题。作者通过部署两台opentsdb来解决问题,但读数据的opentsdb仍然经常假死。作者只能查询最近24小时的数据。这次事故给他带来了很多教训和经验。 ... [详细]
  • Azkaban(三)Azkaban的使用
    界面介绍首页有四个菜单projects:最重要的部分,创建一个工程,所有flows将在工程中运行。scheduling:显示定时任务executing:显示当前运行的任务histo ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 数据挖掘研讨课结束了,这门课的考核方法是每个同学根据班里面同学的课堂表现打分,然后老师再取截断平均值作为最后的分数。于是我就想,能否用p ... [详细]
author-avatar
帅哥大香蕉
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有