跳至

什麼是 Apache Hadoop?

Apache Hadoop 軟體是一個開放原始碼架構,可以跨電腦叢集使用簡單的程式設計模型,對大型資料集進行分散式儲存和處理。Hadoop 可以從一部電腦擴大至數千台的叢集電腦,每部機器都可提供本機運算及儲存功能。因此,從數 GB 到數 PB 規模的大型資料集,Hadoop 都能有效率地儲存和處理。

您還可以參考這篇文章,瞭解如何透過 Dataproc 在 Google Cloud 上執行 Apache Hadoop 叢集,以更簡單且更具成本效益的整合方式處理資料。

Apache Hadoop 總覽

Hadoop 的主要架構由四個模組組成,這些模組可在 Hadoop 生態系統中發揮相得益彰的效果:

Hadoop 分散式檔案系統 (HDFS):HDFS 是分散式檔案系統,也是 Hadoop 生態系統的主要元件,支援高總處理量的應用程式資料存取作業,而無需預先界定結構定義。

Yet Another Resource Negotiator (YARN):YARN 是資源管理平台,負責管理叢集中的運算資源,並使用這些資源為使用者的應用程式排程。這個平台會在 Hadoop 系統上執行排程和資源分配。

MapReduce:MapReduce 是處理大量資料的程式設計模型,並使用分散式和平行運算演算法保留處理邏輯,藉此協助編寫應用程式,將多個大型資料集轉換為一個方便管理的資料集。

Hadoop Common:Hadoop Common 包括其他 Hadoop 模組使用和共享的程式庫和公用程式。

所有 Hadoop 模組在設計時都有以下基本假設:個別機器或整個機架的機器發生硬體故障在所難免,因此應由架構用軟體自動處理這些故障。Apache Hadoop MapReduce 和 HDFS 元件最初就是從 Google MapReduce 和 Google 檔案系統 (GFS) 文件衍生而來的。

除了 HDFS、YARN 和 MapReduce,整個 Hadoop 開放原始碼生態系統會持續擴充,不斷納入許多工具和應用程式,協助收集、儲存、處理、分析和管理大數據,其中包括 Apache Pig、Apache Hive、Apache HBase、Apache Spark、Presto 和 Apache Zeppelin。

Hadoop 的好處有哪些?

容錯功能

在 Hadoop 生態系統中,即使單個節點在大型叢集上執行工作時故障率高,也能複製整個叢集的資料,所以萬一發生磁碟、節點或機架故障,資料都可以輕鬆復原。

費用控管

Hadoop 每 TB 資料的儲存價格比其他平台更經濟實惠,更可有效控管成本。Hadoop 採用經濟實惠的標準商用硬體,以每 TB 數百美元的價格提供運算和儲存資源,省下每 TB 數千到數萬美元的硬體費用。

在開放原始碼架構下,帶動技術創新

全球的社群都是 Hadoop 的堅強後盾,這些社群齊心協力,共同激盪出新概念和功能,速度比負責開發專屬解決方案的內部團隊更快、更有效。透過開放原始碼社群的集體力量,讓更多的創意萌芽、加快開發速度,還能在遇到問題時馬上解決,從而縮短了產品上市時間。

為何需要 Hadoop?

Apache Hadoop 的誕生是起因於企業需要更快、更可靠的方式處理海量大數據。Hadoop 支援開放原始碼軟體的整個生態系統,因此越來越多的資料導向型公司都部署這項工具,以此儲存和剖析大數據。Hadoop 不依靠硬體提供重要的高可用性,而是以分散式的特性偵測和處理應用程式層的故障,藉此在電腦叢集上提供高可用性的服務,降低獨立機器故障的風險。

Hadoop 不是使用一台大型電腦儲存和處理資料,而是採用多台電腦構成的叢集平行分析大量資料集。Hadoop 可以處理各種形式的結構化和非結構化資料,讓公司以關聯資料庫和資料倉儲所不能及的速度和靈活性,收集、處理和分析大數據。

Apache Hadoop 的用途有哪些?

以下是一些常見的 Apache Hadoop 用途:

數據分析與大數據

各種不同類型的公司和機構將 Hadoop 運用於研究、處理實際工作環境中的資料和分析數據,這些應用需要處理從 TB 到 PB 不等的龐大資料量、儲存各式各樣的資料集,還有平行處理資料能力。

垂直產業應用

眾多產業的公司,包括科技、教育、醫療和金融服務等,都依賴 Hadoop 執行各種工作,這些工作都具有結構化和非結構化資料的龐大資料量、高速度和多樣性特徵。

AI 與機器學習

在支援人工智慧和機器學習應用的開發中,Hadoop 生態系統也扮演著關鍵角色。

雲端運算

基於靈活性、可用性和成本控管,公司通常會選擇在公用、私人或混合式雲端資源上執行 Hadoop 叢集,而不選擇內部部署硬體。許多雲端解決方案供應商都提供 Hadoop 適用的全代管服務,例如 Google Cloud 的 Dataproc。透過雲端原生 Hadoop 專用的預先封裝服務,過去需要數小時或數天處理的作業,現在只要幾分鐘或幾秒就能完成,而公司只需要為實際使用的資源付費。

Dataproc 是運作快速又簡單易用的全代管雲端服務,可讓您以更輕鬆且最具成本效益的整合方式,執行 Apache Spark 和 Apache Hadoop 叢集。這項服務能與其他 Google Cloud 服務完全整合,可以滿足至關重要的安全性、管理和支援需求,並讓您透過功能強大且完善的平台進行資料處理、數據分析和機器學習工作。

Google Cloud 提供各種大數據分析工具,例如 DataprocBigQueryNotebooksDataflow 等,可協助您建構內容豐富的應用程式、打造新的數據分析解決方案,進而取得可行深入分析的資料。