在這種方法中,一個(gè)企業(yè)將有一個(gè)計(jì)算機(jī)存儲(chǔ)和處理大數(shù)據(jù)。對于存儲(chǔ)而言,程序員會(huì)自己選擇的數(shù)據(jù)庫廠商,如Oracle,IBM等的幫助下完成,用戶交互使用應(yīng)用程序進(jìn)而獲取并處理數(shù)據(jù)存儲(chǔ)和分析。
這種方式能完美地處理那些可以由標(biāo)準(zhǔn)的數(shù)據(jù)庫服務(wù)器來存儲(chǔ),或直至處理數(shù)據(jù)的處理器的限制少的大量數(shù)據(jù)應(yīng)用程序。但是,當(dāng)涉及到處理大量的可伸縮數(shù)據(jù),這是一個(gè)繁忙的任務(wù),只能通過單一的數(shù)據(jù)庫瓶頸來處理這些數(shù)據(jù)。
使用一種稱為MapReduce的算法谷歌解決了這個(gè)問題。這個(gè)算法將任務(wù)分成小份,并將它們分配到多臺(tái)計(jì)算機(jī),并且從這些機(jī)器收集結(jié)果并綜合,形成了結(jié)果數(shù)據(jù)集。
使用谷歌提供的解決方案,Doug Cutting和他的團(tuán)隊(duì)開發(fā)了一個(gè)開源項(xiàng)目叫做HADOOP。
Hadoop使用的MapReduce算法運(yùn)行,其中數(shù)據(jù)在使用其他并行處理的應(yīng)用程序??傊琀adoop用于開發(fā)可以執(zhí)行完整的統(tǒng)計(jì)分析大數(shù)據(jù)的應(yīng)用程序。