文档章节

有2年开发经验,该如何学习Hadoop?

谁让你长得这么漂亮
 谁让你长得这么漂亮
发布于 2017/08/02 11:57
字数 1732
阅读 204
收藏 2

学习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开发?

作为过来人,我知道自己学一门技术很难。不知道该怎么开始,遇到问题得不到及时、准确的解决。这些困难无疑会打击人的信心,本来能够学会也因为某些原因放弃。

所以我希望能给大家分享一些有用的知识、信息。

我在逛论坛的时候认识了一位百度的大牛(目前T7级别),这代表什么我想圈里人都清楚。

他自己录制了一套大数据视频,视频内容包括Hadoop入门、Hadoop生态架构和Hadoop大型商业项目案例,每一个小节都有真实的项目用来实践,最后有一个完整、系统的大型项目用来练习整体开发能力。

这套视频的价值非常高,有很多刚毕业的人也是看这套视频学会的大数据开发并且找到了很好的工作。

现在这套视频可以免费分享给大家,如果你也想学大数据的话可以加ganshiyun666这个微信来获得视频。

请注明:OSC

各位不要觉得别人免费分享的资料没有价值,你不自己亲自去看你永远不知道错过了什么。

很可能你离学会大数据只差这一套视频,况且你只要跟这个人取得联系就可以免费拿到视频,而且你在微信上有绝对的主动权,对你百利而无一害。

 

© 著作权归作者所有

共有 人打赏支持
谁让你长得这么漂亮
粉丝 1
博文 1
码字总数 1732
作品 0
沧州
私信 提问
加载中

评论(2)

克虏伯
克虏伯
估计是培训学校的
干爷爷
干爷爷
我就在想为何要学这玩意
带掌握技能

Scrapy爬虫框架、Tornado框架 socket编程 appscan OpenCL Hadoop RabbitMQ zmq bt5,sqlmap,zap,burpsuite,WVS9.0,nmap 反编译原理,熟悉dalvik、smali 两年以上云开发(OpenStack)相关...

Jr小王子
2015/12/17
31
0
大数据开发工程师岗位分析

最近一年大数据火爆异常,各种培训班开课广告满天飞,很多做开发的朋友也想转到大数据这一行,在投递简历的时候进场被几个岗位搞迷糊,他们是大数据分析师,大数据研发工程师,大数据建模工程...

mulangren1988
2017/01/20
0
0
5年Java求坑

来北京2年快两年了,经历了两个坑,说多了都是泪,还好学到了技术。 Web:Spring、 Hebernate、Mybatis(熟练)前端技术也OK ,js,自学过nodejs BigData:Hadoop、Spark、scala(皮毛,写过...

GoogleFan
2017/01/18
3.9K
11
网易(163.com)北京网站部诚聘JAVA/PHP/Hadoop工程师

工作地点:北京海淀区清华科技园 工作性质:全职 招聘人数:若干 JAVA开发工程师 岗位职责: 1、网易内部系统、分布式系统的开发、维护、改进; 2、大型互联网web项目的设计、开发、优化 职位...

重出江湖
2011/07/30
736
2
诚聘Hadoop人才

我司因业务发展需要,现需招聘高级JAVA工程师一职,薪资视工作能力6K至15K。五天8小时工作制,五险一金,工作地点:中山。有意向者可将简历发至我信箱: 835146707@qq.com. 岗位要求: 高级j...

snow1985
2011/08/10
2.3K
11

没有更多内容

加载失败,请刷新页面

加载更多

新手也能看懂,消息队列其实很简单

该文已加入开源项目:JavaGuide(一份涵盖大部分Java程序员所需要掌握的核心知识的文档类项目,Star 数接近 16k)。地址:https://github.com/Snailclimb/JavaGuide. 本文内容思维导图: 消息...

阿里云官方博客
14分钟前
0
0
如何在Chrome浏览器中启动deviceready事件(尝试调试phonegap项目)?

我正在开发PhoneGap应用程序,我希望能够在Chrome中调试它,而不是在电话上调试。但是,我在onGetReady()函数中初始化我的代码,该函数在PhoneGap触发“deviceready”事件时触发。由于Chr...

kisshua
今天
9
0
nginx中部署vue打包后的静态文件

如何在nginx中部署静态资源就不描述了, 请看我的这篇博客 将vue脚手架项目打包后的静态文件放到nginx上, 发现有个问题, 即url上有#, 怎么去掉这个#呢. 1 项目中router的mode 路由的mode要为h...

克虏伯
今天
13
0
JS容易理解错误的地方

在这端代码执行的末尾,你会不会hi变量回事函数中的hi了?你会不会认为这不是按引用传递了? 对值传递和引用传递产生质疑了? 1 var hi = {};2 function sayHello(hi) { ...

器石_
今天
9
0
Java开发学习--MongoDB

之前只学过sql,第一次使用非关系型数据库。以前对于关系型数据库与非关系型数据库的概念很模糊,通过这次的学习对这两者有了一个清晰的概念。 主键 在MongoDB中,主键名叫"_id",如果在生成...

微笑向暖wx
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部