【Hadoop】建立圈内组件的宏观认识
- 01存储
- 02计算
- 03调度
- 04其他
- 05回忆
 
 
 
 
众多组件们构建了大规模分布式计算和存储平台。本文介绍Hadoop生态圈中各个组件的主要功能和作用,辅助学者理解每个组件的定位和用途,从而建立对圈内组件的宏观认识。梳理清楚HDFS、MapReduce、YARN、Hive、HBase、Spark、pig、Sqoop、Oozie、Ambari、Flume、tez、Mahout、Zookeeper、Altas、Hue、Range、kylin等核心组件在大数据处理和分析中的角色定位。多说不唠,进入正题…
01存储
- HDFS (Hadoop Distributed File System)
- 角色:Hadoop体系的核心组件之一,是一个分布式文件系统。
- 主要功能: - 大规模数据存储:能够存储超大文件(TB级别)。
- 高容错性:通过数据复制确保数据的可靠性。
- 高吞吐量:优化大数据集的访问,适合批处理。
 
- 架构: - NameNode:管理文件系统的命名空间和客户端对文件的访问。
- DataNode:存储实际的数据块。
 
- 特点: - 适合写一次,读多次的场景。
- 不适合低延迟数据访问和大量小文件存储。
 
- HBase
- 角色:分布式、可扩展的面向列的NoSQL数据库。
- 主要功能: - 实时读写:提供对大规模数据的随机、实时读写访问。
- 存储结构化和半结构化数据。
- 支持线性和模块化扩展。
 
- 架构: - HMaster:管理和分配region,处理元数据操作。
- RegionServer:负责服务和管理regions。
- Zookeeper:协调分布式操作。
 
- 特点: - 基于HDFS存储,利用HDFS的容错能力。
- 适合需要随机、实时读写访问的大数据场景。
- 支持高并发,可以处理大量的读写请求。
 
02计算
- MapReduce
- 角色:Hadoop的核心计算框架
- 功能:用于并行处理大规模数据集的分布式计算模型
- 特点: - 将复杂问题分解为可并行计算的简单任务
- 高容错性,能够处理节点故障
- 适合批处理作业
 
- Hive
- 角色:数据仓库工具
- 功能:提供类SQL查询语言(HiveQL)来分析存储在Hadoop中的大规模数据
- 特点: - 将SQL查询转换为MapReduce作业
- 适合复杂的批量数据处理
- 提供了丰富的内置函数和自定义函数能力
 
- Spark
- 角色:快速通用的集群计算系统
- 功能:提供内存计算功能,用于大规模数据处理
- 特点: - 支持多种编程语言(Scala, Java, Python, R)
- 包含多个库,如Spark SQL, MLlib, GraphX, Spark Streaming
- 比MapReduce快很多,特别是对于迭代算法
 
- Kylin
- 角色:开源的分布式分析引擎
- 功能:提供Hadoop/Spark之上的SQL接口及多维分析(OLAP)能力
- 特点: - 极速OLAP引擎
- 支持超大规模数据集
- 与现有BI工具无缝集成
 
- Impala
- 角色:开源的分布式SQL查询引擎
- 功能:为存储在Hadoop的数据提供低延迟和高并发的SQL查询
- 特点: - 比Hive快得多,接近传统数据库的查询速度
- 支持HDFS和HBase作为存储系统
- 与Hive的元数据、SQL语法和用户界面兼容
 
- Flink
- 角色:分布式大数据处理引擎
- 功能:提供数据流和批数据处理能力
- 特点: - 真正的流处理,支持事件时间和处理时间
- exactly-once语义
- 低延迟,高吞吐量
- 支持迭代处理和增量迭代
 
03调度
- YARN (Yet Another Resource Negotiator)
- 角色:Hadoop的资源管理系统
- 功能: - 管理集群资源并调度任务
- 允许多种数据处理引擎在Hadoop上运行
 
