Hadoop生态系统全面介绍

14 篇文章 4 订阅
订阅专栏

Hadoop作为大数据的分布式计算框架,发展到今天已经建立起了很完善的生态,本文将一一介绍基于Hadoop生态的一系列框架和组件。
Hadoop生态系统

Flume

  • 简介:
    Flume 是一个分布式、高可用的服务,用于高效收集、聚合和移动大量日志数据。
  • 作用:
    Flume 主要承载的作用是收集各个数据源的事件或日志数据,然后将其Sink到数据库
    Flume的作用
  • 架构
    Flume架构
    Flume的实现架构原理也非常简单,通过Agent代理来实现数据的收集,一个Agent包含了Source,channel,Sink三个组件。
    • Source:采集的数据来源,不同的数据源对应不同的格式,flume支持的source类型有很多,比如avro、thrift、twitter、exec、jms等
      所有的Source类型可参考flume的官方文档:
      https://flume.apache.org/FlumeUserGuide.html#flume-sources
    • Channel:缓冲区,将接收到的source数据缓存起来,供下游的sink消费,只有当数据被sink消费或者进入下一个channel的时候才会被删除。为了保证channel的可用性,flume也提供了多种channel类型,有memory、JDBC、File、Spillable Memory(当内存队列满了会存储到磁盘上) 、还支持自定义channel
    • Sink:消费channel里的数据,将数据发送到目的地,比如hive、hbase等。

Sqoop

Sqoop 用户在Hadoop和各种关系型数据库直接高效的同步传输数据。
一图解释完。ps: 实现同样功能的还有阿里开源的datax
sqoop流程图

HDFS

Hadoop 分布式文件系统,是Hadoop上层组件的核心存储系统,HBASE,Hive等都是基于HDFS的存储来构建的。
hdfs架构
HDFS 也是Master/Slave的主/从架构模式。HDFS 集群由单个 NameNode 和多个DataNode组成,NameNode就是Master,DataNode就是Slave。

  • NameNode:负责管理metadata元数据,记录了文件所对应的块信息。
  • DataNode,通常集群中每个节点都有一个DataNode,里面存储了具体的数据。

YARN

YARN是一个hadoop的资源管理器,负责管理资源和任务调度。

YARN的基本思想是将JobTracker的两个主要功能(资源管理和作业调度/监控)分离,主要方法是创建一个全局的ResourceManager(RM)和若干个针对应用程序的ApplicationMaster(AM)。这里的应用程序是指传统的MapReduce作业或作业的DAG(有向无环图)
yarn架构

  • ResourceManager :负责系统内所有应用的资源调度
  • NodeManager 是每台机器的框架客户端/代理,负责容器管理,监控他们的资源使用情况,例如 cpu、memory、 disk、network,并汇报给ResourceManager/Scheduler

Spark

Spark是一个大规模计算引擎,在大数据领域的地位举足轻重。支持Scala、Java、R、Python、Sql 多种语言。
主要的组件有SparkCore、SparkSQL、Spark MLlib、Spark Streaming、GraphX

  • SparkCore:实现了 Spark 的基本功能,包含RDD、任务调度、内存管理、错误恢复、与存储系统交互等模块
  • SparkSQL:通过SQL的方式连接数据库的数据,并将数据转化成DataFrame。SparkSQL支持多种数据源,包括 Hive、Avro、Parquet、ORC、JSON 和 JDBC。
  • Spark Mllib:是Spark的机器学习库,高质量的算法比MapReduce快100倍。MIlib 提供了丰富和算法和统计方法
    • 分类:逻辑回归、朴素贝叶斯、…
    • 回归:广义线性回归,生存回归,…
    • 决策树、随机森林和梯度提升树
    • 建议:交替最小二乘法 (ALS)
    • 聚类:K-means、高斯混合(GMM)、…
    • 主题建模:潜在狄利克雷分配(LDA)
    • 频繁项集、关联规则和序列模式挖掘
    • 统计:线性代数、假设检验
  • Spark Streaming:Spark的流式计算框架,实际上是基于时间的微批处理。通常Apache Flink可取而代之。
  • GraphX:是 Apache Spark 用于图形计算的API

Kafka

分布式消息队列,是目前消息队列里面的最强王者。
高吞吐量、高扩展性、高可用性,也支持数据持久化
kafka架构
主要流程:producer生产者发送消息到topic,topic被存放在不同的partition中,由消费组去消费topic里面的消息,一个消费组又由多个消费者组成,一条消息只能由消费组中中的一个消费者消费,避免了重复消费。

Mahout

