Jogar JSON via API para DB SQL

17/01/2023

0

Olá galera,
Atualmente trabalho (estágio) com DataScience e elaboração de dashboards...

Atualmente pego os dados (JSON) via API de uma plataforma e trato diretamente no PowerQuery do PowerBI, apenas jogando a URL da AP, fazendo a autenticação e tratando os dados para os dashboards.
Porém, como tenho objetivo de ser DBA e atualmente estudo bastante banco de dados relacionais, gostaria de apresentar uma solução melhor e jogar esses JSON''''s em um banco de dados SQL (MySQL ou SQL SERVER - preferencia para MySQL) ao invés de jogar diretamente no Power Query do PowerBI.

Vocês conheceriam alguma forma de colocar os dados dessa API em um banco de dados ?
Obviamente no Power Query é muito simples apenas a URL da API e autenticação, porém não existe essa opção simplória na interface do MySQL ou SQL SERVER, portanto eu necessitaria de alguma ferramenta extra, talvez aprender a montar algum script de web scraping em Python ou Node.JS ?

Desde já agradeço as ideias, ainda estou na metade da faculmorte com vontade de ser um humilde DBA/DA.
Carlos H

Carlos H

Responder

Posts

18/01/2023

Frank Hosaka

Eu não tenho nenhum experiência com Python e o Node.js, mas tenho 0,02% de conhecimento em PHP. Se eu tivesse todos os dados da api, eu usaria o recurso cURL (https://www.php.net/manual/pt_BR/book.curl.php) para conectar com a API, obter a informação desejada, e com a informação em mãos iria distribuir no banco de dados, seja pelo motor mysqli ou pelo motor PDO do PHP.
Responder

18/01/2023

Arthur Heinrich

Isto que você pretende fazer chama-se ETL (Extract, Transform and Load).

Existem diversas ferramentas para esta atividade. Na maioria das vezes são ferramentas pagas.

Você também pode implementar o processo via código, em que uma rotina só acessaria a API, retornando o JSon. Outra rotina faria o parse do JSon para um formato mais adequado e, na terceira rotina você armazenaria os dados no banco.

Cada uma destas etapas pode ser feita com uma ferramenta/linguagem diferente e o resultado de uma etapa é usado como entrada para a seguinte.
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar