跳至內容

ApacheHadoop

出自Taiwan Tongues 台語維基
這是此頁批准,以及是最近的修訂。

Apache Hadoop是一款支援數據密集型分佈式應用程式並以 Apache 強欲消息會使協定發佈的開源軟體框殼,對外口使用誠濟電腦組成的網路來解決資料、計算是密集型的問題。是因為 MapReduce 計算模型,伊為大數據的分散式儲存佮處理提供一个軟體框。所有的 Hadoop 模組攏有一个基本假設,即硬體故障是捷看著情形,應該由框架自動處理。

Apache Hadoop 的核心模組分做儲存佮計算模組,前者予人叫做是 Hadoop 分散式檔案系統(HDFS), 後者就會 MapReduce 計算模型。Hadoop 框架先將檔案分做資料角閣分散式地儲存佇樹仔內底的計算節點內底,紲落來會負責計算任務的代碼傳送予各節點,予其會使並列地處理資料。這種方法有效利用著資料局部性,令各節點分別處理其會當存取的資料。佮傳統的超級電腦架構相比,這予資料集的處理速度閣較緊、效率閣較懸。

Apache Hadoop 框殼由以下基本模組構成:

  • _ Hadoop Common _–包括著其他 Hadoop 模組所需要的庫佮實用程式;
  • _ Hadoop Distributed File System ( HDFS ) _–一種共資料儲存佇咧樹集中濟濟節點內底的分散式檔案系統,會當提供足懸的頻闊;
  • _ Hadoop YARN _–(佇二空一二年引入)一个負責管理叢集中計算資源,並實現使用者程式排程的平台;
  • _ Hadoop MapReduce _–用佇大規模的資料來處理 MapReduce 計算模型實現;
  • _ Hadoop Ozone _–(佇二空二空年引入)Hadoop 的物件儲存。

_ Hadoop _ 一詞通常代指其基本模組和子模組和生態系統,抑是會當鬥佇安裝 Hadoop 之上的軟體套件的集合,比如講 Apache Pig、Apache Hive、Apache HBase、Apache Phoenix、Apache Spark、Apache ZooKeeper、Cloudera Impala、Apache Flume、Apache Sqoop、Apache Oozie 和 Apache Storm。

Apache Hadoop 的 MapReduce 和 HDFS 模組的靈感來源於 Google 的 MapReduce 和 Google File System 論文。

Hadoop 框架本身主要是用 Java 程式語言編寫的,嘛包括一寡 C 語言編寫的本機代碼佮 Shell 指令碼編寫的命令列實用程式。就算講 MapReduce Java 代碼蓋捷看著,但任何程式語言攏會當佮 Hadoop Streaming 做伙使用來實現使用者程式的 map 和 reduce 部份。Hadoop 生態系統中的其他專案實現了閣較豐富的使用者介面。

主要子專案

  • Hadoop Common:佇咧零更二空佮較早的版本內底,包含 HDFS、MapReduce 佮其他的專案公共內容,對無二一開始 HDFS 和 MapReduce 被分離做獨立的子專案,賰的內容為著 Hadoop Common
  • HDFS:Hadoop 分佈式檔案系統(Distributed File System)- HDFS(Hadoop Distributed File System)
  • MapReduce:平行計算框殼,空九二空前使用 org . apache . hadoop . mapred 舊介面,空九二空版本開始引入去 org . apache . hadoop . mapreduce 的新 API

相關專案

  • Apache HBase:散式 NoSQL 列資料庫,類似 Google 公司 BigTable。
  • Apache Hive:構建於 hadoop 上的資料倉儲,通過一種類 SQL 語言 HiveQL 為著使用者提供資料的歸納、查詢佮分析遮的功能。Hive 上原初由 Facebook 貢獻。
  • Apache Mahout:機器學習演算法軟體套件。
  • Apache Sqoop:結構化資料(如關聯式的資料庫)佮 Apache Hadoop 之間的資料轉換工具。
  • Apache ZooKeeper:分散式鎖設施,提供類似 Google Chubby 的功能,由 Facebook 貢獻。
  • Apache Avro:新的資料序列化格式佮傳輸的工具,將跤步取代 Hadoop 原有的 IPC 機制。

出名使用者

Hadoop 佇咧 Yahoo ! 的應用

二空空八年二月十九,雅虎使用十 , 零一个微處理器核心的 Linux 電腦欉集運行一个 Hadoop 應用程式。

其他使用者

其他有名的使用者包括:

Hadoop 佮 Sun Grid Engine

昇陽電腦的 Sun Grid Engine 會當用來排程 Hadoop Job。

Hadoop 佮 Condor

威斯康辛大學麥迪綴分校的 Condor 計算機密集軟體嘛會當用做 Hadoop Job 的排程。

參見

  • 大數據
  • 雲端運算
  • 高效能計算密集
  • OpenStack-以 Apache 授權條款授權的雲端運算軟體。
  • Apache Spark

參考文獻

外部連結

  • Hadoop 官方網站