Apache Flume - Introdução
O que é Flume?
Apache Flume é uma ferramenta / serviço / mecanismo de ingestão de dados para coletar, agregar e transportar grandes quantidades de dados de streaming, como arquivos de log, eventos (etc ...) de várias fontes para um armazenamento de dados centralizado.
O Flume é uma ferramenta altamente confiável, distribuída e configurável. Ele é projetado principalmente para copiar dados de streaming (dados de log) de vários servidores da web para o HDFS.
Aplicações de Flume
Suponha que um aplicativo da web de e-commerce deseja analisar o comportamento do cliente de uma determinada região. Para fazer isso, eles precisariam mover os dados de log disponíveis para o Hadoop para análise. Aqui, o Apache Flume vem em nosso resgate.
O Flume é usado para mover os dados de log gerados pelos servidores de aplicativos para o HDFS em uma velocidade mais alta.
Vantagens do Flume
Aqui estão as vantagens de usar o Flume -
Usando o Apache Flume, podemos armazenar os dados em qualquer um dos armazenamentos centralizados (HBase, HDFS).
Quando a taxa de entrada de dados excede a taxa na qual os dados podem ser gravados no destino, o Flume atua como um mediador entre os produtores de dados e os armazenamentos centralizados e fornece um fluxo constante de dados entre eles.
Flume fornece o recurso de contextual routing.
As transações no Flume são baseadas em canais, onde duas transações (um remetente e um receptor) são mantidas para cada mensagem. Ele garante uma entrega confiável de mensagens.
O Flume é confiável, tolerante a falhas, escalonável, gerenciável e personalizável.
Características do Flume
Algumas das características notáveis do Flume são as seguintes -
O Flume ingere dados de log de vários servidores da web em um armazenamento centralizado (HDFS, HBase) com eficiência.
Usando o Flume, podemos obter os dados de vários servidores imediatamente para o Hadoop.
Junto com os arquivos de log, o Flume também é usado para importar grandes volumes de dados de eventos produzidos por sites de redes sociais como Facebook e Twitter, e sites de comércio eletrônico como Amazon e Flipkart.
O Flume oferece suporte a um grande conjunto de tipos de fontes e destinos.
O Flume suporta fluxos de vários saltos, fluxos fan-in fan-out, roteamento contextual, etc.
O canal pode ser dimensionado horizontalmente.