O Apache NiFi é uma plataforma de software de código aberto (open-source) que permite a automação do fluxo de dados entre sistemas de software. Foi criado pela National Security Agency (NSA) dos EUA e é agora um projeto de nível superior da Apache Software Foundation.

A ideia principal por trás do Apache NiFi é simplificar o fluxo de dados entre diferentes fontes e destinos. Isso é feito através de uma interface de usuário baseada em navegador que permite “arrastar e soltar” componentes de processamento de dados em uma tela de design. O Apache NiFi é usado em projetos do curso Data Lake – Design, Projeto e Integração da Formação Engenheiro de Dados.

Os componentes do Apache NiFi incluem uma variedade de processadores de dados que podem realizar tarefas como leitura de arquivos, divisão de dados, filtragem de dados, transformação de dados, gravação de dados, entre outras. Cada processador tem suas próprias configurações que podem ser ajustadas para atender a diferentes necessidades.

Outra característica importante do Apache NiFi é o rastreamento de proveniência de dados, que permite que você veja onde os dados vieram, onde foram e como foram transformados durante o processo. Isso é particularmente útil para auditoria e solução de problemas.

Além disso, o Apache NiFi oferece recursos robustos de segurança, incluindo criptografia SSL/TLS, autenticação baseada no protocolo Kerberos e controle de acesso baseado em políticas.

Principais Características do Apache NiFi:

Fluxos de Dados (Dataflow): O NiFi suporta fluxos de dados altamente configuráveis e flexíveis. Ele foi projetado para permitir que você rastreie os dados que estão passando pelo sistema em tempo real.

Suporte para Diversas Fontes de Dados: O NiFi pode processar e distribuir dados de uma variedade de fontes, incluindo sistemas de arquivos, bancos de dados, e-mail, redes sociais, entre outros.

Rastreamento de Proveniência de Dados: O NiFi fornece recursos detalhados de rastreamento de proveniência de dados, permitindo que os Engenheiros de Dados acompanhem os dados desde sua origem até seu destino final.

Segurança Robusta: O NiFi tem um forte suporte para segurança, incluindo criptografia SSL/TLS, autenticação com protocolo Kerberos e controle de acesso baseado em políticas.

Vantagens do Apache NiFi:

Facilidade de Uso: Com uma interface web e seu sistema de “arrastar e soltar”, o NiFi é relativamente fácil de usar, mesmo para pessoas sem experiência em programação.

Escalabilidade: O NiFi é altamente escalável e pode processar fluxos de dados de alta velocidade e alto volume.

Flexibilidade: O NiFi é altamente flexível e pode ser configurado para atender a uma ampla gama de necessidades de fluxo de dados.

Desvantagens do Apache NiFi:

Curva de Aprendizado: Embora o NiFi seja relativamente fácil de usar, ainda há uma curva de aprendizado. Isso é especialmente verdadeiro para usuários que são novos na manipulação de fluxos de dados. Ou seja, é fácil de usar uma vez que você saiba o que usar.

Desempenho: Como qualquer aplicação Java, o desempenho do NiFi pode ser um problema, requerendo hardware de maior capacidade computacional.

Documentação: A documentação do NiFi pode ser insuficiente ou confusa, tornando mais difícil aprender a usar a plataforma.


O Apache NiFi é uma ferramenta poderosa para construção de fluxos que movimentam os dados entre diferentes sistemas, em lote ou em tempo real.

Equipe DSA