大数据
文章平均质量分 85
拾光师
瞧一瞧,看一看,好吃还不贵。量大管饱
多年java开发经验,现征战于互联网广告行业
分享各种java相关知识,每周更新
个人作品地址 https://zhhll.com.cn
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Hadoop安全模式详解
Hadoop HDFS的安全模式是NameNode启动时的一种特殊状态,主要用于保障元数据一致性和数据块可用性。该模式下系统只读不可写,NameNode会加载元数据并校验数据块副本状态,当满足最小副本比例(默认99.9%)且稳定30秒后自动退出。管理员可通过命令手动控制安全模式,常见问题包括无法自动退出(需检查DataNode状态或调整参数)和误操作进入(手动退出即可)。安全模式是HDFS保证数据完整性的重要机制。原创 2025-10-26 11:16:17 · 444 阅读 · 0 评论 -
Hadoop RPC深度解析:分布式通信的核心机制
Hadoop RPC是分布式系统中实现高效通信的核心机制,采用四层架构设计:序列化层通过Writable接口实现高效对象转换;函数调用层利用动态代理和反射完成远程方法定位;网络传输层基于TCP/IP保证可靠通信;服务器端通过Reactor模型处理并发请求。该机制具有高效性、可靠性和易用性特点,支持HDFS、YARN等组件间的频繁交互。Hadoop RPC通过分层设计,屏蔽底层细节,使开发者能够像调用本地方法一样实现跨节点通信,成为Hadoop生态系统的重要基础。原创 2025-09-29 16:37:16 · 1147 阅读 · 0 评论 -
Hadoop 1.x 与 2.x 版本对比:架构演进与核心差异解析
Hadoop 1.x到2.x的架构演进实现了重大升级,核心改进是引入YARN框架。1.x版本中JobTracker同时负责资源管理和任务调度,存在单点故障、资源分配僵化等问题。2.x将资源管理职责拆分给ResourceManager,任务调度由各应用的ApplicationMaster负责,支持动态资源分配和高可用,解决了1.x的性能瓶颈。2.x还支持多计算框架共享集群资源,显著提升了扩展性和灵活性。对比显示,2.x在架构设计、资源利用率、集群规模支持等方面均有显著优势。原创 2025-09-19 16:24:41 · 1136 阅读 · 1 评论 -
Hadoop简介:分布式系统的基石与核心架构详解
Hadoop简介:分布式系统核心架构解析 Hadoop作为Apache基金会开发的分布式系统基础架构,通过HDFS和MapReduce两大核心组件解决了海量数据存储与计算问题。HDFS采用主从架构,由NameNode、DataNode和SecondaryNameNode组成,具备高容错性和高吞吐量特性。MapReduce框架将计算任务分解为Map和Reduce阶段,实现分布式并行处理。Hadoop适用于PB级数据的离线批处理场景,具有高可用性、高扩展性、高效性和高容错性四大优势,但在低延迟访问、小文件存储和原创 2025-09-12 15:25:02 · 1066 阅读 · 0 评论 -
Google Bigtable深度解析:分布式存储的设计典范
摘要 Google Bigtable是一种分布式结构化数据存储系统,具有高扩展性、高可用性和灵活的数据模型。它采用三维有序映射(行键、列、时间戳)存储数据,支持PB级数据量。系统架构包含客户端层、主控服务器和子表服务器,依赖GFS和Chubby实现持久化存储和分布式协调。Bigtable通过子表分片、内存MemTable和磁盘SSTable实现高效读写,其设计理念深刻影响了HBase等开源数据库。核心优势包括自动负载均衡、多版本数据支持和灵活的动态列管理,适用于大规模数据处理场景。原创 2025-09-10 10:11:18 · 1138 阅读 · 0 评论 -
Google GFS 深度解析:分布式文件系统的开山之作
Google GFS是分布式文件系统的开创性技术,专为海量数据存储优化。其核心架构包括主控服务器(管理元数据)、数据块服务器(存储数据块)和客户端(提供访问接口)。GFS采用64MB大块设计减少元数据量,通过租约机制授权主节点协调写操作,避免主控服务器成为瓶颈。系统具有高容错性(多副本存储)、高吞吐量(批量读写优化)和强扩展性等特点,为HDFS等后续系统提供了设计范本。GFS放弃部分POSIX兼容性,针对大数据场景的追加写和批量读进行了专门优化。原创 2025-09-09 20:16:20 · 999 阅读 · 0 评论 -
flume拓扑结构详解:从简单串联到复杂聚合的完整指南
Flume拓扑结构详解与配置指南 Flume提供三种核心拓扑结构满足不同数据采集需求:1)简单串联通过Agent链式传输实现跨网络转发,配置简单但存在单点故障风险;2)复制模式将数据同时写入多个存储系统(如HDFS+Kafka);3)多路复用根据Header字段动态路由数据。关键配置要点包括:使用File Channel保障可靠性、合理设置拦截器实现数据分类、为关键链路配置监控。复制模式适合多副本存储场景,而多路复用更适用于按数据类型分发的需求。实际部署时需权衡资源消耗与业务需求,复杂场景可混合使用多种拓扑原创 2025-09-03 17:12:21 · 1157 阅读 · 0 评论 -
flume扩展实战:自定义拦截器、Source 与 Sink 全指南
Flume 内置的组件虽然能满足大部分场景,但在复杂业务需求下(如特殊格式数据采集、定制化数据清洗),需要通过自定义组件扩展其功能。本文将详细讲解如何自定义 Flume 拦截器、Source 和 Sink,从代码实现到配置部署,带你掌握 Flume 扩展的核心技巧。自定义的Source需要继承AbstractSource,实现Configurable和PollableSource接口。头信息,最终不同类型的事件会路由到对应的 Channel 和 Sink,控制台会输出分类后的日志。原创 2025-09-02 22:32:01 · 826 阅读 · 0 评论 -
flume接收处理器:构建高可用与高性能的数据链路
机制,提供了强大的故障转移(Failover)和负载均衡(Load Balancing)能力,确保数据链路的高可用性和吞吐量。**:惩罚时间不宜过短(可能导致频繁切换)或过长(故障恢复后不能及时复用),建议根据 Sink 恢复时间设置(如 30-60 秒);故障转移处理器通过优先级机制确保数据始终被健康的 Sink 处理,即使部分 Sink 故障也不会中断数据流转。:故障 Sink 进入惩罚期(如 30 秒),期间不会被选择,流量自动切换到次高优先级 Sink(如。原创 2025-09-01 23:13:20 · 996 阅读 · 0 评论 -
flume事务机制详解:保障数据可靠性的核心逻辑
Flume事务机制解析:保障数据可靠性的核心逻辑 Flume通过内置的事务机制实现数据采集过程中的"不丢不重"需求。其核心在于Source→Channel和Channel→Sink两个独立的事务阶段:Put事务和Take事务。Put事务通过临时缓冲putlist实现数据原子写入Channel,Take事务则利用takelist确保数据可靠发送至目标存储。当出现异常时,系统通过回滚机制恢复数据。不同Channel类型对事务支持存在差异,File Channel和Kafka Channel通原创 2025-08-29 16:17:12 · 961 阅读 · 0 评论 -
flume监控文件写入 Kafka 实战:解耦应用与消息队列的最佳实践
写入 Kafka 会导致应用与 Kafka 强耦合(如 Kafka 故障可能影响应用运行)。更优的方案是:应用程序将日志写入本地文件,通过 Flume 监控文件并异步同步到 Kafka,实现 “应用 - 采集 - 存储” 的解耦。:Flume 支持监控文件、目录、网络等多种数据源,统一接入 Kafka。flume监控文件写入 Kafka 实战:解耦应用与消息队列的最佳实践。:应用仅需写本地文件,无需关心 Kafka 集群状态,降低耦合风险;在 Flume 崩溃时会丢失数据,对可靠性要求高的场景建议使用。原创 2025-08-27 14:52:47 · 1057 阅读 · 0 评论 -
flume监控目录文件实战:三种 Source 方案对比与配置指南
在实际业务中,监控目录文件变化并实时采集数据是常见需求(如应用日志、业务数据文件等)。是 Flume 1.7+ 新增的高级方案,支持监控多个文件,通过偏移量文件记录读取位置,重启后不丢失进度。:检测到新文件后,Flume 打开文件并读取内容,转换为 Event 发送到 Channel。监控指定目录,当新文件放入目录后自动读取,读取完成后标记为 “已处理”(如添加后缀)。记录每个文件的最后读取位置(JSON 格式),进程重启后从断点继续,避免重复或丢失。,前者支持文件删除后重建的场景(如日志轮转后新文件)。原创 2025-08-26 16:06:27 · 754 阅读 · 0 评论 -
flume实战:从零配置到启动运行的完整指南
本文将通过一个简单案例,带你从零开始配置 Flume Agent,理解配置文件的核心逻辑,并通过命令启动采集任务,快速上手 Flume 的使用流程。若配置正确,该命令会在log文件中一直打印数字,表明序列生成器正在产生数据,且通过 Sink 打印到日志,日志所在位置查看log4j.properties中的配置。flume启动时默认堆内存为200M,如果实际数据量很大时,需要修改flume-env.sh中的$JAVA_OPTS。在启动 Flume 前,需先了解核心命令参数,确保启动命令正确无误。原创 2025-08-15 16:25:29 · 680 阅读 · 0 评论 -
日志数据链路的 “搬运工”:Flume 分布式采集的组件分工与原理
本文全面解析Apache Flume分布式日志采集系统的核心原理与组件架构。Flume作为大数据生态中的关键工具,具备高可用、高可靠和易扩展的特性,能够从多种数据源实时采集并传输数据到存储系统。文章详细介绍了Flume的核心组件:Source(事件源)、Channel(通道)和Sink(接收器),以及它们协同工作的流程,形成完整的数据采集管道。同时深入讲解了Event(事件)、Channel Selector(通道选择器)、Sink Group(接收器组)等关键概念,并列举了Flume丰富的内置组件类型及其原创 2025-08-13 18:33:29 · 1321 阅读 · 0 评论 -
副本数不足就拒写?HDFS 安全模式的 “保守” 设计是否合理?
Hadoop NameNode在启动时会进入安全模式,首先加载fsimage文件并执行edits日志操作,在内存建立元数据映射后创建新的fsimage和空日志。此时系统处于只读状态,NameNode收集DataNode报告,当数据块达到最小副本数即视为安全。待安全数据块达到一定比例后,安全模式自动解除。副本不足的块会被自动复制。数据块位置信息由DataNode维护,NameNode不直接存储这些信息。原创 2025-07-21 16:39:03 · 339 阅读 · 0 评论 -
Hadoop RPC 分层设计的哲学:高内聚、低耦合的最佳实践
服务器端处理框架:服务器端处理框架可被抽象为网络IO模型,采用了基于Reactor模式的事件驱动IO模型。函数调用层:主要作用是定位要调用的函数并执行该参数,采用了java反射机制和动态代理实现了函数调用。网络传输层:描述了client和server之间消息传输的方式,基于TCP/IP的socket机制。序列化层:主要作用是将结构化对象转为字节流以便于通过网络进行传输或写入持久存储。原创 2025-06-24 11:30:11 · 440 阅读 · 0 评论 -
Hadoop 版本进化论:从 1.0 到 2.0,架构革命全解析
Hadoop1.x版本由Common、HDFS和MapReduce三部分组成,存在JobTracker资源管理和作业控制耦合、单点故障以及槽位资源分配不均衡等问题。Hadoop2.x版本新增Yarn组件,将资源调度与计算解耦,通过ResourceManager全局资源管理和ApplicationMaster单应用管理提升系统效率。Yarn的引入解决了1.x版本的资源调度瓶颈问题。原创 2025-06-17 18:18:05 · 415 阅读 · 0 评论 -
Hadoop 十年:从谷歌论文到全球企业的标配技术
Hadoop是由Apache基金会开发的分布式系统基础架构,其核心组件包括分布式文件系统HDFS和计算框架MapReduce。HDFS具有高容错性、高吞吐量等特点,适合处理超大规模数据;MapReduce为海量数据提供并行计算能力。Hadoop集群由NameNode(元数据管理)、DataNode(数据存储)和SecondaryNameNode(辅助节点)组成。三大发行版本包括Apache基础版、Cloudera企业版和Hortonworks文档优化版。Hadoop优势在于高可用、高扩展、高效和容错性强,适原创 2025-06-11 14:01:16 · 548 阅读 · 0 评论
分享