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: 2.944 ]

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

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

Linux, uma história sem fim!

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

Detectando vulnerabilidades com o Nessus

Rundeck - Um Poderoso Agendador de Tarefas

Leitura recomendada

Gerar senhas seguras com Python

Desenvolvendo aplicações GUI simples em Python & Glade (PyGTK) com banco de dados SQLite

Python Flask Básico

Python - Usando requests anônimos através da rede Tor

Python - Threads

  
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