阿里封神谈hadoop学习之路

 

封神 2016-04-14 16:03:51 浏览3283 评论3 发表于: 阿里云E-MapReduce >> 开源大数据周刊

hadoop 学生 spark

摘要: 在大数据时代,要想个性化实现业务的需求,还是得操纵各类的大数据软件,如:hadoop、hive、spark等。笔者(阿里封神)混迹Hadoop圈子多年,经历了云梯1、ODPS等项目,目前base在E-Mapreduce。在这,笔者尽可能梳理下hadoop的学习之路。

引言

当前,越来越多的同学进入大数据行业,有的是底层的技术,有的是工程,有的是算法,有的是业务。每个产品、都需要工程化的实现,以前,工程师都是操练着java/python/c等各种语言操纵中各类的软件,比如jquery,spring、mysql,实现产品的业务逻辑。在大数据时代,要想个性化实现业务的需求,还是得操纵各类的大数据软件,如:hadoop、hive、spark、hbase、jstorm等。笔者(阿里封神)混迹Hadoop圈子多年,经历了云梯1、ODPS等项目,目前base在E-Mapreduce。在这,笔者尽可能梳理下,本文是围绕hadoop的。对于算法、机器学习是另一个范畴,本篇不涉及,不过从事机器学习算法的研发,能力最好在中级之上。

要想成为专家,并未一朝一夕,需要自己在业余时间花费较多的时间,我们一起加油!

初级

开始接触hadoop,最好还是有语言工程等相关的基础。如果工程能力、思维能力比较强,其实学习起来很快的。

  • 自己直接写一些mapreduce、spark相关的代码去解决一些业务问题
  • 熟悉hadoop的基本理论知识
  • 多看看官方的文档
  • 知晓大体的hadoop体系架构,每个角色能解决的问题
  • 最好能体系的看下《Hadoop权威指南》

中级

这个阶段,基本就是想进一步了解hadoop本身的

  • 前提开发能力较强,比如:java能力
  • 熟悉ETL/流失计算/图计算/机器学习各种原理
  • 看一些社区hadoop的代码,出现问题能直接看源码解决
  • 能去优化hadoop的一些性能问题,知晓大体性能的瓶颈点
  • 可以改造内核,或者参与社区开发
  • 有较多的大数据的项目经验,做过复杂项目
  • 可以看下更多的1-2个计算引擎

高级

在这个阶段,一般书籍就没有太多的用处,一般需要看看paper

  • 修改各种引擎的核心代码,这些包括:hadoop/spark/flink/strom/hive/hbase/kafka/等
  • 学习力强,可以迅速看清楚各种框架
  • 有较强的分布式理论知识
  • 能触类旁通,创新出一套新的大数据引擎,比如:spark
  • 能前瞻性预测未来引擎发展方向

建议

  • 最好的学习方式是:动手,动手写code
  • 多参加技术会议,融入hadoop圈子,如:hadoop submit,spark submit,有时候一些城市会有一些交流会
  • 关注Clouderadatabricks阿里云E_MapReduce 等博客
  • 多关注一些群,可以加笔者的微信(fengshenwukong),笔者拉下
  • 多关注一些圈子内的微博号或者同学,可以从笔者的微博关注里面找(笔者的微博号:阿里封神
  • 关注你关注的软件的邮件列表
  • 多写写博客,分享自己的心得,把知识沉淀下来
  • 多关注社区的发展

推荐的资料

hadoop生态资料太多,google一下一大把,笔者这里列出的都是基本的:
首先推荐《hadoop权威指南》,基本会讲述hadoop生态的各个组件,是不错的书籍。
再次就是各个软件的官方文档,例如:hadoopsparkkafka

Hadoop基础及ETL

主要包括Hadoop Yarn、HDFS、Hadoop MapReudce、Hive、Spark SQL等

流式实时处理技术

主要包括Jstorm、Spark Streaming

大数据KV、MPP领域

主要包括的是Hbase、Impala

本文章后续会继续更新,欢迎大家关注!

版权声明

笔者微博:阿里封神 欢迎转载,但请保留原文地址

阿里封神谈hadoop学习之路的更多相关文章

  1. 《Hadoop学习之路》学习实践

    (实践机器:blog-bench) 本文用作博文<Hadoop学习之路>实践过程中遇到的问题记录. 本文所学习的博文为博主“扎心了,老铁” 博文记录.参考链接https://www.cnb ...

  2. 小强的Hadoop学习之路

    本人一直在做NET开发,接触这行有6年了吧.毕业也快四年了(6年是因为大学就开始在一家小公司做门户网站,哈哈哈),之前一直秉承着学要精,就一直一门心思的在做NET(也是懒吧).最近的工作一直都和大数据 ...

  3. (转)如何学习Java技术?谈Java学习之路

    51CTO编者注:这篇文章已经是有数年“网龄”的老文,不过在今天看来仍然经典.如何学习Java?本篇文章可以说也是面对编程初学者的一篇指导文章,其中对于如何学习Java的步骤的介绍,很多也适用于开发领 ...

  4. 我的hadoop学习之路

    Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS.HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上. Ha ...

  5. 浅谈iOS学习之路(转)

    转眼学习iOS已经快两年的时间了,这个路上有挫折也有喜悦,一步步走过来发现这个过程是我这一辈子的财富,我以前的老大总是对我说,年轻就是最大的资本(本人91年),现在才算是慢慢的体会到,反观自己走过的这 ...

  6. 浅谈iOS学习之路

    转眼学习iOS已经快两年的时间了,这个路上有挫折也有喜悦,一步步走过来发现这个过程是我这一辈子的财富,我以前的老大总是对我说,年轻就是最大的资本(本人91年),现在才算是慢慢的体会到,反观自己走过的这 ...

  7. Linux学习笔记(Ubuntu操作系统)之hadoop学习之路

    1:检查虚拟机的ip命令:ifconfig 2:普通用户切换root用户命令:su 3:root用户切换普通用户命令:su 用户名 4:普通用户执行系统执行前面加命令:sudo 5:查询主机名命令:h ...

  8. Hadoop学习之路(十二)分布式集群中HDFS系统的各种角色

    NameNode 学习目标 理解 namenode 的工作机制尤其是元数据管理机制,以增强对 HDFS 工作原理的 理解,及培养 hadoop 集群运营中“性能调优”.“namenode”故障问题的分 ...

  9. Hadoop学习之路(十一)HDFS的读写详解

    HDFS的写操作 <HDFS权威指南>图解HDFS写过程 详细文字说明(术语) 1.使用 HDFS 提供的客户端 Client,向远程的 namenode 发起 RPC 请求 2.name ...

随机推荐

  1. Java [leetcode 12] Integer to Roman

    题目描述: Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range fr ...

  2. stm32 DAC输出音频

    #define DAC_DHR8R1_Address 0x40007410 // Init Structure definition DAC_InitTypeDef DAC_InitStructure ...

  3. Ubuntu上搭建Watir-Webdriver与Cucumber环境

    本文主要演示如何在Ubuntu上搭建Watir-Webdriver与Cucumber环境,用于自动化测试. 1. Ubuntu环境 A. 安装 因为我的工作机是Windows,所以采用虚拟机的方式使用 ...

  4. duilib中ListCtrl控件的实现

    转载请说明出处,谢谢~~ 昨天在编程群里聊天,提到了ListCtrl,然后有网友找我,他需要做一个ListCtrl控件,我看过需求后接下了这个活.今天就把大致的思路和过程记录一下.首先看<任务书 ...

  5. 【原】Redis-LRU缓存

    Redis高级篇 Redis-LRU缓存 将Redis作为缓存使用时,有时添加新数据时,旧数据是很难被清空的. LRU(Least Recently Used) 近期最少使用算法是常用算法之一. 最大 ...

  6. ThoughtWorks(中国)程序员读书雷达 —— 书籍下载整理

    ThoughtWorks(中国)程序员读书雷达 http://agiledon.github.io/blog/2013/04/17/thoughtworks-developer-reading-rad ...

  7. tar常用解包

    (1)常见解压缩包 .tar解包 tar -xvf  xxxx.tar 打包 tar -cvf xxxx .tar.bz2解包 bzip2 -d  xxxx.tar.bz2        #会解压成. ...

  8. 2016"百度之星" - 复赛(Astar Round3) 1003 拍照

    拍照 思路:先静态,离线树状数组,分别统计每个点向左向右能看到的船的数量.再枚举整个区间求最大值. 应为人和船都是动态的,假设船往左走,处理每个点看到向左最大船的数量,满足动态条件.就是向左的船一开始 ...

  9. CUDA网格限制

    如图

  10. 【转载】linux strace

    简介 strace常用来跟踪进程执行时的系统调用和所接收的信号. 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核 ...