好程序员分享自学大数据入门干货

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了好程序员分享自学大数据入门干货相关的知识,希望对你有一定的参考价值。

首先,提及大数据一词的概念。大数据本质还在于数据,但是它有着新的特征亮点。包括:数据来源广,数据格式多样化(结构化数据、非结构化数据、Excel文件、文本文件等)、数据量大(最少也是TB级别的、甚至可能是PB级别)、数据增长速度快等等。
技术图片

扩展讲大数据的4个基本特征,我们将进行下面额思考:

1.数据来源广?

广泛的数据来源从何而来,通过何种方式进行采集与汇总?相对应的我们出现Sqoop,

Cammel,Datax等工具。

在这里还是要推荐下我自己建的大数据学习交流群:529867072,群里都是学大数据开发的,如果你正在学习大数据 ,小编欢迎你加入,大家都是软件开发党,不定期分享干货(只有大数据软件开发相关的),包括我自己整理的一份最新的大数据进阶资料和高级开发教程,欢迎进阶中和进想深入大数据的小伙伴加入。

2.数据采集之后,该如何存储?

采集之后,为了方便存储,我们对应的出现了GFS,HDFS,TFS等分布式文件存储系统。

并且,介于数据的增长速度非常之快,这也就要求我们,数据存储必须可以进行水平扩展。

3.数据存储之后,该如何通过运算快速转化成一致的格式,又该如何快速运算出自己想要的结果?

对此,MapReduce的分布式运算框架提出了解决方案。但是由于MapReduce需要java的编程代码较多,由此,又出现了Hive,Pig等将SQL转化成MapReduce的解析引擎;再有,因普通的MapReduce只能一批一批地批量处理数据,时间消耗过多,最终目的又要求我们输入的一条数据就能得到结果,于是又出现了Storm/JStorm这样的低时延的流式计算框架;但是如果同时需要批处理和流处理,按照如上就得搭两个集群,Hadoop集群(包括HDFS+MapReduce+Yarn)和Storm集群,不易于管理,所以出现了Spark这样的一站式的计算框架,既可以进行批处理,又可以进行流处理(实质上是微批处理)。而后Lambda架构,Kappa架构的出现,又提供了一种业务处理的通用架构。

4.此外,为了提高工作效率,加快运速度,出现了一些辅助工具:

Ozzie,azkaban:定时任务调度的工具。

Hue,Zepplin:图形化任务执行管理,结果查看工具。

Scala语言:编写Spark程序的最佳语言,当然也可以选择用Python。

Python语言:编写一些脚本时会用到。

Allluxio,Kylin等:通过对存储的数据进行预处理,加快运算速度的工具。

以上是关于好程序员分享自学大数据入门干货的主要内容,如果未能解决你的问题,请参考以下文章

大数据分享

分享IT十八掌大数据

大数据入门小知识

好程序员大数据学习路线Hadoop学习干货分享

大数据学习方向,从入门到精通

大数据入门级学习攻略