Hadoop
- 一、Hadoop概述
- 二、Hadoop核心组件
- 2.1 HDFS
- 2.2 MapReduce
- 2.3 YARN
- 三、Hadoop应用
- 四、Hadoop优势及意义
- 4.1 优势
- 4.2 意义
一、Hadoop概述
- 允许使用简单的编程模型跨计算机集群分布式处理大型数据集
- 可扩展的: 从单个服务器扩展到数千台计算机,每台计算机都提供本地计算和存储
- 可靠的: 不依靠硬件来提供高可用性(high-availability),而是在应用层检测和处理故障,从而在计算机集群之上提供高可用服务
二、Hadoop核心组件
2.1 HDFS
HDFS(Hadoop Distributed File System) :
- 分布式存储系统
- 源自于Google的GFS论文, 论文发表于2003年10月
- HDFS是GFS的开源实现
- HDFS的特点:保存海量数据、高可靠性、高扩展性和高吞吐率
- 将文件切分成指定大小的数据块, 并在多台机器上保存多个副本
- 数据切分、多副本、容错等操作对用户是透明的
2.2 MapReduce
- 分布式计算框架
- 源于Google的MapReduce论文,论文发表于2004年12月
- MapReduce是GoogleMapReduce的开源实现
- MapReduce特点:高扩展性&高容错性&海量数据离线计算
2.3 YARN
YARN(Yet Another Resource Negotiator):
- 资源调度系统
- 负责整个集群资源的管理和调度
- YARN特点:扩展性&容错性&多框架资源统一调度
三、Hadoop应用
- 搭建大型数据仓库
- PB级数据的存储 处理 分析 统计等业务
- 搜索引擎
- 日志分析
- 数据挖掘
- 商业智能(Business Intelligence,简称:BI)
商业智能通常被理解为将企业中现有的数据(订单、库存、交易账目、客户和供应商等数据)转化为知识,帮助企业做出明智的业务经营决策的工具。从技术层面上讲,是数据仓库、数据挖掘等技术的综合运用。
四、Hadoop优势及意义
4.1 优势
- 高可靠
- 数据存储: 数据块多副本
- 数据计算: 某个节点崩溃, 会自动重新调度作业计算
- 高扩展性
- 存储/计算资源不够时,可以横向的线性扩展机器
- 一个集群中可以包含数以千计的节点
- 集群可以使用廉价机器,成本低
- Hadoop生态系统成熟
4.2 意义
通过Hadoop可以快速搭建自己的分布式存储系统和分布式运算系统,它可以缩短处理数据的时间,同时可以尽量在低成本的情况下完成数据的分析与挖掘。这里的低成本,主要是因为Hadoop可以基于廉价的普通PC机搭建集群。