Hadoop 的核心是 YARN,HDFS 和 Mapreduce
HDFS 分布式文件系统
- HDFS 是 Hadoop 分布式文件系统
- HDFS采用了主从(Master/Slave)结构模型,一个HDFS集群包括一个名称节点( NameNode)和若干个数据节点(DataNode)。
- 存储离线数据,先通过 hdfs 做理想处理
- 模型训练的时候,也通过挂载hdfs的方式直接读取tensor进行训练
- 一次写入多次读取机制
1 | hadoop fs -ls / |
Hadoop 的计算系统:MapReduce
- map,做数据映射,从json文件中读取想要字段
- reduce,做数据汇总,计算平均数、中位数等
- 分布式处理,map阶段对hdfs中每一个文件设置map读文件;同步并行reduce对map进行加工
Hive - 数据仓库
基于 Hadoop 的一个数据仓库工具,提供简单的sql查询功能
- 解决数据存储、处理和计算问题
- 数据关联:点击数据、商品数据,计算出用户点击的商品信息
Hbase 数据库 - 分布式列存数据库
基于 Hadoop 的数据库,分布式、可扩展的 Nosql数据库,提供内存 Hash 表,通过存储索引来查询
- 解决实时数据查询问题
- 采用 BigTable数据模型,增加 KV 映射
zookeeper - 分布式协作服务
为分布式应用提供一致性服务的组件:配置维护、域名维护、分布式同步
Yarn - 分布式资源管理器
分布式的操作系统平台
- Resource Manager,负责所有资源的监控、分配和管理
- Node Mangaer,负责每一个节点的维护
- Application Master,负责每一个具体应用程序的调度和协调