Apache Hadoop
Apache Hadoop是一款支持數據密集型分佈式應用程序并以Apache 2.0許可協議發佈的開源軟體框架。它支持在商用硬件構建的大型集群上運行的應用程序。Hadoop是根據谷歌公司發表的MapReduce和Google檔案系統的論文自行實作而成。所有的Hadoop模块都有一个基本假设,即硬件故障是常见情况,应该由框架自动处理。
開發者 | Apache软件基金会 |
---|---|
初始版本 | 2006年4月1日[1] |
穩定版本 | 3.3.0 (2020年7月14日 ) |
預覽版本 | 3.0.0-alpha4 (2017年7月7日 ) |
源代码库 | |
编程语言 | Java |
操作系统 | 跨平台 |
类型 | 大數據、分佈式系統 |
许可协议 | Apache許可證 2.0 |
网站 | hadoop |
Hadoop框架透明地為應用提供可靠性和數據移動。它實現了名為MapReduce的編程範式:應用程序被分割成許多小部分,而每個部分都能在集群中的任意節點上執行或重新執行。此外,Hadoop還提供了分佈式文件系統,用以存儲所有計算節點的數據,這為整個集群帶來了非常高的帶寬。MapReduce和分佈式文件系統的設計,使得整個框架能夠自動處理節點故障。它使應用程序與成千上萬的獨立計算的電腦和PB級的數據连接起来。現在普遍認為整個Apache Hadoop“平台”包括Hadoop內核、MapReduce、Hadoop分佈式文件系統(HDFS)以及一些相關項目,有Apache Hive和Apache HBase等等。
主要子项目
- Hadoop Common:在0.20及以前的版本中,包含HDFS、MapReduce和其他项目公共内容,从0.21开始HDFS和MapReduce被分离为独立的子项目,其余内容为Hadoop Common
- HDFS:Hadoop分佈式文件系統(Distributed File System)-HDFS(Hadoop Distributed File System)
- MapReduce:并行计算框架,0.20前使用org.apache.hadoop.mapred旧接口,0.20版本开始引入org.apache.hadoop.mapreduce的新API
相關项目
- Apache HBase:分布式NoSQL列数据库,类似谷歌公司BigTable。
- Apache Hive:构建于hadoop之上的数据仓库,通过一种类SQL语言HiveQL为用户提供数据的归纳、查询和分析等功能。Hive最初由Facebook贡献。
- Apache Mahout:机器学习算法软件包。
- Apache Sqoop:结构化数据(如关系数据库)与Apache Hadoop之间的数据转换工具。
- Apache ZooKeeper:分布式锁设施,提供类似Google Chubby的功能,由Facebook贡献。
- Apache Avro:新的数据序列化格式与传输工具,将逐步取代Hadoop原有的IPC机制。
知名用戶
Hadoop與Sun Grid Engine
昇陽電腦的Sun Grid Engine可以用来调度Hadoop Job。[4][5]
Hadoop與Condor
威斯康辛大學麥迪遜分校的Condor計算機集群軟件也可以用作Hadoop Job的排程。[6]
参考文献
- . apache.org. Apache Software Foundation. [2019-04-28]. (原始内容存档于2019-04-28).
- . [2008-09-04]. (原始内容存档于2008-05-14).
- . [2008-09-07]. (原始内容存档于2012-11-29).
- . Sun Microsystems. 2008-01-16 [2008-09-04]. (原始内容存档于2008-09-12).
- (PDF). Sun Microsystems. 2009-09-10.
- (PDF). 威斯康辛大學麥迪遜分校. 2010-04-15 [2011-03-15]. (原始内容存档 (PDF)于2011-04-01).
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.