
O BigQuery é um dos data warehouses em nuvem mais performáticos para analytics. O Grafana é uma plataforma aberta para análises e monitoramento de visual caprichado. Nada mais natural do que unir o melhor dos dois, certo? Foi exatamente o que pensamos!
É difícil imaginar uma empresa que não use o Grafana para visualizar seus dados de séries temporais. Pode ser para monitoramento, alertas, análise ou todos esses motivos juntos. O Grafana suporta diversas fontes populares de dados de séries temporais, como InfluxDB, Graphite, Elasticsearch e muitas outras.
O Google BigQuery é um banco de dados em nuvem muito conhecido em análise de dados, graças à sua capacidade incomparável de executar consultas em altíssima velocidade sobre grandes volumes de dados.
Felizmente, o Grafana oferece uma interface documentada para criar novos plugins de fontes de dados. Meu colega Aviv Laufer, do time de soluções da DoiT International, conseguiu desenvolver o plugin de fonte de dados para o Google BigQuery.
As aplicações são praticamente infinitas — dashboards para analisar logs, dados de billing, métricas de vendas, tráfego, campanhas de marketing digital ou qualquer outro caso de uso.
Para demonstrar o novo plugin, escolhi os dados de billing do Google Cloud, algo que faz sentido para qualquer pessoa que use a plataforma. Em resumo, dá para configurar o Google Cloud para exportar informações detalhadas de billing para o BigQuery [ 1]. Ao exportar esses dados para o BigQuery, você acompanha o custo dos seus serviços do Google Cloud com bastante riqueza de detalhes.
Dashboard do Grafana exibindo dados de billing do Google Cloud vindos do BigQuery
Como o plugin de fonte de dados do BigQuery ainda não tem suporte "oficial" do Grafana, é preciso instalá-lo manualmente pelo repositório git do plugin [ 2].
Na maioria dos casos, a instalação se resume a um único comando no servidor do Grafana, seguido de um restart. As instruções completas estão na seção de instalação do repositório em [ 3].
grafana-cli \--pluginUrl \https://github.com/doitintl/bigquery-grafana/archive/0.3.0.zip
\ plugins install doitintl-bigquery-datasourceDepois de instalado, o plugin já está pronto para uso. Ele precisa ser autenticado no seu Google Cloud IAM: basta criar uma service account e fazer o upload da chave JSON dela.
Feita a autenticação, é hora de criar seu primeiro dashboard. O plugin permite montar a query por trás visualmente, é só seguir o assistente.
Comece escolhendo seu projeto do Google Cloud na lista, depois selecione o dataset e o nome da tabela. O plugin busca as colunas da tabela (junto com metadados que mostram, por exemplo, se a tabela tem partições) para você selecionar nas listas suspensas.
Em seguida, escolha o(s) campo(s) que deseja visualizar, defina as agregações necessárias e voilà — seus dados aparecem em instantes!
Configurando o dashboard pelo assistente do plugin. A versão em alta resolução está disponível aqui.
Se preferir escrever a query manualmente, é só clicar no botão "Edit SQL".
Modo Edit SQL
Repare que o plugin identificou que essa é a tabela particionada e incluiu o filtro _PARTITIONTIME automaticamente, garantindo que só os dados do seu intervalo de tempo sejam varridos!
Esperamos que o plugin do BigQuery para Grafana seja tão útil para você quanto é para a gente, e adoraríamos saber qual é o seu caso de uso! Ainda estamos no comecinho deste plugin, mas acompanhamos as issues bem de perto e prometemos responder a cada solicitação rapidinho [ 4].
Boas visualizações!
Quer mais histórias? Confira nosso blog ou siga o Vadim no Twitter.