如何开始学习 Hadoop?
Posted twt企业IT社区
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何开始学习 Hadoop?相关的知识,希望对你有一定的参考价值。
Hadoop是一个由Apache基金会所开发的分布式系统基础架构,他从0.x版本到现在的3.0版本,经历了各种变化。但是变化中有不变的是他的主要功能就是Hdfs(分布式文件存储) ,Mapreduce(分布式并行计算框架)。
其中,Hdfs主要是用来进行文件的存储,他涉及文件存储不同压缩方式,文件存储在各个节点是否均衡等。
Mapreduce用来并行计算数据,他通过简单的Mapper,combine,parttion,reducer的过程对批量的数据进行了格式化,排序等处理,他涉及mapper个数,重写combine,partition,reducer的个数等。
我们要对Hadoop有个初步的认识,才能为我们进一步研究别的大数据框架做好准备。
先谈一下如何才能进行hadoop入门——
学会一门语言最好学习java,因为hadoop框架大部分是java编写的。然后可以深入了解一下java NIO,多线程编程,jvm的原理等。
系统层面学会使用linux的基本shell命令,比如vi、cat、grep、scp等,因为你学习hadoop得首先会安装hadoop。
到网上观看一些免费的hadoop培训视频,很多网上的培训老师讲的还是很不错的,我们可以参照他们的视频从本地的hadoop Mapreduce的环境搭建,然后尝试编写mapreduce进行打包运行。
当你对hadoop应用编程层面没有疑问的时候,可以尝试去深入了解mapreduce的核心思想,尤其是map,shuffle,join,reduce等。
再总结一下Hadoop入门的学习中可能遇到的问题——
1.常用Mapreduce进行数据处理的场景包括哪些?
- 文件统计行数
- 抽取文件中每行特定的字符或者对某个字段进行规整
- 对结构化文件的特定字段进行排序
- 文件之间进行关联
- 统计文件包含特定字符的个数等
2.在Hadoop使用中,应该如何诊断和分析故障?
对于新手而言,可以从hadoop区分为hdfs mapreduce两块去对异常进行分类,然后可以百度看一下解决方式。当对hadoop有一定了解之后,可以通过异常的提示,结合自己对框架本身的理解去尝试定位问题。
点击阅读原文到社区Hadoop主题,还有更多你感兴趣的文章、问答、资料
欢迎大家将在学习hadoop过程中将碰到的问题放到twt网站进行探讨
以上是关于如何开始学习 Hadoop?的主要内容,如果未能解决你的问题,请参考以下文章