Flume
文章平均质量分 96
大数据-Flume,数据处理的前端。
武子康
Hi, I'm Zikang / 武子康
好奇心驱动的探索者 | INTJ / INFJ
我热爱探索一切值得深究的事物。对技术、成长、效率、认知、人生有着持续的好奇心和行动力。
坚信「飞轮效应」,相信每一次微小的积累,终将带来深远的改变。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
大数据-20-Flume 采集数据双写+HDFS 监控目录变化 Agent MemoryChannel Source
Apache Flume 是一个分布式、高可靠的日志采集框架,常用于将日志从本地系统采集并传输至如 HDFS、Kafka 等大数据系统。Flume 主要由 Source(数据源)、Channel(缓冲通道)、Sink(数据输出)三大组件组成。常用的 Source 包括 taildir、spooldir 等;Channel 可使用 memory 与 file 组合以实现高性能与数据持久性的平衡;Sink 则支持 Kafka 实时消费和 HDFS 离线存储,常用于“实时 + 离线”双写架构。原创 2024-07-09 10:17:40 · 1261 阅读 · 0 评论 -
大数据-19 Flume Agent采集数据至HDFS集群 监听Hive日志 操作记录写入
Apache Flume 是一款分布式、高可用的数据采集系统,广泛应用于日志收集与传输场景。其核心架构由 Source、Channel 和 Sink 三大组件组成,分别负责数据采集、中转缓存和写入目标系统(如 HDFS、Kafka 等)。配置文件中可灵活定义数据源(如 exec、spooldir、http)、通道(内存或文件)、写入目标(如 HDFS 的路径、滚动策略、压缩格式等)。Flume 支持通过多级 Agent 实现数据聚合,也可与 Kafka、Spark、Hive 等组件集成,增强数据处理能力。原创 2024-07-09 09:58:57 · 1030 阅读 · 0 评论 -
大数据-18 Flume HelloWorld 实现Source Channel Sink 控制台流式收集
Apache Flume 是一个高可用、可扩展的日志采集系统,广泛应用于大数据环境中,支持将日志数据高效传输至 HDFS、Kafka 等目标系统。其核心架构包括 Source(采集)、Channel(缓存)、Sink(下沉),可灵活组合,支持 exec、netcat、kafka、http 等多种数据源类型。Channel 支持 memory 和 file 等形式,Sink 可对接 HDFS、Kafka、ElasticSearch 等。Flume 具备事务机制与负载均衡能力,适合构建可靠的数据采集管道。原创 2024-07-08 10:08:37 · 499 阅读 · 0 评论 -
大数据-17 Flume 分布式日志收集 实时采集引擎 Source Channel Sink 串行复制负载均衡
Flume 是一个分布式、高可靠的日志采集系统,广泛用于大数据环境中日志数据的实时传输和汇聚。它的核心架构由 Source(数据源)、Channel(缓冲通道)和 Sink(数据输出)三大组件组成,协同实现日志从产生地到存储端的稳定流转。Flume 支持插入拦截器对数据进行预处理,也允许通过 Channel Selector 与 Sink Processor 实现数据路由与负载均衡。其支持多种数据源和输出目标,如 exec、spooldir、Kafka、HDFS 等。原创 2024-07-08 09:55:43 · 1207 阅读 · 0 评论 -
大数据-228 离线数仓 Flume Taildir + 自定义 Interceptor:从 JSON 提取时间戳写入 HDFS 分区
Apache Flume 的离线日志采集链路,给出一套工程化落地:使用 Taildir Source 监控多个目录与多文件正则匹配,为不同目录日志注入 logtype 等 Header;通过自定义 Interceptor(Java)解析 Event body 中的 JSON(fastjson),提取启动日志/事件日志的时间戳并转换为 yyyy-MM-dd 写入 logtime Header;最后由 HDFS Sink 基于 Header 动态路由写入不同 HDFS 路径,实现按天分区与可控的文件滚动(按大小原创 2024-11-19 09:32:50 · 4337 阅读 · 1 评论 -
大数据-227 离线数仓-Flume 1.9.0 自定义拦截器实战:TAILDIR 多目录采集,按 logtime/logtype 写入 HDFS 分区
使用 TAILDIR Source 监控多个目录(start/event),通过 filegroups headers 为不同来源打上 logtype;再配合自定义 Interceptor 从日志正文解析业务时间,写入 header=logtime。最终 HDFS Sink 采用动态路径 /user/data/logs/%{logtype}/dt=%{logtime}/,实现按日志类型分目录、按日志时间分区落盘。文中覆盖 jar-with-dependencies 投放位置、拦截器 Builder 配置原创 2024-11-18 09:25:29 · 4644 阅读 · 15 评论 -
大数据-226 离线数仓Flume 优化配置实战:batchSize/Channel/压缩/自定义拦截器与 OOM 修复
Flume 1.9.0 在离线数仓(日志采集→HDFS)场景的工程化优化:从 Source→Channel→Sink 全链路给出 batchSize、Memory/File Channel 的 capacity/transactionCapacity、压缩传输(gzip/snappy/lz4)等关键参数的可落地取值区间与取舍原则,重点解决高并发写入下的吞吐与稳定性问题。同时整理 Flume 常见 OOM 根因:默认 JVM 堆过小导致导入大日志或突发流量时崩溃,给出 flume-env.sh 的 -Xms/原创 2024-11-16 08:55:46 · 8644 阅读 · 12 评论 -
大数据-225 离线数仓 会员指标实战:Flume Taildir HDFS ODS/DWD/DWS/ADS 全链路落地
离线数仓建设,给出“日志采集→落地→分层→指标”的工程化路径。会员以设备唯一标识(Android IMEI / iOS OpenUDID)为口径,输出新增会员、活跃会员(DAU/WAU/MAU)与留存(次日/7日/30日)等核心指标。采集侧选择 Flume 1.8+ 的 Taildir Source 解决多目录增量追踪与断点续传(positionFile),通过 HDFS Sink 按日期分区写入,进入 ODS,再在 DWD 清洗明细、DWS 汇总主题、ADS 对外服务。给出 Taildir 正则匹配原创 2024-11-15 09:17:02 · 5431 阅读 · 7 评论
分享