大資料自學筆記1----什麼是hdfs!!!
玩大資料,首先得學如何存大資料。
那問題來了,資料怎麼存呢?
路人1:存在window作業系統的“我的電腦”的C,D,E,F盤裡面咯。
我:那如果我的資料很多呢?有5個T的資料。
路人1:加裝4個1T的硬碟
我:那如果我有1000T的資料呢!
路人1:裝999個1T的硬碟
我:。。。槓精滾粗
首先我承認加硬碟的確是個好方法。能讓我們存很多的資料,但是我們需要考慮一下幾個問題。
1. 硬碟掃描問題:比如我現在要從C盤找一個檔案,如果我的C盤有1000T的檔案量,找出一個檔案應該是很耗時的(我自己筆記本從500g裡面找一個檔案都要半天)
2. 安全問題:如果一臺電腦炸了,那你資料全部就沒了。
3. 插槽問題:你電腦有這麼多硬碟介面???
其實還有很多問題,咱這就不一一討論了。進入正題:
什麼是HDFS(分散式檔案系統):
通俗點說就是幾臺電腦把檔案系統共享的一種檔案系統。
還是不夠通俗?啥檔案系統巴拉巴拉的?
那就舉個栗子吧。
A君有一臺筆記本,硬碟2T
B君有一臺筆記本,硬碟2T
C君有一臺筆記本,硬碟2T
他們都用window作業系統,而且都只有C盤(注意C盤你可以理解為就是一種檔案系統,因為C盤用來管理檔案嘛)
有一天A君的C盤容量不夠了,只能跑到B君那,把檔案存在B君的電腦上。可是他們住的比較遠存來存去好煩。
這時候C君這位技術宅出面了,說為什麼我們不能把我們3個的硬碟用一種網路的方式連線起來組合成一個6個T的網盤。
以後我們只需要向這個網盤裡面存東西,取檔案也從這個網盤裡面取。
這是個好主意!於是3人說幹就幹,造出了這個網盤。
這個網盤有如下幾點特性:
1. 一人上傳檔案,檔案會被隨機存入的3臺電腦中的某臺電腦(除非某臺電腦容量滿了)
2. 上傳的檔案會有一個備份檔案,這個備份檔案會被存入另外一臺電腦(如果一臺電腦炸了,備份檔案在另一臺電腦上是安全的)
3. 還有啥特性我沒想好
好的!說了這麼多,這個網盤,你可以理解為就是hdfs的一個簡化版了。
那什麼是hdfs?就是一個分散式(多臺電腦)檔案系統(大網盤)!
多臺電腦的C盤用網路連線起來組成的大網盤,就叫分散式檔案系統!!!
下一章細細討論下hdfs的原理,以備面試用