= 2012-07-25 = == HDFS vs Local FS == {{{ #!text 如圖,您把檔案放在 Local File System , 才有辦法讓跑在 hadoop.nchc.org.tw 的 Apache 去讀取該檔案, 然後運用 Apache 的 PHP 模組解析該 PHP 檔案,然後去執行。 Local File System 會遇到一個問題,當如圖有8個人, 他們分別要 A, B, C, D 四個檔案,每個檔案都要 600MB, 此時,因為硬碟 SATA 排線只有一條,頻寬理論值雖然有 100Mbps, 但是通常同時隨機存取會降到 40Mbps (有人同時搶檔案的速度),縱使對外的頻寬有 1000Mbps 每個人仍舊只能分到 40Mbps / 8 = 5 Mbps 的下載速度。 HDFS 則不同,因為如圖有六台組成,有六條 SATA 排線,總頻寬是 600 Mbps, 而且 A, B, C, D 會均勻分散在其中,而且因為有副本,所以會個存在兩份。 此時,當有8個人同時要這四個檔案,則 A 可以從不同的兩台機器取得, 所以速度可以是 60Mbps (沒人搶檔案的讀取速度), 同理 B, C, D 也一樣可以有相同的硬碟讀取速度。 同一時間,8個檔案可以從硬碟用平均 60Mbps 傳出網路, 所以每個用戶如果下載頻寬夠的話(假設是每個用戶的下載頻寬是 12Mbps) 那每個人都會很滿意那個 12Mbps 速度。 如果這八個用戶都有 100Mbps 的下載頻寬,那每個人都可以有 60Mbps 的下載速度。 客戶就會很滿意~ }}}