基本介紹

教學目標

初步了解 Hadoop 的基本概念。

重點概念

首先 Hadoop 主要是 Apache 開放源始碼軟體專案之一,其主要是應用於分散式儲存和處理大型資料集的軟體專案。因此若我們要獲取任何給定的資料檔案,並且發佈至大量機器上時,這些機器皆會一起採取行動,此時將會像是單一且一致的系統。此外我們能夠在不同的機器上分散式處理資料,更重要的是對於 Hadoop 平台的使用者來說,他們不須要了解資料在多台機器上複雜的處理機制。

接著組織只要在不同的機器上安裝 Hadoop 軟體,此時組織就能夠透過相對便宜的硬體與軟體的搭配進行分散式處理。其中在 Hadoop 中主要有三個核心的模組,皆是透過 Java 程式語言所開發。

模組名稱 說明
HDFS 主要是一個分散大量檔案至 Hadoop 叢集電腦的檔案系統。
Hadoop YARN 主要是一個工作排程和叢集資源管理的框架。
Hadoop MapReduce 主要是一個以 YARN 系統為基礎平行處理大量資料集。

再來 HDFS 或稱 Hadoop 分散式檔案系統主要是處理叢集中所有不同機器上的資料分散式儲存至 Hadoop MapReduce 系統中,而 Hadoop MapReduce 系統主要是一個處理分散式檔案的分散式處理系統,因此我們可以同時在所有的機器上處理資料的不同部分,並且進行協調。但是若我們需要查詢資料集,則需要在所有不同的機器上完成部分工作之後,再次生成一致的結果,導致 Hadoop MapReduce 系統處理將會非常複雜性。

最後我們會透過 Hadoop YARN 系統進行資源的管理。當我們來自不同用戶的大量請求來進行不同類型的程序時, Hadoop YARN 系統就必須​​啟動程序,並且針對程序進行資源的分配,以利當系統忙於執行其它程序時,安排其它程序進行等待。當你擁有多個使用者和多台機器,就會必須協調所有正在使用的資源時,處理所涉及的所有管理,以利降低複雜性。

相關資源