Mahout是Apache的机器学习库,目标是构建一个用于快速创建可扩展、高性能机器学习应用程序的环境。
主要提供了聚类,分类,协同过滤等开箱即用的算法库,也能方便快速实现自己的算法。

Lucene / Solr / ElasticSearch

Apache Lucene 是完全用 Java 编写的高性能、功能齐全的全文检索引擎架构,提供了完整的查询引擎和索引引擎、部分文本分析引擎。目的是为软件开发人员提供一个简单易用的工具包,以方便地在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。
Solr 和 ElasticSearch 都架构在 Lucene 之上,能让Lucene更方便的被调用。其倒排索引的设置,在快速检索上比传统的正排索引更加高效。

Oozie

Oozie 是一个用于管理 Apache Hadoop 作业的工作流调度系统。
Oozie Workflow jobs 是由 actions 组成的有向无环图 (DAG)。
Oozie 协调器作业是由时间(频率)和数据可用性触发的周期性 Oozie 工作流作业。
Oozie 与 Hadoop 堆栈的其余部分集成,支持开箱即用的多种 Hadoop 作业(例如 Java map-reduce、Streaming map-reduce、Pig、Hive、Sqoop 和 Distcp)以及系统特定作业(例如Java 程序和 shell 脚本)。
Oozie 是一个可扩展、可靠和可扩展的系统。
还有另外一个优秀的调度框架 Azkaban

Zookeeper

ZooKeeper 是 Apache 软件基金会的一个软件项目,它为大型分布式计算提供开源的分布式配置服务、同步服务和命名注册。

ZooKeeper 的架构通过冗余服务实现高可用性。

Zookeeper 的设计目标是将那些复杂且容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集,并以一系列简单易用的接口提供给用户使用。

一个典型的分布式数据一致性的解决方案,分布式应用程序可以基于它实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等功能。
zookeeper service
ZooKeeper service 之间互相通信,保证服务的高可用性和一致性。
客户端连接到单个 ZooKeeper 服务器。客户端维护一个 TCP 连接,通过它发送请求、获取响应、获取监视事件并发送心跳。如果与服务器的 TCP 连接中断,客户端将连接到其他的服务器。

zookeeper 数据结构
zookeeper 提供的名称空间非常类似于标准文件系统,key-value 的形式存储。名称 key 由斜线 / 分割的一系列路径元素,zookeeper 名称空间中的每个节点都是由一个路径标识。
zookeeper namespace

Ambari

Apache Ambari 是一个用于配置、管理和监控 Apache Hadoop 集群的工具。由一组 RESTful API 和一个web界面组成。

MapReduce

MapReduce是一种分布式计算模型,由Map和Reduce组成。 Map()负责把一个大的block块进行切片并计算。 Reduce() 负责把Map()切片的数据进行汇总、计算。
执行的核心思想: 相同key的键值对为一组调用一次Reduce方法,方法内迭代这组数据进行计算。
MapReduce在大数据计算领域的地位举足轻重,可以使用很多廉价的机器达到惊人的算力。
图中是整个MapReduce的大致计算过程,详细介绍可看官网,后续我也会写一篇详细的介绍。

mapreduce 执行流程

Hive

架构于Hadoop之上,可以将结构化的HDFS文件映射成一张表,并提供了类似于SQL语法的HQL查询功能。毫不夸张的说正是因为有了Hive的诞生,Hadoop才会被大面积推广和使用,并且经久不息。

核心本质:将HQL语句转换成MapReduce任务

Hive的主要优缺点
优点:
避免了开发人员去实现Map和Reduce的接口,大大降低了学习成本
HQL语法类似于SQL语法,简单、容易上手
缺点:
执行效率比较低 Hive生成的MapReduce任务,不够智能化,容易造成数据倾斜
Hive的架构
Hive架构

  • HIVE:
    Meta Store: 元数据,一般存储在mysql
    Client: 客户端
    Driver:驱动器
    HQL Parse: 解析器,HQL解析和语法分析
    Physical Plan: 编译生成逻辑执行计划
    Query Optimizer: 对逻辑执行计划进行优化
    Execution: 把逻辑执行计划转换成物理执行计划
  • Hadoop
    Map Reduce: 执行计算
    HDFS: 文件存储

Pig

Pig和Hive类似,也是基于hadoop的封装计算,核心也是为了简化MapReduce的编程。不同的是Pig提供的语法更加类似于shell,所以导致两者的使用人群不一致。Hive更多的面向开发人员,而Pig更多的面向与运维人员。
pig架构

HBase

