c语言sscanf函数的用法是什么
267
2022-11-23
浅析大数据框架 Hadoop~
作者:幻好 来源:恒生LIGHT云社区 Hadoop 概念及其发展
Hadoop 最早起源于 Nutch。Nutch 的设计目标是构建一个大型的全网搜索引擎,包括网页抓取、索引、查询等功能,但随着抓取网页数量的增加,遇到了严重的可扩展性问题——如何解决数十亿网页的存储和索引问题。
2003 年、2004 年Google发表的两篇论文为该问题提供了可行的解决方案。
分布式文件系统(GFS),可用于处理海量网页的存储。 分布式计算框架 MAPREDUCE,可用于处理海量网页的索引计算问题。
Nutch 的开发人员完成了相应的开源实现 HDFS 和 MAPREDUCE,并从 Nutch 中剥离成为独立项目 HADOOP,到 2008 年 1 月,HADOOP 成为 Apache 顶级项目(同年,cloudera 公司成立),迎来了它的快速发展期。
广义上来说,Hadoop 指代大数据的一个生态圈,包括很多其他的软件。 狭义上来说,Hadoop 就是单独指代 Hadoop 这个软件。
Hadoop 的历史版本介绍
0.x 系列版本:hadoop 当中最早的一个开源版本,国外使 用较多,因为当时国内大数据还没发展起来,在此基础上演变而来的 1.x 以及 2.x 的版本
1.x 版本系列:hadoop 版本当中的第二代开源版本,主要修复 0.x 版本的一些 bug 等,是存在时间最短的一代。
2.x 版本系列:架构产生重大变化,引入了 yarn 平台等许多新特性,国内目前使用最多的版本,因为当时国内正处于大数据爆发的阶段。
3.x 版本系列:引入了一些重要的功能和优化,包括 HDFS 纠删码、多 Namenode 支持(两个以上)、MR Native Task 优化、YARN 基于 cgroup 的内存和磁盘 IO 隔离等,且对 JDK 最低版本要求为 JDK1.8。发行时间较晚,目前使用不多,但未来必将成为主流。
Hadoop 三大公司发型版本介绍
-免费开源版本 apache
官网:所有软件的下载地址(包括各种历史版本):
-免费开源 hortonWorks
官网:主要是雅虎主导 Hadoop 开发的副总裁,带领二十几个核心成员成立 Hortonworks,核心产品软件 HDP(ambari),HDF 免费开源,并且提供一整套的 web 管理界面,供我们可以通过 web 界面管理我们的集群状态,web 管理界面软件 HDF 网址(ClouderaManager
官网:主要是美国一家大数据公司在 apache 开源 hadoop 的版本上,通过自己公司内部的各种补丁,实现版本之间的稳定运行,大数据生态圈的各个版本的软件都提供了对应的版本,解决了版本的升级困难,版本兼容性等各种问题
Hadoop 的模块组成
Hadoop HDFS:一个高可靠、高吞吐量的分布式文件系统。 Hadoop MapReduce:一个分布式的离线并行计算框架。 Hadoop YARN:作业调度与集群资源管理的框架。 Hadoop Common:支持其他模块的工具模块。
Hadoop 的架构模型
NameNode 与 ResourceManager 单节点架构模型
文件系统核心模块:
NameNode:集群当中的主节点,主要用于管理集群当中的各种数据 secondaryNameNode:主要能用于 hadoop 当中元数据信息的辅助管理 DataNode:集群当中的从节点,主要用于存储集群当中的各种数据
数据计算核心模块:
ResourceManager:接收用户的计算请求任务,并负责集群的资源分配 NodeManager:主要用于接收 applicationMaster 分配的任务 applicationMaster: resourcemanager 为每个计算任务启动一个 appMaster, appMatser 主要负责资源的申请, 任务的分配 NameNode 与 ResourceManager 高可用架构模型
文件系统核心模块:
NameNode:集群当中的主节点,主要用于管理集群当中的各种数据,一般都是使用两个,实现 HA 高可用 JournalNode:元数据信息管理进程,一般都是奇数个 DataNode:从节点,用于数据的存储
数据计算核心模块:
ResourceManager:Yarn 平台的主节点,主要用于接收各种任务,通过两个,构建成高可用 NodeManager:Yarn 平台的从节点,主要用于处理 ResourceManager 分配的任务
Hadoop 目前的现状
自 2015 年开始 Hadoop 暴露出诸多问题引起注意。随后 Gartner、IDG 等公司分析师、Hadoop 用户和 Hadoop 和大数据圈内人士越来越多的反映出各种问题。
究其原因,主要如下:
Hadoop 栈过于复杂,组件众多,集成困难,玩转代价过高 Hadoop 创新速度不够(或者说起点过低),且缺乏统一的理念和管控,使得其众多组件之间的集成非常复杂 受到 Cloud 技术的冲击,特别是类 S3 对象存储提供了比 HDFS 更廉价、更易用、更可伸缩的存储,撬动了 Hadoop 的根基 HDFS 对 Hadoop 期望过高,Hadoop 发迹于廉价存储和批处理,而人们期望 Hadoop 搞定大数据所有问题,期望不匹配造成满意度很低 人才昂贵,且人才匮乏
总结
综上,作为第一代大数据方案的 Hadoop 巅峰已过,大数据进入第二代:分布式数据库。
分布式数据库特别是 MPP 数据库已经很好的解决了大数据基本分析层面的问题,未来持续向着更易用更快的方向发展。
高级数据分析向着下沉到数据库内部的方向发展。高级数据分析层面的难点不在分析,而在于数据本身的数量和质量。期待这一方面有更多创新涌现。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~