Apache Flume - 简介

什么是 Flume?

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

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

Apache Flume

Flume的应用

假设电子商务 Web 应用程序想要分析特定区域的客户行为。 为此,他们需要将可用日志数据移至 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 可以水平缩放。