HBase是一个分布式、可扩展的、列式存储的、支持大数据量的实时开源数据库。
HBase基于面列式存储,其中RowKey的设计,使得他能够提供快速的点查和范围查询,但是不支持复杂的SQL查询
hbase架构
上图是HBASE的基础架构图。
HBASE的数据存储在HDFS上
Client:客户端,它提供了访问HBase的接口,并且维护了对应的cache来加速HBase的访问。
Zookeeper:存储HBase的元数据(meta表),无论是读还是写数据,都是去Zookeeper里边拿到meta元数据告诉给客户端去哪台机器读写数据
HRegionServer:它是处理客户端的读写请求,负责与HDFS底层交互,是真正干活的节点。
总结大致的流程就是:client请求到Zookeeper,然后Zookeeper返回HRegionServer地址给client,client得到Zookeeper返回的地址去请求HRegionServer,HRegionServer读写数据后返回给client。

届于大数据技术革新太快,本文会不定时更新,如果感兴趣的话,可以关注下。

大数据hadoop生态技术简介
zhoushimiao1990的博客
06-15 3559
大数据生态知识体系
大数据导论——Hadoop生态系统
m0_63094069的博客
06-23 3965
Hadoop生态系统及各组成部分简介
【深入探秘Hadoop生态系统全面解析各组件及其实际应用
最新发布
weixin_39372311的博客
08-01 486
大数据时代,如何高效处理和存储海量数据成为企业面临的重大挑战。根据Gartner的统计,到2025年,全球数据量将达到175泽字节(ZB),传统的数据处理技术已经无法满足这一需求。Hadoop生态系统作为一种强大的大数据处理解决方案,广泛应用于各个行业。本文将深入探讨Hadoop生态系统中的各个组件及其实际应用,帮助企业解决大数据处理的难题。
Hadoop生态系统介绍
热门推荐
woshiwanxin102213的专栏
02-22 5万+
1、Hadoop生态系统概况 Hadoop是一个能够对大量数据进行分布式处理的软件框架。具有可靠、高效、可伸缩的特点。 Hadoop的核心是HDFS和Mapreduce,hadoop2.0还包括YARN。 下图为hadoop生态系统: 2、HDFSHadoop分布式文件系统) 源自于Google的GFS论文,发表于2003年10月,HDFS是GFS克隆版。 是Hadoo
Hadoop生态系统
陌上花开
05-24 5万+
首先我们先了解一下Hadoop的起源。然后介绍一些关于Hadoop生态系统中的具体工具的使用方法。如:HDFS、MapReduce、Yarn、Zookeeper、Hive、HBase、Oozie、Mahout、Pig、Flume、Sqoop。
大数据技术Hadoop入门理论系列之一----hadoop生态介绍
weixin_34279061的博客
01-05 1372
Technorati 标记: hadoop,生态圈,ecosystem,yarn,spark,入门1. hadoop 生态概况Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。具有可靠、高效、可伸缩的特点。Hadoop的核心是YARN,HDFS和Mapred...
Hadoop
qq_42454058的博客
06-10 250
Hadoop的组成部分 hadoop2.0 以后的四个模块: - Hadoop Common:Hadoop模块的通用组件 - Hadoop Distributed File System:分布式文件系统 - Hadoop YARN:作业调度和资源管理框架 - Hadoop MapReduce:基于YARN的大型数据集并行计算处理框架 hadoop3.0 新扩展的两个模块: - Hadoop Ozone:Hadoop的对象存储机制 - Hadoop Submarine:Hadoop的机器学习引擎 Hadoop
Hadoop生态系统概览
07-11
Hadoop生态系统不仅包含了HDFS和YARN这两个核心组件,还有一系列工具和框架共同构成了一个全面大数据处理平台。以下是一些关键的组成部分: ##### 3.1 MapReduce MapReduce是Hadoop的原始计算框架,主要用于处理...
基于Hadoop生态系统大数据解决方案综述.docx
05-16
本文将深入探讨Hadoop生态系统的基本概念、关键技术和应用场景,为读者提供一个全面了解基于Hadoop大数据解决方案的视角。 ##### 1.1 大数据的概念与特点 大数据通常指那些在规模、速度或复杂度上超出了传统数据...
Hadoop生态圈总体介绍
04-13
Hadoop生态圈总体介绍 Hadoop生态圈总体介绍 Hadoop生态圈总体介绍
Hadoop生态系统及其版本演化.zip
01-12
Hadoop生态系统以其分布式、容错性和可扩展性著称,为各种规模的企业提供了处理大数据的强大工具。这个压缩包文件“Hadoop生态系统及其版本演化.zip”显然包含了关于Hadoop发展历程和其生态系统内各组件的详细信息,...
Hadoop生态系统组件介绍:Hive与数据仓库架构
在本章中,我们将介绍Hadoop生态系统的概念、重要组件以及数据仓库在其中的地位与作用。 ## 1.1 Hadoop生态系统简介 Hadoop生态系统是由Apache软件基金会维护和发展的开源软件框架,旨在解决大规模数据存储和处理...
Hadoop生态系统介绍
zgustb的专栏
12-25 4281
一. Hadoop生态系统架构 二. 生态系统介绍 2.1 HDFS(分布式文件存储系统) Hadoop分布式文件系统是Hadoop项目的两大核心之一,是针对谷歌文件系统(GoogleFileSystem,GFS)的开源实现。是Hadoop体系中数据存储管理的基础。它是一个高度容错的系统,能检测和应对硬件故障,用于在低成本的通用硬件上运行。HDFS简化了文件的一致性模型,通过流式数据访问...
Hadoop生态系统HDFS、ZooKeeper、MapRuduce、Pig....)
web13618542420的博客
08-29 2112
Hadoop是一个能够对大量数据进行分布式处理的软件框架,具有可靠、高效、可伸缩的特点。。Hadoop 2.0版本引入了HA (High Alability高可用性)和Yam (资源调度),这是与Hadoop 1.0的最大区别。Hadoop 1.0生态系统如图2-1所示。Hadoop 2.0主要由三部分组成: HDFS 分布式文件系统、MapReduce编程模型和Yarm源管理。Hadoop 2.0生态系统如图2-2所示。...
写文章

