Hadoop 生态和简介

什么是 Apache Hadoop

Apache Hadoop是一个开源软件框架,由当时就职于雅虎的Douglas Cutting开发,该框架使用简单的编程模型提供对大型数据集的高度可靠的分布式处理。

开源社区最初受到了Google发布的3篇论文的启发、后面社区按照论文做了java版本的开源实现才最后产生了Hadoop。具体来讲就是谷歌三驾马车GFSMapReduceBigTable分别对应的开源实现Hadoop HDFSHadoop MapReduceApache HBase

Apache Hadoop框架包括如下组件:

  • Hadoop Common:支持其他 Hadoop 模块的常用实用程序和库。也称为 Hadoop Core。
  • Hadoop HDFS:分布式文件系统,用于在商用硬件上存储应用程序数据。HDFS 旨在为Hadoop提供容错能力并提供高聚合数据带宽和高吞吐量数据访问。默认情况下,数据块在加载或写入时跨多个节点复制。复制程度可配置:默认复制为三个。HDFS 架构采用 NameNode来管理文件系统命名空间和文件访问权限,采用多个DataNode来管理数据存储。通过支持高可用性,当活动节点发生故障时,可以使用从节点。
  • Hadoop YARN:开源 Apache Hadoop YARN 是一个用于作业调度和集群资源管理的框架。YARN 代表"Yet Another Resource Negotiator"(又一个资源谈判专家)。它支持更多工作负载,例如交互式 SQL、高级建模和实时流。
  • Hadoop MapReduce:一种基于YARN的分布式计算框架,支持并行处理大量数据;MapReduce提供了多种优化技术来加快作业速度。
  • Hadoop Ozone:专为大数据应用程序设计的可扩展、冗余和分布式对象库。

Apache Hadoop生态

经过十余年的发展,Hadoop得到了显著的发展形成了一个功能完善且稳定的生态,早已经不仅仅是最初的HDFS、MapReduce、YARN三大组件了。在这个生态中目前MapReduce作为计算框架已经比较少有人使用,YARN面临着Kubernetes一定程度的竞争、HDFS依然是主流的分布式数据存储技术。在传统的Hadoop的基础上后续出现了Hive、HBase、Spark等更简单易用且功能强大的新技术,而且类似的技术依然在蓬勃的发展。

如下是不完全的Hadoop生态地图:

这些组件在整个定位上大致分为5类:

:从各个数据源那里采集一条条源数据,并往分析系统的传输通道中发送。比如移动用户的点击事件、用户的使用日志等 :接收采集过来的源数据,一般以流式传输的方式将这些源数据传入数据分析系统,典型的技术为:Kakfa、Flume、Pulsar等 :将传入的海量数据进行可靠的分布式存储,典型的技术为:HDFS、AWS S3等 :协调、调度整个分布式数据分析群,负责让集群中的机器高效的进行并行计算,典型的技术为YARN、Kubernates等 :将传入的数据流或者保存的数据进行计算分析,典型的技术为:MapReduce、Flink、Spark、Hive等 :将计算分析后的数据进行展示和输出,典型的技术为一些BI看板或者直接输出数据到数据库等

参考

相关推荐
宸津-代码粉碎机6 小时前
Spring 6.0+Boot 3.0实战避坑全指南:5大类高频问题与解决方案(附代码示例)
java·数据仓库·hive·hadoop·python·技术文档编写
生信碱移6 小时前
单细胞空转CNV分析工具:比 inferCNV 快10倍?!兼容单细胞与空转的 CNV 分析与聚类,竟然还支持肿瘤的亚克隆树构建!
算法·机器学习·数据挖掘·数据分析·聚类
Brduino脑机接口技术答疑6 小时前
TDCA 算法在 SSVEP 场景中:Padding 的应用对象与工程实践指南
人工智能·python·算法·数据分析·脑机接口·eeg
昌sit!9 小时前
hadoop集群搭建
大数据·hadoop·分布式
CryptoPP12 小时前
对接BSE交易所获取数据。
python·金融·数据挖掘·数据分析·区块链
ClouGence12 小时前
数据实时迁移同步工具 CloudCanal-v5.3.1.0 发布,支持金仓数据库
大数据·数据库·mysql·数据分析·dba
醉卧考场君莫笑12 小时前
数据分析理论基础
java·数据库·数据分析
yumgpkpm12 小时前
银行的数据智能平台和Cloudera CDP 7.3(CMP 7.3)的技术对接
数据库·人工智能·hive·hadoop·elasticsearch·数据挖掘·kafka
IT·小灰灰13 小时前
大模型API成本优化实战指南:Token管理的艺术与科学
人工智能·python·数据分析
Dev7z13 小时前
基于YOLO11的轨道交通车站客流密度实时监测与拥挤预警系统(数据集+UI界面+训练代码+数据分析)
目标跟踪·数据挖掘·数据分析