Apache Flume - 简介


什么是 Flume?

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

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

阿帕奇水槽

Flume的应用

假设电子商务 Web 应用程序想要分析特定区域的客户Behave。为此,他们需要将可用日志数据移至 Hadoop 进行分析。在这里,Apache Flume 来拯救我们。

Flume用于将应用服务器产生的日志数据以更高的速度移动到HDFS中。

Flume的优点

以下是使用 Flume 的优点 -

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

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

  • Flume提供了上下文路由的功能。

  • Flume 中的事务是基于通道的,其中为每条消息维护两个事务(一个发送者和一个接收者)。它保证可靠的消息传递。

  • Flume 具有可靠、容错、可扩展、可管理和可定制的特点。

Flume的特点

Flume 的一些显着特征如下:

  • Flume 将日志数据从多个 Web 服务器有效地提取到集中存储(HDFS、HBase)中。

  • 使用 Flume,我们可以将多个服务器的数据立即获取到 Hadoop。

  • 除了日志文件之外,Flume 还用于导入 Facebook 和 Twitter 等社交网站以及 Amazon 和 Flipkart 等电子商务网站生成的大量事件数据。

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

  • Flume 支持多跳流、扇入扇出流、上下文路由等。

  • Flume 可以水平缩放。