我一直在向想转行做IT的朋友推荐去学习大数据,并不是说大数据学起来简单,而是从长远来看,大数据的发展前景十分乐观,各种机会以及相应回报也很多,掌握了大数据技术,就在IT行业站稳了脚跟。接下来我们就从几方面来说一说怎么学习大数据。
大数据介绍
大数据本质也是数据,但是又有了新的特征,包括数据来源广、数据格式多样化(结构化数据、非结构化数据、Excel文件、文本文件等)、数据量大(最少也是TB级别的、甚至可能是PB级别)、数据增长速度快等。
针对以上主要的4个特征我们需要考虑以下问题:
-
数据来源广,该如何采集汇总?,对应出现了Sqoop,Cammel,Datax等工具。
-
数据采集之后,该如何存储?,对应出现了GFS,HDFS,TFS等分布式文件存储系统。
-
由于数据增长速度快,数据存储就必须可以水平扩展。
-
数据存储之后,该如何通过运算快速转化成一致的格式,该如何快速运算出自己想要的结果?
对应的MapReduce这样的分布式运算框架解决了这个问题;但是写MapReduce需要Java代码量很大,所以出现了Hive,Pig等将SQL转化成MapReduce的解析引擎;
普通的MapReduce处理数据只能一批一批地处理,时间延迟太长,为了实现每输入一条数据就能得到结果,于是出现了Storm/JStorm这样的低时延的流式计算框架;