Apache Flume 简明教程

Apache Flume - Introduction

What is Flume?

Apache Flume 是一种工具/服务/数据收集机制,用于从各种来源收集、聚集和传输大量流数据(例如日志文件、事件等)到集中式数据存储。

Flume 是一款可靠性高、可分布且可配置的工具。它主要设计为将各种 Web 服务器的流数据(日志数据)复制到 HDFS。

apache flume

Applications of Flume

假设一个电子商务 Web 应用程序想要分析特定区域的客户行为。为此,他们需要将可用的日志数据移至 Hadoop 进行分析。这里,Apache Flume 派上用场了。

Flume 用于以更高的速度将应用程序服务器生成日志数据移至 HDFS。

Advantages of Flume

以下是使用 Flume 的优点:

  1. 使用 Apache Flume,可以将数据存储到任何集中式存储(HBase、HDFS)。

  2. 当传入数据的速率超过将数据写入目标的速率时,Flume 充当数据生产者和集中式存储之间的中介,并在它们之间提供稳定的数据流。

  3. Flume 提供了 contextual routing 功能。

  4. Flume 中的事务基于通道,其中每个消息有两笔事务(一个发送方和一个接收方)。这可以确保可靠的消息传递。

  5. Flume 可靠、容错、可缩放、可管理且可自定义。

Features of Flume

以下是 Flume 的一些显着特性−

  1. Flume 可有效地将日志数据从多个网络服务器传入集中存储(HDFS、HBase)。

  2. 使用 Flume,我们可以立即从多个服务器获取数据并传入 Hadoop。

  3. 除了日志文件外,Flume 还用于导入由社交网站(如 Facebook 和 Twitter)和电子商务网站(如 Amazon 和 Flipkart)生成的大量事件数据。

  4. Flume 支持大量源类型和目标类型。

  5. Flume 支持多跳流、多路并入多路并出流、上下文路由等。

  6. Flume 可以横向扩展。