前言
在正式落地谈技术之前,先花一些篇幅说说大数据技术的发展史。我们常说的大数据技术,其实起源于Google在2004年前后发表的三篇论文,分别是分布式文件系统GFS、大数据分布式计算框架MapReduce和NoSQL数据库系统BigTable(如果大家需要可以留言给我,我可以专门解读一下)。
一、从搜索引擎开始
搜索引擎主要就做两件事情,一个是网页抓取,一个是索引构建,在这个过程中,有大量的数据需要存储和计算。当时的大数据其实就是用来解决这个问题的,一个文件系统、一个计算框架、一个数据库系统。
在2004年那会儿,Google发布的论文实在是让业界为之一振,大家恍然大悟,原来还可以这么玩。因为那个时间段,大多数公司在思考如何提升单机的性能,寻找更贵更好的服务器。而Google的思路是部署一个大规模的服务器集群,通过分布式的方式将海量数据存储在这个集群上,然后利用集群上的所有机器进行数据计算。
当时Lucene开源项目的创始人Doug Cutting正在开发开源搜索引擎Nutch,阅读了Google的论文后,他非常兴奋,紧接着就根据论文原理初步实现了类似GFS和MapReduce的功能。
两年后的2006年,Doug Cutting将这些大数据相关的功能从Nutch中分离了出来,然后启动了一个独立的项目专门开发维护大数据技术,这就是后来赫赫有名的Hadoop,主要包括Hadoop分布式文件系统HDFS和大数据计算引擎MapReduce。
Hadoop发布之后,Yahoo很快就用了起来。大概又过