Programação PHP Integrada ao R

O Desenvolvimento e analise de dados não é tarefa fácil.

Integrar o R com outras linguagens é o segredo para analisar grande volume de dados em tempo real, gerando vetores e gráficos.

Um exemplo deste é a Webapi que criei para linguagem PHP:

http://maurinsoft.com.br:8090/ws/graphic.php

Esta web api, gera um arquivo de imagem com um gráfico.

Ao chamar o URL, é chamado em tempo de execução um script em R, que gera a imagem e armazena em um repositório.

É possível criar diversos scripts com o mesmo URL, basta indicar nos parametros o script em R que deverá ser rodado.

No caso do default.R, lê as informações processadas do sensor de chuva, que aponta quando ocorre precipitação de chuva em minha casa.

Valore altos de 900 até 1024, indicam tempo seco.

A imagem é armazenada neste endereço.

Neste exemplo, o R processou o seguinte comando SQL

select

devvalue, dtupdate

from logdevpar

where

devparname=’dev3′

and iddevice=’2′

and (dtupdate>=( DATE_SUB(CONCAT(CURDATE(), ‘ 00:00:00’), INTERVAL 1 DAY) ))

order by dtupdate

limit 100

 

Exemplo de script de Tabela

Segue um exemplo criado por mim, para criar uma tabela no Mysql

 

#Criando Tabela Parametros de Devices

use casadb;

CREATE TABLE devpar (

iddevpar INT NOT NULL AUTO_INCREMENT PRIMARY KEY, iddevice int not null,

devparname VARCHAR(25),

devparobs  VARCHAR(500),

devvalue VARCHAR(500)

);

#Cria Indices para pesquisa

CREATE INDEX idx_devpar_iddevpar ON devpar(iddevpar);

CREATE INDEX idx_devpar_iddevice ON devpar(iddevice);

#Cria chaves estrangeiras

ALTER TABLE devpar

ADD CONSTRAINT fk_devpar_iddevice

FOREIGN KEY ( iddevice )

REFERENCES devices ( iddevice );

Usar o Mysql com python

O Exemplo abaixo é um script simples que consome as informações do banco de dados Mysql.

print("Teste com Banco de Dados Mysql")

print("Teste com Banco de Dados Mysql")

print("Exemplo")

import MySQLdb

con = MySQLdb.connect(db="casadb", user="root", passwd="[suasenha]", host="192.168.1.211")


cur = con.cursor()


sql = "select * from security"


cur.execute(sql)


recset = cur.fetchall()


for registro in recset: print(registro)

Para sua utilização é necessário ter alem do Python na maquina o Mysql-python instalado em seu linux.