MapReduce是由Google提出並實現的編程模型,可利用大量機器所組成的集群處理或生成海量數據集。此外,由Yahoo!公司資助的Hadoop項目則是MapReduce的開源實現,在Facebook等大型應用中得到了廣泛使用。而現在,MySpace也將其MapReduce框架Qizmt開源了,可用於在大規模Windows集群上開發或運行分散式計算程序。
MySpace Qizmt可用於各種分散式計算場景,例如:
Qizmt的主要功能有:
- 使用C#快速開發MapReduce任務。
- 簡單的“自己動手(Do-It-Yourself)”安裝程序
- 內置集成開發環境/調試器
- 自動將堆分配標為紅色
- 為MapReduce任務的快速開發提供自動完成功能
- 在目標集群中對MapReduce任務進行單步調試
- 可在集群中的任意機器上:
- 為MapReduce任務提供“差值交換(Delta-only exchange)”選項
- 可配置的數據冗餘或機器級別的故障轉移
- 可輕易為集群增加機器以提高處理能力
- 集群程序集緩存(Cluster Assembly Cache),用於將.NET dll釋放為MapReduce任務
- 三種任務類型:
- MapReduce - 用於對大規模數據進行基於集合的處理
- 遠程 - 用於不適合MapReduce模型的問題
- 本地:- 用於組織一系列MapReduce和遠程任務
- 執行MapReduce過程中的三種數據交換方式
- 排序 - 在集群中對鍵/值對進行排序
- 分組 - 不將鍵/值對進行排序,而將它們發送到同一個歸併器(reducer)中
- 散列排序 - 排序隨機數據的超快方式
MySpace Qizmt項目現已發佈於Google Code,支持裝有.NET 3.5 SP1的Windows 2003 Server,Windows 2008 Server及Windows Vista操作系統。