大数据时代:如何赢得竞争优势

我们已经进入了“大数据时代”,2011 IDC Digital Universe报告说,数据增长的速度已经超过了摩尔定律(Moore's Law)。这种趋势表明企业处理数据模式的转变,即隔离的孤岛正在被大型集群服务器所取代,这种服务器集群将数据与计算资源保存在一起。

从另一种角度来看这种模式转变,这种转变表明数据增长的速度和数据量需要一种新的网络计算方法。在这方面,谷歌就是一个很好的例子。早在1998年谷歌推出测试版搜索引擎时,雅虎公司占主导地位,其他竞争者还包括infoseek、Lycos等,而在短短两年内,谷歌就成为主导搜索引擎供应商。直到2003年,谷歌发布一份关于MapReduce的文件,我们才有幸窥见到谷歌的后端架构。

谷歌的架构显示了该公司如何能够索引更多数据,以更快地获得搜索结果,以及比所有竞争对手更有效和更具成本效益地获取这些结果。谷歌做出的转变是将复杂的数据分析任务分成简单的子任务,这些子任务在并行商品服务器中执行。单独进程被用于映射Map这些数据,然后将其缩小Reduce到中期或最终结果。这种MapReduce框架最终通过Apache的Hadoop供企业使用。

Hadoop简史

在2003年阅读了谷歌的文件后,雅虎工程师Doug Cutting开发了基于Java的MapReduce,将其命名为Hadoop。在2006年,Hadoop成为Apache软件基金会Lucene(一种流行的全文检索库)的子项目,并在2008年成为顶级Apache项目。

从本质上讲,Hadoop提供了对大型商品计算机集群间的捕捉、组织、存储、搜索、共享、分析和可视化不同数据源(结构化、半结构化和非结构化),并能够从几十台服务器扩展到上千台服务器,每台服务器都提供本地计算和存储。

Hadoop包含两个基本组成部分:首先是作为主要存储系统的Hadoop分布式文件系统(HDFS),HDFS复制和分发源数据块到服务器集群的计算节点,以由一个或多个应用程序进行分析。其次是MapReduce,它创建了一个软件框架和编程模型,用于编写能够并行处理大量分布式数据的应用程序。