热门文章

  • Swagger 自定义UI界面 96733
  • ElasticSearch join连接查询 55437
  • HTML5 js控制vedio视频和分段播放 30513
  • 技术泡妹子二:篡改百度首页,惊呆女神 29966
  • 微信公众平台开发教程Java版(六) 事件处理(菜单点击/关注/取消关注) 25182

分类专栏

  • 大数据 14篇
  • AI 5篇
  • 统计学 5篇
  • 管理 2篇
  • 微信公众平台开发 7篇
  • 数据治理 1篇
  • 数说金融 2篇
  • 架构之路 8篇
  • ElasticSearch 3篇
  • 用技术泡妹子 2篇
  • 计算机视觉 1篇
  • Java 9篇
  • redis 4篇
  • JavaScript 4篇
  • 数据库 6篇
  • python 1篇
  • web前端 9篇
  • 其他 3篇

最新评论

  • 线性代数:向量、张量、矩阵和标量

    ha_lydms: 我很喜欢作者的文风,总能够让我沉浸其中,忘记时间的流逝。

  • 常见的20种数据值异常检验方法

    五只鸭子: 好的,感谢反馈,后续准备更新下,每个都详细介绍并举例

  • 常见的20种数据值异常检验方法

    Cosophia: 二十种深得我心,但是更希望博主给出实用性强的,有具体案例解释说明的

  • 微信公众平台开发教程Java版(五) 自定义菜单创建

    魏初学: 代码包有没有别的下载地址呀,hub访问不了了表情包

  • 微信全接口封装SDK 20分钟构建微信项目

    魏初学: github访问不了了,,表情包

最新文章

  • Redis 逻辑过期策略设计思路
  • 岭回归:优化预测的利器
  • 概率与常见的概率分布
2024年10篇
2023年2篇
2022年10篇
2018年5篇
2017年4篇
2016年5篇
2015年5篇
2014年17篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

五只鸭子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家玻璃钢雕塑碎片泸水市玻璃钢雕塑定做开封玻璃钢浮雕人物雕塑公司胶州玻璃钢蜘蛛雕塑鲁权屯镇玻璃钢雕塑玻璃钢雕塑加工公司贵不贵玻璃钢雕塑运输注意事项乌海玻璃钢雕塑生产厂家吉林玻璃钢雕塑公司商场主题创意商业美陈怎么做佛山美陈玻璃钢雕塑芜湖玻璃钢龙雕塑设计吴江玻璃钢雕塑加工厂福建商业商场美陈费用不锈钢和玻璃钢雕塑造价漳州玻璃钢卡通雕塑价格范围江门树脂玻璃钢雕塑现货玻璃钢花盆厂家北京平顶山太湖石玻璃钢雕塑园林玻璃钢花盆厂家溧水春季商场美陈上海商场主题创意商业美陈道具江苏商场美陈墙面昆明水果玻璃钢雕塑优势云浮户外玻璃钢植物雕塑皇姑玻璃钢花盆花器玻璃钢几何雕塑加工湘潭广场玻璃钢雕塑价格玻璃钢制品铜玻璃钢卡通雕塑制作香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化