大数据技术第二章
大数据技术与原理(第二章)
大数据处理架构Hadoop
提纲
- 概述
- Hadoop项目结构
- Hadoop的安装与使用
- Hadoop集群的部署与使用
Hadoop项目结构
Hadoop简介
Hadoop的特性
Hadoop的应用现状
Apache Hadoop版本演变
Hadoop各种版本
Hadoop的安装与使用
安装Linux虚拟机
安装双操作系统
Hadoop集群的部署与使用
Hadoop集群中有哪些节点类型
Hadoop框架中最核心的设计是为海量数据提供存储的HDFS和对数据进行计算的MapReduce
MapReduce的作业主要包括:
(1)从磁盘或从网络读取数据,即IO密集工作;
(2)计算数据,即CPU密集工作
Hadoop集群的整体性能取决于CPU、内存、网络以及存储之间的性能平衡。因此运营团队在选择机器配置时要针对不同的工作节点选择合适硬件类型
一个基本的Hadoop集群中的节点主要有
NameNode:负责协调集群中的数据存储
DataNode:存储被拆分的数据块
JobTracker:协调数据计算任务
TaskTracker:负责执行由JobTracker指派的任务
SecondaryNameNode:帮助NameNode收集文件系统运行的状态信息
集群网络拓扑
集群的建立与安装
采购好相关的硬件设备后,就可以把硬件装入机架,安装并运行Hadoop
安装Hadoop有多种方法:
(1)手动安装
(2)自动化安装
为了缓解安装和维护每个节点上相同的软件的负担,可以使用一个自动化方法实现完全自动化安装,比如Red Hat Linux’ Kickstart、Debian或者Docker
自动化安装部署工具,会通过记录在安装过程中对于各个选项的回答来完成自动化安装过程。
在云计算环境中使用Hadoop
Hadoop不仅可以运行在企业内部的集群中,也可以运行在云计算环境中
可以在Amazon EC2中运行Hadoop。EC2是一个计算服务,允许客户租用计算机(实例),来运行自己的应用。客户可以按需运行或终止实例,并且按照实际使用情况来付费
Hadoop自带有一套脚本,用于在EC2上面运行Hadoop
在EC2上运行Hadoop尤其适用于一些工作流。例如,在Amazon S3中存储数据,在EC2上运行集群,在集群中运行MapReduce作业,读取存储在S3中的数据,最后,在关闭集群之前将输出写回S3中;如果长期使用集群,复制S3数据到运行在EC2上的HDFS中,则可以使得数据处理更加高效,因为,HDFS可以充分利用数据的位置,S3则做不到,因为,S3与EC2的存储不在同一个节点上