Flume常见面试题

本文详细探讨了Flume的组件、事务处理、拦截器实现、Channel选择、监控、内存管理和优化策略,以及HDFS小文件问题及其解决方案,是理解Flume核心概念和技术的必备指南。
摘要由CSDN通过智能技术生成

一、Flume 组成、Put 事务、Take 事务

Taildir Source:断点续传、多目录。Flume1.6 以前需要自己自定义 Source 记录每次读取文件位置,实现断点续传。

File Channel:数据存储在磁盘,宕机数据可以保存。但是传输速率慢。适合对数据传输可靠性要求高的场景,比如,金融行业。

Memory Channel:数据存储在内存中,宕机数据丢失。传输速率快。适合对数据传输可靠性要求不高的场景,比如,普通的日志数据。

Kafka Channel:减少了 Flume 的 Sink 阶段,提高了传输效率。

Source 到 Channel 是 Put 事务

Channel 到 Sink 是 Take 事务

二、自定义拦截器步骤

1、实现 Interceptor

2、重写四个方法
(1) initialize 初始化
(2) public Event intercept(Event evrnt) 处理单个 Event
(3) public List intercept(List events) 处理多个 Event,在这个
方法中调用 Event intercept(Event event)
(4) close 方法

3、静态内部类,实现 Interceptor.Builder

三、Flume Channel 选择器

在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值