Análise de Tweets com Nifi, Kafka, Postgres e Metabase no Google Cloud (Parte 3/3)

Savio Teles
Data Hackers
Published in
5 min readJan 29, 2021

Esta é a terceira parte do artigo que tem como objetivo criar um pipeline de ingestão de dados do Twitter utilizando Apache Nifi e Apache Kafka. O pipeline obtém os tweets da API do Twitter e carrega no PostgreSQL para serem visualizados com o Metabase, utilizando o serviço de nuvem do Google.

Nas etapas anteriores (Parte 1 e Parte 2), instalamos e configuramos todas as ferramentas em uma máquina no Google Cloud, além de termos construído todo o pipeline de dados do Twitter, utilizando o Nifi e Kafka para escrever o resultado no PostgreSQL.

Objetivo da terceira etapa

Nesta terceira e última etapa iremos construir relatórios no Metabase utilizando os dados armazenados no PostgreSQL. O Metabase instalado na cloud do Google (neste tutorial) pode ser acessado no IP da máquina e na porta 3001. No primeiro acesso, você irá informar dados básicos de cadastro no Metabase. Além disso, você deve informar ao Metabase em qual banco de dados ele irá armazenar os metadados. Neste tutorial, os dados serão armazenados no PostgreSQL criado na primeira etapa. A imagem abaixo apresenta todos os dados que você deve preencher para acessar o banco de dados PostgreSQL do tutorial. A senha do banco é ‘postgres’.

Configuração das bases de dados no Metabase

A conexão do Metabase com o Postgres foi realizada na primeira etapa deste artigo. O campo ‘tweet_date’ (data de criação do tweet) está armazenado no PostgreSQL como bigint no formato UNIX Timestamp. Por isso, você deve configurar este campo no Metabase para que ele entenda que este campo não é numérico, mas sim do tipo Timestamp. Por isso, você vai entrar na Seção de Admin do Metabase para editar os metadados da tabela covid. Caso você tenha alguma dúvida em como acessar esta tela de administração, siga o tutorial do Metabase neste link.

O Metabase tenta dar um nome automático para a tabela covid e, neste caso, ele configurou com nome ‘Cov ID’, como pode ser visto na imagem abaixo.

Você deve alterar o nome desta tabela para ‘Covid’ (ou outro nome que você desejar) e mudar o tipo do campo ‘Tweet Date’ para ‘Data e Hora em formato UNIX Timestamp (milissegundos)’. Agora o Metabase vai ser capaz de realizar operações de data sobre este campo.

Caso você queira, pode também clicar no ícone de ‘Engine’ do lado do campo ‘Tweet Date’ para configurar a formatação da data nos relatórios que usarem este campo. A imagem abaixo apresenta a formatação que fizemos para este artigo.

Construindo análises no Metabase

Agora você pode sair da tela de ‘Admin’ e voltar ao Metabase para criar um dashboard para analisar os dados do Covid. Os relatórios são construídos clicando em ‘Fazer uma pergunta’. Aqui vamos fazer uma pergunta customizada no Metabase. Caso tenha dúvida em como fazer perguntas customizadas, siga o tutorial no seguinte link.

A primeira análise visa tentar identificar quais locais estão falando mais sobre o tema. A imagem abaixo apresenta um exemplo, onde obtemos o número de tweets por localização do usuário para encontrar os 20 lugares que mais estão falando sobre o assunto. Filtramos todas as localizações vazias . Se você clicar em ‘Visualizar’, será direcionado para uma tela onde você pode selecionar a melhor forma de visualizar esta informação. Neste tutorial escolhemos o gráfico de pizza.

Outra análise que pode ser feita é de quais usuário, que estão falando sobre o assunto, tem maior ‘influência’ no Twitter. Aqui definimos, de forma bem simples, o número de seguidores do usuário como ‘influência’. Escolhemos os 10 usuários mais influentes. Para esta análise escolhemos o gráfico de barra na visualização dos dados.

Neste último relatório vamos adicionar quantas pessoas diferentes estão falando sobre o tema por minuto. Vamos construir um gráfico ao longo do tempo mostrando essa evolução.

Painel do Metabase

Seguindo este o tutorial deste link você pode ver como adicionar os relatórios construídos a um painel do Metabase. A imagem abaixo apresenta um dashboard simples do Metabase com o resultado das três análises que realizamos na seção anterior com dados reais coletados da API do Twitter.

Conclusão

Ufa, chegamos ao final do nosso artigo!

Agora é a hora de exercitar sua criatividade para construir novas análises e novos relatórios para a sua empresa. Você pode utilizar todo o pipeline construído para utilizar os dados do Twitter na sua empresa afim de explorar estes dados não estruturados valiosos das redes sociais, escolhendo também outros assuntos do Twitter.

Espero que este tutorial te ajude a construir soluções inovadoras e disruptivas para sua empresa ou organização!

--

--

Savio Teles
Data Hackers

Doutor em Ciência da Computação. Pesquisador e desenvolvedor na área de Big Data & Machine Learning há mais de 12 anos.