c语言sscanf函数的用法是什么
263
2022-11-21
大数据系列-Hadoop-基础概念快速全览
随着互联网及企业信息化的发展的不断完善,在享受互联网带来的便利的同时,随之也会产生庞大的结构化数据与非结构化数据,利用这些数据进行存储、处理与分析可以更加丰富互联网对生活带来的便利性,往往丰富的应用需要依赖于更多的数据,随着数据的快速增长,如何有效的存储、管理与计算,成为了需要解决的问题。Hadoop第一代大数据引擎孕育而生,早期,Hadoop的诞生是由搜索引擎Nutch开发团队为了解决海量的爬虫结果、索引等存储的瓶颈。结合Google发布的两篇论文,完成了相关的代码实现,并从Nutch项目中独立出该框架成为Hadoop,随之以比网红出名还快的速度,一炮而红。
Apache Hadoop是一个用于将多个单台机器计算存储能力,通过组合上万台机器,并将这些机器的存储能力合并,形成一个超大的集群存储能力,就好比七个葫芦娃变成超级葫芦娃的过程。它不光要存储数据、还要计算数据与管理数据,Hadoop刚好可以解决以上问题,Hadoop由HDFS、MapReduce以及Yarn三大核心框架来组成,早期Hadoop1.x版本时,只有HDFS、MapReduce两大核心,Hadoop2.x版本加入了Yarn分布式集群管理器.我们以一个实际生产的场景,来看一下Hadoop的整体架构:
HDFS(Hadoop Distributed File System):DHFS是Apache Hadoop 项目的一个子项目. Hadoop 非常适于存储大型数据 (比如 TB 和 PB),实现了通过对硬件服务器的存储能力组合,实现了大体积数据的分布式存储,通过主从节点的特性,实现了存储大量数据,并且成本低廉、容错率高,保证了数据的一致性。
MapReduce:我们知道HDFS用于存储了海量数据,那么MapReduce就是用于对海量数据进行离线计算,同时它具有易于使用、良好的扩展性与高容错性等特点。
Yarn(Yet Another Resource Negotiator):它是一个用于管理与资源调度框架,为了解决早期MapReduce在执行过程中的扩展性、资源消耗、可靠性等方面的问题,目前支持的框架包含:MapReduce、Storm、Spark与Flink等。
JournalNode:JournalNode是Yarn中用于存放NameNode中元数据的集群,在主NameNode宕机后,通过journalNode集群将元数据同步给新启动的NameNode节点,保证NameNode节点的描述信息完成。
Zookeeper:Zookeeper为分布式服务提供了统一的命名服务、配置管理以及分布式锁等服务,在本场景中主要用于通过ZKFC与Zookeeper通信,监控NameNode运行状态,若NameNode宕机,通过Zookeeper选举机制将备用NameNode设置为活动状态。
为了更好的理解Hadoop,我们可以单纯的理解为HDFS用于将多台设备的资源组合成一个超大资源,Yarn同样也是通过将多台设备的资源组合成一个超大资源,用来执行MapReduce执行时所需的计算资源,MapReduce在执行时从HDFS中索取所需要的数据。如下图:
本片文章目的,只为对Hadoop有一个概念性的初步认识,对于一些原理、实现细节、知识点与案例应用,后续文章中我将会逐步详细介绍,从Hadoop三大核心的知识点进行详细介绍与刨析、Hadoop生态圈相关技术,最后根据一个实际案例进行技术总结。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~