传统方法
在这种方式下,企业将使用一台计算机来存储和处理数据,处理所需的数据,并将其呈现给用户以供分析之用。在这里,数据将存储在RDBMS,如:Oracle数据库、MS SQL Server或DB2以及可以与数据库交互的复杂软件。
traditional_approach.jpg局限性
这种方法在标准数据库服务器可以容纳的数据量更少或处理数据的处理器的极限的情况下工作得很好。但是当涉及到处理大量数据时,通过传统的数据库服务器来处理这些数据确实是一项非常繁琐的任务。
Google的解决方案
谷歌使用MapReduce算法解决了这个问题。该算法将任务划分为多个小部分,并将这些小部分分配给通过网络连接的多台计算机,最后收集结果形成最终的结果数据集。
mapreduce.jpg上图显示了各种各样的商品硬件,这些硬件可以是单CPU机器,也可以是容量更大的服务器。
Hadoop
Doug Cutting、Mike Cafarella和团队采用了谷歌提供的解决方案,并在2005年启动了一个名为HADOOP 的开源项目,Doug以他儿子的玩具大象命名了这个项目。现在Apache Hadoop是Apache软件基金会的注册商标。
Hadoop使用MapReduce算法运行应用程序,数据在不同的CPU节点上并行处理。简而言之,Hadoop框架有足够的能力开发能够在计算机集群上运行的应用程序,并且能够对大量数据执行完整的统计分析。
hadoop_framework.jpg原文链接:https://www.tutorialspoint.com/hadoop/hadoop_big_data_solutions.html
网友评论