hadoop-logo Apache Hadoop

Apache® Hadoop® 项目开发用于可靠、可扩展、分布式计算的开源软件。

Apache Hadoop 软件库是一个框架,它允许使用简单的编程模型在计算机集群上对大型数据集进行分布式处理。它旨在从单台服务器扩展到数千台机器,每台机器都提供本地计算和存储。该库本身旨在检测和处理应用程序层面的故障,而不是依赖硬件来提供高可用性,从而在可能容易发生故障的计算机集群之上提供高可用性服务。

了解更多 » 下载 » 开始使用 »

最新消息

发布 3.4.0 可用 2024 年 3 月 17 日

这是 Apache Hadoop 3.4 系列的第一个版本。它包含自 3.3 以来 2888 个错误修复、改进和增强功能。

建议用户阅读 主要更改概述。有关详细信息,请查看 发行说明变更日志

发布 3.3.6 可用 2023 年 6 月 23 日

这是 Apache Hadoop 3.3 系列的一个版本。

它包含自 3.3.5 以来 117 个错误修复、改进和增强功能。Apache Hadoop 3.3.5 及更早版本的使用者应升级到此版本。

功能亮点

SBOM 工件

从本版本开始,Hadoop 使用 CycloneDX Maven 插件发布软件材料清单 (SBOM)。有关 SBOM 的更多信息,请访问 SBOM

HDFS RBF:基于 RDBMS 的令牌存储支持

基于 HDFS 路由器的联合现在支持在 MySQL 上存储委派令牌,HADOOP-18535,它通过原始基于 Zookeeper 的实现改进了令牌操作。

新的文件系统 API

HADOOP-18671 将许多 HDFS 特定的 API 移至 Hadoop Common,以便依赖 HDFS 语义的某些应用程序可以在其他兼容 Hadoop 的文件系统上运行。

特别是,recoverLease() 和 isFileClosed() 通过 LeaseRecoverable 接口公开,而 setSafeMode() 通过 SafeMode 接口公开。

建议用户阅读自 3.3.5 版本以来的重大更改概述。有关自上一个 3.3.5 版本以来的 117 个错误修复、改进和其他增强功能的详细信息,请查看发行说明变更日志

发行版 3.3.5 可用 2023 年 3 月 22 日

这是 Apache Hadoop 3.3 系列的一个版本。

主要更改包括

  • 大幅更新依赖项,以尝试控制那些对传递性 CVE 的报告——无论是真实的还是误报。
  • 对 ABFS 输入流预取进行关键修复,以进行正确的读取。
  • 适用于所有 FSDataInputStream 实现的矢量化 IO API,并为 file:// 和 s3a:// 文件系统提供高性能版本。file:// 通过 java 本机 IO s3a:// 并行 GET 请求。
  • Arm64 二进制文件。请注意,由于 arm64 版本在不同的平台上,因此 jar 文件可能与 x86 版本不匹配,因此 maven 工件也不匹配。
  • Hadoop 自有代码中的安全修复。

Apache Hadoop 3.3.4 及更早版本的使用者应升级到此版本。

建议所有用户阅读自 3.3.4 版本以来的重大更改概述

有关自上一个 3.3.4 版本以来的错误修复、改进和其他增强功能的详细信息,请查看发行说明变更日志

Azure ABFS:关键流预取修复

ABFS 连接器有一个关键的错误修复https://issues.apache.org/jira/browse/HADOOP-18546ABFS。禁用 abfs 流 close() 中正在进行的读取的清除列表。

hadoop 发行版 3.3.2+ 中 abfs 连接器的所有用户必须升级到此版本或通过将 fs.azure.readaheadqueue.depth 设置为 0 来禁用预取。

发行版 3.3.4 可用 2022 年 8 月 8 日

这是 Apache Hadoop 3.3 系列的一个版本。

它包含自 3.3.3 以来的一些安全和关键集成修复。

Apache Hadoop 3.3.3 的使用者应升级到此版本。

Hadoop 2.x 和 Hadoop 3.2 的用户也应升级到 3.3.x 系列。除了功能增强外,这也是目前唯一接收除关键安全/数据完整性问题之外的任何问题的修复的分支。

建议用户阅读自 3.3.3 版本发布以来的重大更改概述。有关自上一个 3.3.3 版本发布以来的错误修复、改进和其他增强功能的详细信息,请查看发行说明变更日志

发布 3.2.4 可用 2022 年 7 月 22 日

这是 Apache Hadoop 3.2 系列的第三个稳定版本。

它包含自 3.2.3 以来 153 个错误修复、改进和增强功能。

建议用户阅读自 3.2.3 以来重大更改概述。有关自上一个 3.2.3 版本发布以来的 153 个错误修复、改进和其他增强功能的详细信息,请查看发行说明变更日志

模块

该项目包括以下模块

  • Hadoop Common:支持其他 Hadoop 模块的通用实用程序。
  • Hadoop 分布式文件系统 (HDFS™):一个分布式文件系统,可提供对应用程序数据的高吞吐量访问。
  • Hadoop YARN:一个用于作业调度和集群资源管理的框架。
  • Hadoop MapReduce:一个基于 YARN 的系统,用于并行处理大型数据集。

谁在使用 Hadoop?

各种公司和组织都在将 Hadoop 用于研究和生产。建议用户将自己添加到 Hadoop PoweredBy wiki 页面

相关项目

Apache 上的其他 Hadoop 相关项目包括

  • Ambari™:一个用于配置、管理和监控 Apache Hadoop 集群的基于 Web 的工具,其中包括对 Hadoop HDFS、Hadoop MapReduce、Hive、HCatalog、HBase、ZooKeeper、Oozie、Pig 和 Sqoop 的支持。Ambari 还提供了一个仪表板,用于查看集群运行状况,例如热图,以及以可视化方式查看 MapReduce、Pig 和 Hive 应用程序的能力,以及以用户友好的方式诊断其性能特征的功能。
  • Avro™:一个数据序列化系统。
  • Cassandra™:一个可扩展的多主数据库,没有单一故障点。
  • Chukwa™:一个用于管理大型分布式系统的数据收集系统。
  • HBase™:一个可扩展的分布式数据库,支持大型表的结构化数据存储。
  • Hive™:一个数据仓库基础设施,提供数据汇总和即席查询。
  • Mahout™:一个可扩展的机器学习和数据挖掘库。
  • Ozone™:一个可扩展、冗余且分布式的 Hadoop 对象存储。
  • Pig™:一种用于并行计算的高级数据流语言和执行框架。
  • Spark™:一个快速且通用的 Hadoop 数据计算引擎。Spark 提供了一个简单且富有表现力的编程模型,支持广泛的应用程序,包括 ETL、机器学习、流处理和图形计算。
  • Submarine:一个统一的 AI 平台,允许工程师和数据科学家在分布式集群中运行机器学习和深度学习工作负载。
  • Tez™:一个基于 Hadoop YARN 构建的通用数据流编程框架,它提供了一个强大且灵活的引擎来执行任意 DAG 任务,以处理批处理和交互式用例的数据。Tez 已被 Hadoop 生态系统中的 Hive™、Pig™ 和其他框架以及其他商业软件(例如 ETL 工具)采用,以取代 Hadoop™ MapReduce 作为底层执行引擎。
  • ZooKeeper™:一个用于分布式应用程序的高性能协调服务。