argongroup 寫:
1.對於要如何讓hadoop能夠run c#的程式這部分不是很清楚
老闆的想法是 將hadoop灌在window上 讓window的當tasktracker
但是目前好像大部份都是使用linux環境下執行hadoop居多
所以請教一下各位前輩,可以給我一點建議嗎? 現在沒什麼方向
2.就我對hadoop的平行運算的概念,是建立在mapreduce上 每次map任務執行完 產生<key,value>,再由reduce任務合併起來
如果我想要將30張圖分給三個tasktracker做,我是不是得去改寫原本c#的程式中的演算法,讓他產生符合mapreduce標準格式的輸入/輸出
謝謝各位前輩看完,任何建議都可以!! 感謝!!
1. 要看 C# 程式能否在 Linux 下用
Mono 執行。有時候比較擔心的是一些函式庫相依的問題,那就只好跑在 Windows 平台上。
2. Hadoop 要跑在 Windows 平台上,可以參考
HDP for Windows 比較穩定
3. Hadoop 要跑 C# 程式,建議採用
Hadoop Streaming 的方式執行,我有設計一個
範例,若看得懂,應該就沒問題。也順道回覆您的第二個問題,您可以寫一個 Script 把 C# 所需的資料 Input 目錄、檔名當作 STDIN,讀入,然後由 Script 去執行該 C# 執行檔。STDOUT 則是一些簡單的 Message 輸出。STDERR 則用來作 MapReduce 進度回報用(不然 C# 執行超過 10 分鐘會被強制砍掉程序)。
- Jazz