文档详情

《Hadoop技术原理》课件——11.Flume.pptx

发布:2025-01-20约4.41千字共21页下载文档
文本预览下载声明

Hadoop技术原理

Flume

Flume简介

01Flume简介

·对于海量实时产生的日志,我们看出它需要经过一个“桥梁”或中介,这就是这章要学的Flume(Flume翻译成中文是水槽)。

·Flume把采集后的实时日志保存到HDFS或HBase中,可以进行离线计算。比如,要统计出最近一周的用户异常的数据,按地区划分,展示到一张地图上。

·另一种方式,则是Flume可以把采集到的实时日志,发送给消息中间件,比如Kafka,然后送到实时计算引擎进行计算,实时分析出当前存在的异常情况

离线计算

HDFS/HBa

se

8kafka

Flume(水槽)

实时计算

CLOUDCOMPUTING

海量实时日志

Flume是一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的

系统

(Flume由Cloudera提供)

Flume支持在日志系统中定制各类数据发送方,用于收集数据。

Flume提供对数据进行简单处理,并写到各种数据接收方(可定制)的能力。

Flume简介

02

03Flume简介

·Flume在Hadoop生态圈中的地位

Ambari

(安装部署工具)

HivePigMahout

数据分析引擎机器学习算法库

MapReduce

(离线计算)

YARN

(资源调度框架)

HDFS

(分布式存储系统)

Hadoop生态圈

(数据库E几工具)(日志采集)

数据采医翠

(分布式协调服务)

(分布式数据库)

Zookeeper

doobs

HBase

Flume

04Flume架构

·生活中的Flume(水槽)

源传输的介质目的地

Flume架构

·Flume的核心(Agent)

数据目的地有多种

HDFS

Hive

Kafka

数据源有多种

SpoolingDirectory

NetCatTCP

AvroSource

Kafka

Source

组件

采集数据

Channel组件

Logger

缓存数据

(常用MemoryChannel)

05

Sink

组件

保存日志

Agent

06Flume架构

·Flume的核心(Agent)

Source组件:从数据源接收数据(即采集数据);Channel组件:连接Source和Sink的管道,缓存数据。Sink组件:传递数据给目的地(即保存数据);

SourceSink

ServerChannel

Agent

HDFS

07Flume架构

·Flume传递的数据:Event(事件)

Event:Flume将数据表示为Event。

Event是Flume的处理数据元,它可能是一条日志、一个Avro对象等,通常约4KB大小

events

Sink

events

Channel

Agent

HDFS

events

Source

Web

Server

02

Flume安装与应用

01Flume安装

·Flume安装步骤

下载安装包apache-flume-1.8.0-bin.tar.gz

解压到指定目录下

tar-zxvfapache-flume-1.8.0-bin.tar.gz-C/usr/local/src/修改环境变量,在~/.bashrc文件增加

exportFLUME_HOME=/usr/local/src/flume

exportPATH=$FLUME_HOME/bin:$PATH

执行source~/.bashrc,使配置生效。

描述

Event数据存储在内存中

Event数据存储在持久化存储中

Event数据存储在磁盘文件中

Event数据存储在内存中和磁盘上,当内存队列已满,将持久化到磁盘文件(不建议生产环境使用)

测试用途

Event存储在Kafka

自定义

Channel类型

MemoryChannel

JDBCChannel

FileChannel

SpillableMemoryChannel

PseudoTransactionChannel

KafkaChannel

CustomChannel

02Flume应用

·Flume组件类型Channel类型

·更多属性请参考官方文档

描述

支持Av

显示全部
相似文档