- 特点: - 将资源管理和作业调度/监控分离
- 支持多种应用程序,不仅限于MapReduce
- 提高集群利用率和可扩展性
 
- Oozie
- 角色:工作流调度系统
- 功能: - 管理和协调Hadoop作业
- 定义、执行和监控复杂的数据管道
 
- 特点: - 支持多种Hadoop作业类型(MapReduce, Pig, Hive等)
- 可以通过XML定义工作流
- 提供基于时间和数据的作业触发机制
 
- Zookeeper
- 角色:分布式协调服务
- 功能: - 为分布式应用提供同步、配置管理、分组和命名服务
- 维护分布式系统的一致性
 
- 特点: - 高性能、高可用性
- 提供简单的接口
- 被广泛用于Hadoop生态系统中,如HBase
 
- Dolphin Scheduler (Apache DolphinScheduler)
- 角色:分布式和可扩展的工作流调度平台
- 功能: - 可视化DAG工作流定义
- 工作流的调度、执行和监控
 
- 特点: - 支持多种任务类型(Shell, SQL, Python等)
- 提供强大的任务依赖管理
- 具有容错和失败恢复机制
- 提供友好的用户界面,易于操作和监控
- 支持多租户
 
04其他
- Pig
- 角色:高级数据流语言和执行框架
- 功能:简化MapReduce操作的创建和执行
- 特点: - 使用Pig Latin语言,类似于SQL但更适合数据流
- 可以处理结构化和非结构化数据
- 适合数据转换和ETL过程
 
- Sqoop
- 角色:数据传输工具
- 功能:在Hadoop和结构化数据存储(如关系数据库)之间传输数据
- 特点: - 支持增量导入
- 可以将导入的数据直接存为Hive表
- 支持多种数据库系统
 
- Flume
- 角色:分布式日志收集系统
- 功能:收集、聚合和移动大量日志数据
- 特点: - 灵活的架构基于流式数据流
- 可靠性机制和故障恢复
- 可定制性强,支持多种数据源和目标
 
- Ambari
- 角色:Hadoop集群管理工具
- 功能:简化Hadoop的安装、管理和监控
- 特点: - 提供直观的Web UI
- 支持多种Hadoop组件的配置和管理
- 提供集群健康检查和告警功能
 
- Tez
- 角色:数据处理框架
- 功能:加速Hadoop上的数据处理应用
- 特点: - 比MapReduce更快,特别是对于复杂的数据处理任务
- 被Hive和Pig等工具用作执行引擎
- 支持复杂的DAG(有向无环图)作业
 
- Atlas
- 角色:元数据管理和治理平台
- 功能:为Hadoop生态系统提供元数据管理和数据治理能力
- 特点: - 提供数据分类和血缘关系追踪
- 支持复杂的元数据搜索
- 提供安全和策略引擎
 
- Hue
- 角色:Hadoop用户界面
- 功能:提供Web界面来与Hadoop交互
- 特点: - 支持多种Hadoop组件,如HDFS、Hive、HBase等
- 提供查询编辑器、文件浏览器等工具
- 用户友好,易于使用
 
- Ranger
- 角色:安全管理框架
- 功能:为Hadoop集群提供全面的安全管理
- 特点: - 集中化的安全管理
- 细粒度的访问控制
- 支持审计和数据屏蔽
 
05回忆

相关文章:
 
【Hadoop】建立圈内组件的宏观认识
01存储02计算03调度04其他05回忆 众多组件们构建了大规模分布式计算和存储平台。本文介绍Hadoop生态圈中各个组件的主要功能和作用,辅助学者理解每个组件的定位和用途,从而建立对圈内组件的宏观认识。梳理清楚HDFS、MapReduce、YARN、Hive、HBase、Spark…...
 
