2013-01-15 124 views
2

我正在尋找.net分佈式映射/減少框架。我打算使用它來進行實時數據查詢並且在多個節點上並行處理查詢。我目前正在使用WCF進行Web層和應用層之間的通信。分佈式映射/減少框架

例如,如果我有5個節點的內存數據。如果我將過濾器傳遞給5個節點。過濾器在節點所具有的大量數據上執行,並且結果減少回到最終答案。

只是想知道如果已經有一個框架可以映射作業,並減少結果。我看起來更像是暴風雨中的Nimbus(Twitter實時地圖/縮小)。由於許多複雜因素,不能使用靈氣。 Zookeeper的開銷太大。

我試圖實現以下使用框架 1)將作業(主要是發送到所有可用節點的請求)映射到可用節點並減少結果。 2)在故障轉移時將作業映射到新節點。 3)管理羣集。 (如果一個節點關閉從可用服務器列表中刪除)

的數據將在內存中,所以我並不需要一個分佈式文件系統。如果有其他框架(任何語言),使用WCF作爲下面的通信.NET將是理想的。請讓我知道。

任何幫助(框架,代碼項目,研究論文,實際的代碼:))將不勝感激。

回答

0

不確定你對nimbus/zookeeper的評論意味着什麼,因爲這些是管理組件。

Storm確實適合您的用例,但其他人也喜歡Hazelcast。我需要更多關於您的需求的信息,以查看哪些解決方案可能適合。

我想其中一個重要的問題就是你的意思是實時。如果您只需要很短的響應時間並需要處理大量數據,則Hazelcast可能會更好。如果你有非結構化數據,你必須快速解析/處理並提供給用戶,那麼Storm可能更適合。

+0

謝謝Enno Shioji。 Hazelcast與我正在尋找的東西很接近。我通過例如實時意味着如果用戶點擊一個儀表盤,並說有儀表盤上的4個圖表,如果我們有羣集上4個節點的工作被映射到4個節點(每個節點處理一個圖)和結果( 4個圖表)縮減回儀表板。我正在尋找跟蹤羣集中的可用節點並將作業映射到它們的框架。 –