Saltar al contenido

Segundo paso de nuestro proyecto en el evento #TalkDevOps

Seguimos con nuestro fichero de temperaturas del artículo anterior que hemos hecho en Excel.

Vamos a pasarlo a Azure SQL. Empezamos

Captura

Tener en cuenta que la columna mes y minutos se llama igual. Cambiar el nombre si queréis.

Lo grabamos en formato csv

Captura

Ejecutamos el programa Importación-Esportación de SQL Server

Captura

Pillamos el fichero csv

Captura

Vemos que esta bien.

Captura

El destino es SQL Native.

También el servidor de SQL Server y la bbdd donde la vamos a colocar

Captura

En Editar asignaciones si queremos cambiar el tipo de dato.

Captura

Modificamos lo que queramos y Aceptar.

Damos siguiente hasta finalizar.

Nos conectamos con el Management Studio.

Captura

Como ves, es igual que si lo hacemos a nuestro SQL Server local. El siguiente paso es conectar con Power Bi

En el evento que asistí tuvimos que alimentar un Event Hub con datos de sensores. No lo teníamos y sacamos esta solución.

Captura

Este fichero lo generamos en python con el módulo  xlwt. Ya veremos en un próximo artículo como generar el mismo fichero pero en formato .csv

Vamos a ir explicando el código.

Captura

Primero llamamos a ls módulos que van a intervenir con el comando import.

Después le pedimos cuantos registros querremos, en el caso 25. Puedes poner todos los que quieras.

En nuestro caso sacamos 10.000.

Siguiendo el programa: abrir el fichero, ponemos nombre a la hoja y las cabeceras de columnas.

Captura

A continuación ponemos 2 tuplas con los datos que tambien van a intervenir como el  nombre de cpd y la provincia.

Por ultimo, metemos datos al azar en las columnas de la hoja de calculo  y grabamos.

Captura

Este fichero le pasamos ahora a SQL Server.

El código:

import xlwt
import time
import random

# cuantos registros quieres
repetir = int(input("Cuantos registros quieres tener: "))

# creamos el fichero excel y csv
wb = xlwt.Workbook()

# añadimos hoja
ws = wb.add_sheet('Enero')

# escribimos encabezados
ws.write(0,0,'DD')
ws.write(0,1,'MM')
ws.write(0,2,'AA')
ws.write(0,3,'HH')
ws.write(0,4,'MM')
ws.write(0,5,'CPD')
ws.write(0,6,'Provincia')
ws.write(0,7,'Temperaturar')

# lista de cpd
cpd = ["A","B","C"]
#lista de provincia
provincia = ["Madrid","Segovia","Murcia"]

# escribo columnas excel
col = 1
while col <= repetir:
ws.write(col,0,random.randint(1,30))
ws.write(col,1,random.randint(1,2))
ws.write(col,2,2016)
ws.write(col,3,random.randint(0,23))
ws.write(col,4,random.randint(0,59))
ws.write(col,5,random.choice(cpd))
ws.write(col,6,random.choice(provincia))
ws.write(col,7,random.randint(20,27))
col = col + 1

# grabo Fichero ecel.
print(" GEnerado Fichero ... CPD_Temperaturas.xls")
wb.save('D:\CPD_Temperaturas.xls')

Si tienes alguna idea y no la sabes implementar te puedes pasar por el feisbuk o tuister que esta ahí arriba y me lo dices.

Lo que puedes hacer también, es compartir este artículo como todos lq eu hay en este blog en tu redes sociales.

 

Ayer estuve en un evento de microsoft y me toco un grupo de trabajo que nos toco recoger datos de unos sensores (event hub) y después pasarlo a documentdb. Al no tener los sensores lo hicimos de otra forma, que ya veré en un artículo próximo.

En realidad ya lo he dicho en el párrafo anterior, El servicio de Azure de Event Hub nos permite recoger datos de forma masiva para después tratarlo en una base de datos o stream analytics.

Vamos, que es hacer telemetrias.

Se puede recoger datos de sitio web, una app móvil con muchos usuarios, el mundo IoT, ....

Consta de 3 componentes:

  • Publicadores:  todo aquello que envie datos o eventos.
  • Event hub: El servicio en sí.
  • Consumidores: El que lee y consume los datos de los publicadores.

Captura

Podéis ver mas en:

https://azure.microsoft.com/es-es/services/event-hubs/

No me enrollo mas y .... al turrón