iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 28
0
自我挑戰組

資料蒐集與分散式運算 30 天系列 第 28

[Day 28] HDFS

歡迎來到第 28 天,昨天提到 MapReduce 的觀念,今天要提到另一個 Hadoop 中的重點 HDFS(Hadoop Distributed File System)。

承如前天所提到的,所謂的大數據就是當資料量級大到無法儲存於同一台伺服器、電腦裡的情況,在這種情況底下,資料儲存就需要有特別的管理系統用以確保資料的完整性

架構

在 HDFS 當中最核心的兩個節點分別是

  • Namenode
  • Datanode

在講解這兩個節點時必須要先提到 HDFS 的儲存方式,資料再存入 HDFS 前會被拆解成數個區塊(Block),這區塊會被複製多次並分別送到不同的 Datanode 上儲存,這裡要特別注意,被複製的區塊與原始區塊一定會被分配到不同的 Datanode 上以確保資料不會因為機器損壞而永久遺失,在儲存到 Datanode 後,會在 Namenode 上紀錄區塊與 Datanode 之間的關係。

講簡單一點就是倉庫與庫存清單的關係,Datanode 就是儲存資料的節點,Namenoe 就是一個清單紀錄每一筆資料在哪個倉庫。

Secondary Namenode

剛剛有提到為了避免區塊因為機器的損壞而讓資料永久遺失,因此會將區塊備份並儲存於不同的節點上,但 Namenode 呢?為了避免類似的事情發生產生出了 Secondary Namenode 的解決方案,可以想像他就是一個備份,定期會備份原始 Namenode 的資料,以確保清單的完整性。

今天學習的就這麼多,明天就要提到最後一個模組 YARN,明天見!


上一篇
[Day 27] MapReduce
下一篇
[Day 29] YARN
系列文
資料蒐集與分散式運算 30 天30

尚未有邦友留言

立即登入留言