C++:命名空间与输入输出
目录 前言 一、命名空间 1.1 namespace的价值 1.2 namespace的定义 1.3 命名空间的使用 二、C输入&输出 前言 C是一种面向对象的计算机程序设计语言,它扩展了C语言的功能,并引入了面向对象编程的概念,如类、继承和多态等&a…...
 
Azure DevOps Server 数据库日志已满,TF30042: The database is full
Contents 1. 问题描述2. 处理方式 2.1 系统备份2.2 收缩日志2.3 恢复模式2.4 日志增长无法控制 1. 问题描述 Azure DevOps Server 作为微软的软件开发管理平台产品,理所当然地使用了微软的数据库软件SQL Server。 在一个大型的开发团队中,Azure DevOps S…...
[C#]OpenCvSharp 实现Bitmap和Mat的格式相互转换
//转为 bitmap方法一: Bitmap map OpenCvSharp.Extensions.BitmapConverter.ToBitmap(mat); process_pictureBox.Image map; //转为 bitmap方法二: Bitmap map new Bitmap(mat.ToMemoryStream()); process_pictureBox.Image map; //Image img 转为…...
【区块链+金融服务】基于区块链的供应链金融系统 | FISCO BCOS应用案例
传统供应链金融存在着信息不对称、信任问题和繁琐流程等弊端。为了解决这些问题,京北方搭建了基于区块链 的供应链金融系统,提供了更高效、透明、安全和可信的交易环境。 系 统 采 用 FISCO BCOS 为 底 层 链, 技 术 栈 使 用 Java 语 言 进…...
 
AI语言大模型商业价值深度解析
点击蓝字 关注我 随着人工智能(AI)技术的飞速发展,特别是深度学习算法的进步,AI语言大模型在自然语言处理领域的表现日益突出。国内外多种语言大模型如:OpenAi 的 ChatGpt,阿里通义千问,百度文心…...
理解DDD领域驱动设计思想
一、引言 在软件开发的广袤领域中,领域驱动设计(Domain-Driven Design,简称 DDD)犹如一颗璀璨的明星,备受瞩目。对于期望运用 DDD 开展项目的研发人员而言,明晰 DDD 的本质是实现其有效应用的基石。需注意…...
 
音频剪辑软件哪个好用?五大音频剪辑软件分享
如果你正打算在家自学视频制作,那么恭喜你,你已经踏上了一段充满魔法与惊喜的旅程!不过,别忘了,视频的灵魂不仅仅在于画面,更在于那直击心灵的音效。 想象一下,一个精心剪辑的片段,…...
 
12.2 使用prometheus-sdk向pushgateway打点
本节重点介绍 : 使用golang sdk打prometheus4种指标,推送到pushgateway gauge、counter、histogram、summary的初始化4种类似的设置值的方法推送到pushgateway的方法 prometheus配置采集pushgateway,grafana上配大盘 golang-sdk 项目地址 https://git…...
HTTPS 详解
HTTPS 是以安全为目标的 HTTP 通道,它在 HTTP 中加入 SSL 层以提高数据传输的安全性。HTTP 被用于在 Web 浏览器和网站服务器之间传递信息,但以明文形式发送内容,不提供任何方式的数据加密,如果攻击者截取了 Web 浏览器和网站服务…...
 
Microsoft Edge 使用方法与秘诀概览
目录 编辑引言 Microsoft Edge 功能与技巧概览 掌握这些设置技巧,让 Edge 浏览器的体验更干净 1. 使用阅读视图 2. 开启广告过滤 3. 管理扩展 4. 个性化新标签页 5. 使用网页截图 6. 清理浏览器缓存 7. 管理启动设置 8. 自定义地址栏建议 9. 使用内置笔…...
【视频】onvif、RTP、RTCP、SDP、RTSP、gb21818区别
ONVIF (Open Network Video Interface Forum): ONVIF是一个全球性的开放网络视频接口论坛,致力于发展基于IP网络的物联网设备的标准化。它提供了一个通用的标准接口,使不同厂商生产的网络视频产品能够互相兼容。 RTP (Real-time Transport Protocol): R…...
 
8-4 循环神经网络
对于 (8.4.2)中的函数 f f f,隐变量模型不是近似值。 毕竟 h t h_{t} ht是可以仅仅存储到目前为止观察到的所有数据, 然而这样的操作可能会使计算和存储的代价都变得昂贵。 回想一下,我们在前面讨论过的具有隐藏单元的隐藏层。 值得注意的…...
 
Linux系统编程 --- 多线程
线程:是进程内的一个执行分支,线程的执行粒度,要比进程要细。 一、线程的概念 1、Linux中线程该如何理解 地址空间就是进程的资源窗口。 在一个程序里的一个执行路线就叫做线程(thread)。更准确的定义是࿱…...
Grafana中的rate与irate以及histogram
用法 rate rate函数用于计算一个时间序列在给定时间范围内的平均速率。它对每个数据点进行线性插值来计算速率,因此对于平滑和稳定的数据来说,rate是一个不错的选择。语法如下: rate(metric_name[time_range])metric_name: 指标名称。time…...
什么是网络安全态势感知
态势感知是一种基于环境的、动态、整体地洞悉安全风险的能力,是以安全大数据为基础,从全局视角提升对安全威胁的发现识别、理解分析、响应处置能力的一种方式、最终是为了决策与行动,是安全能力的落地 态势感知的重要性 随着网络与信息技术的…...
 
php 在app中唤起微信app进行支付,并处理回调通知
<?phpnamespace app\api\controller;use think\facade\Db; use think\facade\Log;class Wxzf {...
 
高效同步与处理:ADTF流服务在自动驾驶数采中的应用
目录 一、ADTF 流服务 1、流服务源(Streaming Source) 2、流服务汇(Streaming Sink) 二、数据链路 1、数据管道(Data Pipe) 2、子流(Substreams) 3、触发管道(Tri…...
 
【Arduino】ATmega328PB 连接 LSM6DS3 姿态传感器,并读数据(不确定 ESP 系列是否可行,但大概率是可行的)
总览 1.初始化 ATmega328PB,默认大家已经完成了 328 的配置准备工作,已经直接能够向里面写入程序 2.接线,然后验证 mega328 的 I2C 设备接口能否扫描到 LSM6DS3 3.编写代码,上传,查看串口数据。完成。 一、初始化 AT…...
 
live2d + edge-tts 优雅的实现数字人讲话 ~
震惊!live2d数字人竟开口说话 ~ 之前有想做数字人相关项目,查了一些方案。看了一些三方大厂的商用方案,口型有点尴尬,而且很多是采用视频流的方案,对流量的消耗很大。后来了解了live2d 技术,常在博客网页上…...
 
wordpress后台更新后 前端没变化的解决方法
使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…...
 
《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》
引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...
 
边缘计算医疗风险自查APP开发方案
核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...
 
【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例
文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...
macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用
文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...
 
屋顶变身“发电站” ,中天合创屋面分布式光伏发电项目顺利并网!
5月28日,中天合创屋面分布式光伏发电项目顺利并网发电,该项目位于内蒙古自治区鄂尔多斯市乌审旗,项目利用中天合创聚乙烯、聚丙烯仓库屋面作为场地建设光伏电站,总装机容量为9.96MWp。 项目投运后,每年可节约标煤3670…...
大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计
随着大语言模型(LLM)参数规模的增长,推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长,而KV缓存的内存消耗可能高达数十GB(例如Llama2-7B处理100K token时需50GB内存&a…...
 
10-Oracle 23 ai Vector Search 概述和参数
一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...
 
基于Java+MySQL实现(GUI)客户管理系统
客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息,对客户进行统一管理,可以把所有客户信息录入系统,进行维护和统计功能。可通过文件的方式保存相关录入数据,对…...
