Skip to content

Integração do PHP ao banco Redis para armazenamento de dados do COVID-19 em Minas Gerais.

Notifications You must be signed in to change notification settings

otaviosilva22/php-redis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Aplicação do banco de dados Redis em PHP

Estes arquivos fazem referência à um trabalho sobre a implementação do banco de dados Redis na linguagem de programação PHP. O front-end não possui foco principal e por isso as páginas não apresentam o conteúdo de forma responsiva.

Os dados armazenados no Redis representam números do COVID-19 em Minas Gerais, e são captados atráves de um arquivo .csv disponibilizado pelo site brasil.io.

Tecnologias Utilizadas

Limpeza dos dados

O arquivo .csv completo contendo dados da covid-19 em todo o Brasil pode ser baixado diretamente na página Brasil.io. Contudo, como o trabalho faz referência somente ao estado de Minas Gerais, é necessário realizar a limpeza dos dados. Para isso optou-se por utilizar o banco MySQL como ferramenta de auxílio.

CREATE DATABASE covidmg;
USE covidmg;

CREATE TABLE caso_full(
    city VARCHAR (45) NOT NULL,
    population INTEGER NOT NULL,
    confirmed INTEGER NOT NULL,
    deaths INTEGER NOT NULL,
    death_rate DOUBLE NOT NULL,
    last_date VARCHAR (45)
);

Após isso, codifica-se um script em PHP (ou na linguagem de preferência) para inserção dos dados de Minas Gerais no banco covidmg.

<?php

    $host = "localhost";
	$usuario = "root";
	$senha = "";
	$base = "covidmg";

	//conecta no banco de dados
	$conn = mysqli_connect($host, $usuario, $senha, $base);

	$delimitador = ',';

	// Abrir arquivo para leitura
	$f = fopen('caso_full.csv', 'r');
	$count = 0;
	$pgeral = 0;
	$casos = 0;
	$mortes = 0;
	
	$dataEscolhida = "2020-12-10";
	
	
	if ($f) { 

		// Ler cabecalho do arquivo
		$cabecalho = fgetcsv($f, 0, $delimitador);
		
	
		// Enquanto nao terminar o arquivo
		while (!feof($f)) { 

			// Ler uma linha do arquivo
			$linha = fgetcsv($f, 0, $delimitador);
			if (!$linha) {
				continue;
			}

			// Montar registro com valores indexados pelo cabecalho
			$registro = array_combine($cabecalho, $linha);

			// Obtendo dados para armazenamento no Redis
			
			if (strcmp($registro['state'],"MG") == 0 && strcmp($registro['date'],$dataEscolhida) == 0){
				
				$city = $registro['city'];
				$population = $registro['estimated_population_2019'];
				$confirmed = $registro['last_available_confirmed'];
				$deaths = $registro['last_available_deaths'];
				$death_rate = $registro['last_available_death_rate'];
				$date = $registro['date'];		
				
				$query = "INSERT INTO caso_full VALUES ('$city', '$population', '$confirmed', '$deaths', '$death_rate', '$date')";
				
				/*executa a query*/
				mysqli_query($conn, $query);
				
			}
		}
		fclose($f);
	}

?>

Em sequencia, exporta-se a consulta SQL referente a caso_full.

SELECT * from caso_full;

Configuração do Redis

Para utilização do Redis com PHP é necessário realizar alguns passos de configuração, seja no Windows ou Linux. Para isso, recomenda-se a leitura dos seguintes artigos:

Conexão Redis em PHP

<?php
	$host = 'localhost';
	$port = 6379;
	$redis = new Redis();
	if ($redis->connect($host, $port) == false){
	    die($redis->getLastError());
	}
	
	//as funções podem ser verificadas no arquivo <i>processamento.php</i>.
?>

Página

Autor

Otávio Augusto Souza Silva.

Linkedin Badge Gmail Badge

About

Integração do PHP ao banco Redis para armazenamento de dados do COVID-19 em Minas Gerais.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published