Hadoop生态圈
概述
Hadoop简介
什么是Apache hadoop?
Apache Hadoop项目是以可靠、可扩展和分布式计算为目的而发展而来的开源软件
Apache Hadoop 软件库是一个允许在集群计算机上使用简单的编程模型来进行大数据集的分布式任务的框架。它是设计来从单服务器扩展到成千台机器上,每个机器都能高效地提供本地的计算和存储。
Hadoop发展历史
Hadoop特性
Hadoop在企业应用架构
Hadoop版本演变
Hadoop版本架构演变:将繁重的调度工作整合成一个Yarn框架 其他版本Hadoop
Hadoop架构
Hadoop生态圈产品功能简介
Hadoop生态系统图
产品术语说明
Hadoop项目包括模块:
- Hadoop Common :通用的工具来支持其他的Hadoop模块
- Hadoop Distributed FileSystem(HDFS):一个提供高可用获取应用数据的分布式文件系统
- Hadoop YARN;Job调度和集群资源管理的框架
- Hadoop MapReduce:基于YARN系统的并行处理大数据集的编程模型
其他Hadoop相关的项目: - Ambari:一个基于web的工具,用来供应、管理和监测Apache Hadoop集群包括支持Hadoop HDFS、Hadoop MapReduce、Hive、HCatalog、HBase、ZooKeeper、Oozie、Pig和Sqoop。Ambari 也提供一个可视的仪表盘来查看集群的健康状态(比如热图),并且能够以一种用户友好的方式根据其特点可视化的查看MapReduce、pig和Hive 应用来诊断其性能特征。
- Avro :数据序列化系统。
- Cassandra :可扩展的多主节点数据库,而且没有单节点失败情况。
- Chukwa : 管理大型分布式系统的数据收集系统
- HBase ; 一个可扩展的分布式数据库,支持大表的结构化数据存储
- Hive : 一个提供数据概述和AD组织查询的数据仓库
- Mahout :可扩展大的机器学习和数据挖掘库
- Pig :一个支持并行计算的高级的数据流语言和执行框架
- Spark : 一个快速通用的Hadoop数据的计算引擎。spark 提供一个简单和富有表现力的编程模型并支持多领域应用,包括ETL、机器学习、流处理 和图计算。
- Tez : 一个通用的数据流处理框架,构建在Hadoop YARN上,提供一个有力的灵活的引擎来执行一个任意的DAG任务来处理数据(批处理和交互式两种方式)。Tez 可以被Hive、Pig和其他Hadoop生态系统框架和其他商业软件(如:ETL工具)使用,用来替代Hadoop MapReduce 作为底层的执行引擎。
- ZooKeeper :一个应用于分布式应用的高性能的协调服务。
Sqoop是一个用来将Hadoop和关系型数据库中的数据相互转移的工具 Flume是一个分布式、可靠的、高可用的有效收集、聚合和转移大量日志文件的服务
Impala类似与Hive,是Cloudera公司主导开发的新型查询系统,比hive更加高效
Hadoop 安装部署
伪分布式安装
目前Hadoop的Stable版本归为2.9.0,这里以2.9.0版本为例子:
部署教程可以看我的另外一篇文章:Centos7部署Hadoop伪分布式集群.
集群部署建议
Hadoop集群中需要有哪些节点类型?
集群硬件要求
集群网络拓扑建议
集群网络拓扑
集群部署方式建议
集群部署方式建议
集群基准测试建议
Hadoop集群基准测试:TestDFSIO/WordCountExample.jar
网友评论