... | ... | @@ -6,7 +6,7 @@ WIKI EM PROCESSO DE EDIÇÃO |
|
|
# Diagrama ilutrando o funcionamento do DataHub
|
|
|
![Diagrama ilutrando o funcionamento do DataHub](https://git.cta.if.ufrgs.br/CosmicPampa/cpdatahub/blob/master/Visualiza%C3%A7%C3%A3o%20do%20CPDataHub/CpDataHub_5__2_.png)
|
|
|
|
|
|
## Descrição do Área
|
|
|
## Descrição da Área
|
|
|
|
|
|
O **DataHub** remete a centralização dos dados dos possíveis múltiplos detectores em um servidor único, mas também cabe a essa área a configuração do protocolo e software de comunicação dos dados. Outra parte essencial é a criação de uma página de frontend gráficos e valores estatísticos. O diagrama de funcionamento demonstra o caminho que os dados seguem.
|
|
|
|
... | ... | @@ -51,9 +51,54 @@ _Exemplo que imprime no terminal a mensagem e as salva usando o pipe ( | ) e o c |
|
|
|
|
|
---
|
|
|
|
|
|
### Implementar backend do DataHub
|
|
|
### Backend do DataHub
|
|
|
O banco de dados do servidor foi construido a partir do [mysql](https://www.mysql.com/)
|
|
|
|
|
|
[comandos de consultas simples](https://www.mysqltutorial.org/mysql-basics/)
|
|
|
|
|
|
exemplo:
|
|
|
`Select horas from eventos where horas > 100`
|
|
|
|
|
|
#### MySQL<a name="sql">
|
|
|
Para criar a tabela eventos onde são armazenados os dados enviados pelo NodeMCU o seguinte código de sql foi executado por um usuário com privilégios para criar tabelas. As são colunas hora, local, intensidade, temperatura, umidade, pressao, usuario, HASH e id que serve de identificador de um dado e é auto incrementada e não precisa ser declarada quando um dado é inserido:
|
|
|
|
|
|
```
|
|
|
mysql> CREATE DATABASE COSMICPAMPA
|
|
|
mysql> Use COSMICPAMPA
|
|
|
|
|
|
mysql> CREATE TABLE IF NOT EXISTS eventos (
|
|
|
hora double(20,2) unsigned NOT NULL,
|
|
|
local varchar(100),
|
|
|
intensidade float(14,10) unsigned,
|
|
|
temperatura float(14, 10),
|
|
|
umidade float(14, 10) unsigned,
|
|
|
pressao float(14,10) unsigned,
|
|
|
usuario varchar(50) NOT NULL,
|
|
|
HASH varchar(50) NOT NULL,
|
|
|
id int(250) AUTO_INCREMENT,
|
|
|
PRIMARY Key (id)
|
|
|
);
|
|
|
```
|
|
|
|
|
|
Para inserir na tabela através do terminal usa-se o seguinte código:
|
|
|
```
|
|
|
INSERT INTO eventos (hora,local,intensidade,temperatura,umidade,pressao,usuario,HASH) VALUES
|
|
|
(1605897697391.9326,'POA', 17.510940991357113, 19.93308839701117, 78.77037825894631, 1017.1170110098117, Bruno, 555f20572647f7d16719ad1b5df73964')
|
|
|
```
|
|
|
|
|
|
A tabela usuarios foi criada de maneira similar com as seguintes condições (para descrever a tabela usasse `describe usuarios`):
|
|
|
|
|
|
```
|
|
|
mysql> describe usuarios;
|
|
|
+-------+--------------+------+-----+---------+-------+
|
|
|
| Field | Type | Null | Key | Default | Extra |
|
|
|
+-------+--------------+------+-----+---------+-------+
|
|
|
| user | varchar(100) | NO | | NULL | |
|
|
|
| nome | varchar(100) | YES | | NULL | |
|
|
|
| pais | varchar(100) | YES | | NULL | |
|
|
|
+-------+--------------+------+-----+---------+-------+
|
|
|
```
|
|
|
|
|
|
|
|
|
### Implementar frontend do DataHub.
|
|
|
|
... | ... | |