MPP是壹種海量數據實時分析架構。 MPP作為壹種不***享架構,每個節點運行自己的操作系統和數據庫等,節點之間信息交互只能通過網絡連接實現。MPP架構目前被並行數據庫廣泛采用,壹般通過scan、sort和merge等操作符實時返回查詢結果。目前采用MPP架構的實時查詢系統有EMC Greenplum、HP Vertica和Googl www.jdjdzj.com e Dremel,這些都是實時數據處理領域非常有特點的系統,尤其是Dremel可以輕松擴展到上千臺服務器,並在數秒內完成TB級數據的分析。
Hadoop作為壹個開源項目群本身和MPP並沒有什麽直接關系,Hadoop中的子項目MapReduce雖然也是做數據分析處理的,但是壹般只適用於離線數據分析,區別與MPP較為明顯。因為Map和Reduce兩個過程涉及到輸出文件的存取和大量網絡傳輸,因此往往達不到實時處理的要求。與MapReduce 相似的系統還有Microsoft Dryad和Google pregel。
綜上所述,NUMA是壹種體系結構,MPP是壹種實時海量數據分析架構,而Hadoop是壹個關於數據存儲處理的項目群,其中的MapReduce是壹種離線海量數據分析架構。
實測對比GreenPlum和Hive,GP比Hive性能高出至少壹個數量級,但是大部分場景下,依然是秒級甚至分鐘級的延遲,距離具體通常意義的實時毫秒級,差距巨大。
另外說壹句,廣義的Hadoop包括 Impala, Presto | Distributed SQL Query Engine for Big Data 這些MPP架構的SQL引擎。Hadoop社區還在持續發展,Spark還在持續給人們帶來驚喜,開源軟件的迷人之處也在於此。