[中译版]ApacheHadoop官方wiki-首页
- 说明:
- 来源:本文档原文取自Hadoop官方文档Hadoop wiki Home
- 内容说明:文档内容均为本人人工翻译,部分章节会增加一些自己的理解,或将描述调整为更适合阅读的语序。
不喜勿喷,若您在阅读过程中发现错误,敬请不吝赐教。 - 译者及联系方式:
- Translator: Amos
- E-mail: amos@amoscloud.com
Apache Hadoop
- Apache Hadoop 是一个通用的框架,用于构建基于普通商用硬件设备的大规模应用集群。Hadoop的出现,使数据的可靠管理变得透明。
- Hadoop通过MapReduce模块(下文简称MR),实现了经典的分布式计算架构,在MR中,一个计算任务会被拆分为多个较小粒度的子任务,子任务会被合理的分配到集群的任意节点执行,并在执行异常时,自动进行相应的故障转移。
- 与此同时,Hadoop提供的分布式文件系统(HDFS),会将数据分散存储在集群的所有计算节点上,为整个集群提供极高的吞吐带宽。
- Hadoop的MR和HDFS在设计上,都提供了自动的容错和故障转移机制。
基本信息(General Information)
- Apache Hadoop官方网站: 您可以访问官方网站,进行Hadoop安装包的下载、最新bug修复情况的跟进,以及详细了解Hadoop生态应用等。
- Apache Hadoop 概述
FAQ- Hadoop不适合做什么
- Hadoop的发行版和商业支持 (RPMs, Debs, AMIs, 等)
- 关于Hadoop的演示、书籍、文章和论文
- PoweredBy, 一个使用Hadoop作为技术支持的,不断增加的合作企业列表。
- 相关支持
- Hadoop社区事件和会议
- Hadoop用户群组 HadoopUserGroups (HUGs)
Hadoop生态相关项目(Related-Projects)
- HBase是一个基于Hadoop HDFS的结构化存储系统,其实现原理类似于Google-BigTable。
- Apache Pig 提供了一种特殊的高级数据流语言,以及高效的执行框架,用于构建并执行,基于Hadoop平台的并行计算程序。
- Hive是一个数据仓库工具,Hive支持使用类SQL的HiveQL语句,直接读取和处理Hadoop(HDFS)上存储的各种类型的数据。
- ZooKeeper是一个高可靠高性能的分布式集群协调服务。
Hama是一个与Google的Pregel类似的分布式计算框架,基于海量并行同步(BSP : Bulk Synchronous Parallel)计算技术实现,专门用于大规模科学计算。- Mahout是一个基于Hadoop平台的,可扩展的机器学习算法库
- Hadoop兼容的其他文件系统 (HCFS)
- Apache Gora是一个提供海量数据内存持久化的开源框架。Gora支持持久化列式存储、键值对存储、文档存储和RDBMS,并且支持使用Hadoop MapReduce对这些数据进行分析。
用户指南(User Documentation)
- Hadoop可用的Java运行环境
- 核心概念名词解释
- Hadoop入门 (包含较多操作细节和概念)
- Hadoop快速入门 (专为急性子设计)
- Hadoop提供的shell脚本和常用命令
- Hadoop源码概览
- Hadoop常见问题及解决方案
搭建Hadoop集群(Setting up a Hadoop Cluster)
- 单节点Hadoop集群实战(伪分布)
- Hadoop的配置指南
使用Web应用监控你的系统- NameNode的高可用实战
- 如何将集群指标对接到Ganglia
- 大规模集群管理技巧
- 关于磁盘设置的一些建议
拓扑脚本/机架感知- 基于Windows编译和构建Hadoop2.2及以上版本
- 使用Amazon AWS虚拟机构建集群
- 虚拟机构建Hadoop集群的理论基础
- 如何使用虚拟机搭建Hadoop集群
- 在AmazonEC2中运行Hadoop
- 在AmazonS3上运行Hadoop
教程收录(Tutorials)
-
在Ubuntu Linux上运行Hadoop(单节点集群)
Michael Noll提供的在Ubuntu Linux系统上安装、配置和运行单节点Hadoop集群的教程。 -
在Ubuntu Linux上运行Hadoop(多节点集群)
Michael Noll提供的在Ubuntu Linux系统上安装、配置和运行多节点Hadoop集群的教程。 -
Hadoop Windows/Eclipse教程
如何在Windows上使用Eclipse进行Hadoop开发的教程。 -
Yahoo! Hadoop教程
Hadoop安装,HDFS,和MapReduce -
Mac OSX 上运行Hadoop(多节点集群)
讲述如何在Macintosh OSX (Lion)系统上构建多节点集群Hadoop集群的教程.
MapReduce
MapReduce思想是Hadoop的基本思想,理解并掌握它,至关重要!
(原文中使用algorithm
一词,在这里我觉得把算法
翻译成思想
更为贴切)
- Hadoop MapReduce
- Hadoop MapReduce核心关键类
- 如何确定Mapper和Reducer的并发度
- 任务的运行环境
- 如何调试MapReduce程序
- 案例
- 基准测试(Benchmarks)
Hadoop的非主分支代码贡献(Contributed parts of the Hadoop codebase)
以下这些独立模块已经添加到Hadoop的代码库中,但目前并未与Hadoop的主项目分支紧密集成。
- HadoopStreaming (有利于为Hadoop提供更多的编程语言支持)
- DistributedLucene, 尝试在Hadoop中集成分布式索引引擎Lucene。
- MountableHDFS, 致力于将HDFS作为一个标准的文件系统,支持挂在到Linux或者其他的Unix内核的操作系统中。
- HDFS-APIs ,为HDFS提供Perl、Python、PHP等其他编程语言的支持。
- Chukwa 是一个数据收集、存储和分析框架。
- The Apache Hadoop Plugin for Eclipse (一个Eclipse插件,用于简化MapReduce程序的开发和部署)
- HDFS-RAID 将源于磁盘阵列技术的纠删码(Erasure Coding)机制引入HDFS
开发者指南(Developer Documentation)
- 版本发布计划的时间线
- 如何成为贡献者
- 如何使用注入框架
- 如何使用系统测试框架
- 如何构建你的开发环境
- 如何使用并发分析工具
- GitHub集成
- 如何使用JCarder
- 如何进行代码评审
- Jira使用指南
- 如何提交
- 如何发布
- Hudson持续集成服务构建
- 如何在Ubuntu的主机上进行构建
- 开发提示
- 项目建议
- 使用IntelliJ IDEA 进行开发/测试
- Git和Hadoop
- 项目划分
相关资源(Related Resources)
- Nutch Hadoop教程(这个教程对理解Hadoop程序中的上下文非常有帮助)。
IBM提供的Eclipse中的MapReduce工具。已经过时了。目前已经被Eclipse中的MapReduce/Contrib插件代替。Hadoop IRC channel is #hadoop at irc.freenode.net.- Hadoop整合Spring (讨论在Spring中使用Hadoop和依赖注入的可能性)。
- Univa网格引擎集成,是一篇关于Hadoop与网格引擎的后续Univa网格引擎集成的博客文章。
- Hadoop网格引擎集成,开放式网格调度器/网格引擎与Hadoop集成的使用说明。
- Hadoop系列教程,可以通过学习逐步了解Hadoop核心概念,并练习在Cloudera虚拟机上进行相关的实验。
- Pydoop,一个MapReduce和HDFS的Python API(使用教程)。
- Dumbo,一个允许你用Python轻松编写,和运行Hadoop程序的项目.
- Hadoop distributed file system, 新的Hadoop连接器,实现Hadoop和Aster Data的MPP数据仓库之间的数据超快传输。
- Hadoop + CUDA
- 基于ARM构建Hadoop集群, 一项比较ARM集群和普通X86_64集群之间Hadoop MapReduce应用程序的能耗和性能的研究。
- HDFS架构文档, 一份供贡献者参考的HDFS架构的概述文档。