Scikit Learn: Projetando o futuro de suas APIs e aplicativos usando machine learning

O FutureCast é um script em Python que utiliza regressão linear do Scikit-Learn para projetar valores futuros de APIs e aplicativos a partir de um banco de dados SQLite, permitindo uma melhor tomada de decisões e planejamento de operações.

[ Hits: 3.410 ]

Por: Leonardo Berbert Gomes em 16/04/2023 | Blog: https://www.linkedin.com/in/leoberbert


Visualização dos Dados



Agora vamos à parte mais interessante: visualizar os dados. Para isso, é necessário ter o Grafana instalado no sistema. Além disso, o plugin frser-sqlite-datasource precisa ser instalado. Ele pode ser baixado a partir do link abaixo, onde também estão disponíveis as instruções passo a passo para a instalação:
Primeiramente, vamos adicionar o datasource do SQLite ao Grafana conforme demonstrado na imagem abaixo:
Na tela seguinte, você irá localizar o arquivo api_data.db que foi criado nas execuções anteriores:
Feito o passo acima, basta clicar no botão "save & test".

Agora vamos criar nosso tão esperado dashboard que irá nos mostrar os dados tanto do passado quanto do futuro para que possamos acompanhar se os mesmos são coerentes:
Vamos adicionar um painel do tipo "Time Series":
Em seguida, selecionaremos o datasource que criamos anteriormente e criaremos algumas variáveis para que o uso fique mais dinâmico:
Agora que as coisas começam a ficar mais interessantes, iremos personalizar nossa variável, conforme mostrado abaixo:
Perceba que a variável "api" depende da variável application e deverão estar na seguinte ordem:
Agora, salvaremos nosso dashboard:
Linux: Scikit Learn: Projetando o futuro de suas APIs e aplicativos usando machine learning
Perceba que as variáveis que foram adicionadas já estarão disponíveis para uso:
Linux: Scikit Learn: Projetando o futuro de suas APIs e aplicativos usando machine learning
Agora, vamos editar nosso gráfico e inserir nossa query:
Linux: Scikit Learn: Projetando o futuro de suas APIs e aplicativos usando machine learning
Inseriremos duas queries, sendo a query A para o dado futuro e a query B para o dado do passado. Mantivemos o dado passado no gráfico para ser possível visualizar o comportamento no qual foi baseado o cáculo para projeção do futuro.
Linux: Scikit Learn: Projetando o futuro de suas APIs e aplicativos usando machine learning
Query A:

SELECT
strftime('%Y-%m-%dT%H:%M:%SZ', data) as time,
total as projetado
FROM api_projection
WHERE api = '$api' AND application = '$application'
ORDER BY data

Query B:

SELECT
strftime('%Y-%m-%dT%H:%M:%SZ', data) as time,
total as historic
FROM api_summary
WHERE api = '$api' AND application = '$application'
ORDER BY data

Perceba que estamos utilizando as variáveis que criamos anteriormente para que, à medida que você selecione sua aplicação e sua API/serviço, o gráfico seja alterado de forma dinâmica.

Por fim, salvaremos nosso dashboard e verificaremos como os dados foram projetados.
Linux: Scikit Learn: Projetando o futuro de suas APIs e aplicativos usando machine learning
Agora, você pode selecionar o período e ver o comportamento do gráfico:
Linux: Scikit Learn: Projetando o futuro de suas APIs e aplicativos usando machine learning
É importante ressaltar que, como utilizamos um script que insere dados de forma aleatória, a precisão pode ser impactada.

Página anterior    

Páginas do artigo
   1. Introdução
   2. Projetando dados futuros
   3. Validação dos dados
   4. Visualização dos Dados
Outros artigos deste autor

Solucionando problemas no sistema de arquivos

SuperDNS: Solução definitiva para DNS dinâmico

Centralizando logs com Promtail + Loki + Grafana

Monitoramento de Comunicação - Blackbox Exporter(ICMP) + Prometheus + Grafana

Monitorando a saúde do Apache (Prometheus + Grafana)

Leitura recomendada

Breve Estudo Sobre Ransomwares e Análise Estática/Dinâmica do WannaCry

OAK: Câmera Open Source de Visão Computacional com AI

Threads - Importância dentro de um software

Gerar senhas seguras com Python

PEP 8 - Guia de estilo para código Python

  
Comentários
[1] Comentário enviado por taracena em 29/04/2023 - 03:35h


Thanks for the information.. https://www.caregiverconnect.net/

[2] Comentário enviado por maurixnovatrento em 14/05/2023 - 20:47h


Bom artigo.

___________________________________________________________
Conhecimento não se Leva para o Túmulo.
https://github.com/mxnt10


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts