我现在有一台笔记本,配置是酷睿i5、4G内存、500G硬盘。很难想象自己的第一台电脑的配置是奔腾3、512M内存、20G硬盘。那时候,自己的20G硬盘还有很多空闲。现在,各种软件、电影、音乐、教学视频让我500G的硬盘空间也装不下了。互联网的发展,产生的数据越来越多,不仅包括结构化的可以存储在数据库中的数据,也包括网页、电子邮件、短信、微博、日志等半结构化、非结构化的数据。互联网上,每天推特发布消息约3.4亿条,新浪微博用户发博量超过1亿条,百度大约要处理数十亿次搜索请求,淘宝网站的交易达数千万笔,联通的用户上网记录一天达到10TB(1TB=1024GB)。这一切表明,大数据时代已经到来!
什么是大数据哪?看一下大数据的4V特点吧。
Volume容量大。只有几(十)GB的数据不能称为大数据,这样的数据在传统的RDBMS中就可以处理。当数据达到几百GB,甚至TB级别时,RDBMS甚至数据仓库就处理不了了。这就是大数据。
Variety 类型多样。数据的异构(不同的数据结构)、多样也是大数据的特点,比如日志、文本、word、pdf、ppt、excel、jpg、gif、avi等各种图、文、音频、视频文件。这些文件类型是传统的RDBMS处理不了的,也没有办法检索、分析。
Velocity 访问迅速。数据是企业的命脉,数据必须被快速处理,这正是传统的RDBMS的优势所在。但是在海量数据面前,RDBMS就无能为力了。
Value 价值密度低。最有价值的数据已经被转换处理为结构化数据,存储在数据库、数据仓库中。对于海量的价值密度低的大数据,向来不是数据库关注的对象。但是海量的大数据并不是没有价值的,比如长尾理论、“啤酒与尿布”,都是基于大数据产生的商业价值。因此提炼大数据中的商业价值是一个企业新的增长点,被越来越多的企业重视。
上面的4V带来了大数据的难以存储、难以管理、难以利用的难题。怎么办?hadoop出场了!
数据是存储在磁盘介质中的,海量的数据必然存储在海量的磁盘中。这么多的磁盘已经超出了Windows、Linux等操作系统的文件管理能力,因此产生了分布式的文件管理系统,即DFS(Distributed File System)。分布式文件管理系统是用来管理分布在众多磁盘中的数据。分布式文件系统需要考虑分布式的读、写、检索、数据一致性、磁盘故障、冗余等问题。hadoop的hdfs就是一个分布式的dfs,专门用于在分散的磁盘中存储海量数据。
数据被存储,那是档案馆干的事情,这可不是企业想干的事情。数据只有被利用,产生出商业价值才是有意义的。那么就需要对大数据进行检索、查询,做各种变换,这统统称之为“计算”。最常见的计算就是去重、排序。有人想,这有什么难事,找台高性能的服务器跑就行了。其实没那么简单,因为磁盘的寻址时间、磁盘I/O、网络I/O,相对于大数据而言,是非常大的开销。我们想了个办法:把海量数据分成小块,让一台机器处理一小块数据,所有的机器同时工作。最后把结果汇总起来。这就是“并行计算”。hadoop中的MapReduce就是专门用来做分布式计算的并行处理框架。 看到了吧,hadoop就是用来解决大数据的存储和计算的。
现在,国际互联网巨头,如谷歌、雅虎、推特、脸谱等都已经使用大数据。其中谷歌就是鼻祖。在国内,hadoop的应用也越来越多,互联网公司如百度、淘宝、腾讯、新浪、搜狐早在多年前就已经在处理大数据。传统的行业,如电信、金融、银行等也开始重视大数据的商业价值。
这么多的企业在使用大数据,那么对大数据人才的渴求越来越强烈,但是懂hadoop的人才却非常少。因此这类人的薪水是相当高的。下图是我在前程无忧招聘网站查询hadoop职位时得到的搜索结果,可以看到大部分职位的月薪都在10k以上。月薪超过20k的职位也有很大比重。
下图是我对查询结果的一个截图,可以看到hadoop工程师的待遇还是很高的,几乎都在年薪20W以上。
在hadoop人才稀缺的时候,您掌握了这门技术,想一想那是什么结果?怎么样,心里乐了吧?
同学们,还等什么,赶快学习hadoop课程吧!
注:本文转自传智播客、黑马程序员hadoop讲师吴超老师blog
|