Estamos uniendo el internet de las cosas con Cassandra para crear espacios inteligentes que nos permitan ahorrar y optimizar nuestros recurso. Si te gusta Arduino y Big Data, esta es tu charla.
Marcos Vecino Rosado
Ingeniero en informática, trabajo en la Universidad de Extremadura en el departamento GIM (Grupo Ingeniería de Medios) diseñando dispositivos y el sistema de información de la iniciativa SmartPolitech.
1. Cassandra en SmartPolitech
Cassandra en la creación de espacios inteligentes
Marcos Vecino Rosado 13 Noviembre, 2014
@mvecinorosado
2. Contenido
➔ SmartPolitech
➔ Sistema de información
➔ Resultados experimentales
➔ Trabajos futuros y en proceso
Cassandra en SmartPolitech - Marcos Vecino Rosado
3. Contenido
➔ SmartPolitech
➔ Sistema de información
➔ Resultados experimentales
➔ Trabajos futuros y en proceso
Cassandra en SmartPolitech - Marcos Vecino Rosado
4. SmartPolitech
➔ Comenzó en 2013
➔ Iniciativa interdepartamental
➔ Living lab mediante tecnologías SmartX
➔ Objetivos
◆ Optimización de recursos
◆ Eficiencia energética
◆ Facilitar la vida social y académica a los usuarios
◆ Sostenibilidad
➔ Caso particular del Internet de las cosas
Cassandra en SmartPolitech - Marcos Vecino Rosado
5. SmartPolitech
¿Áreas de interés?
➔ Sensorización de espacios
➔ Almacenamiento y disponibilidad
➔ Visualización
➔ Modelado predictivo
➔ Planificación, filosofía, etc.
Cassandra en SmartPolitech - Marcos Vecino Rosado
6. SmartPolitech
Sensorización de espacios
➔ Conectividad de sensores (entornos rurales)
➔ Sensorización edificios no modernos
➔ Tecnología de sensorización y actuadores
➔ Dispositivos heterogéneos
➔ Tecnología flexible, barata, escalable y robusta
Cassandra en SmartPolitech - Marcos Vecino Rosado
7. SmartPolitech
Sensorización de espacios
➔ Mediciones
◆ Condiciones climáticas (temp, hum, luminosidad)
◆ Consumos (eléctrico, agua)
◆ Estado de puertas, ventanas, persianas
◆ Número de personas
◆ Control del parking
◆ Ruido
➔ Usuarios aportan información
Cassandra en SmartPolitech - Marcos Vecino Rosado
8. SmartPolitech
Sensorización de espacios
➔ Arduino based
◆ Panstamp
◆ Arduino Pro Mini
◆ Arduino Yun
➔ Mbed
➔ Raspberry Pi
➔ Cámaras IP
➔ Smartphones
Cassandra en SmartPolitech - Marcos Vecino Rosado
9. SmartPolitech
Sensorización de espacios
➔ Panstamp
◆ Daniel Berenguer
◆ Zafra (Badajoz)
◆ Hardware libre
◆ Muy bajo consumo
Cassandra en SmartPolitech - Marcos Vecino Rosado
13. SmartPolitech
Almacenamiento y disponibilidad
➔ Datos muy heterogéneos
➔ Time series
➔ Almacenamiento masivo y alta disponibilidad
➔ Minería de datos
Cassandra en SmartPolitech - Marcos Vecino Rosado
14. SmartPolitech
Visualización y Modelado Predictivo
➔ Interfaces interactivas (servicio web)
➔ Monitorización de la ocupación y actividad humana
➔ Seguridad y prevención de riesgos
➔ Toma de decisiones -> Actuadores
➔ Avisos/Alertas (email, mensajería instantánea...)
Cassandra en SmartPolitech - Marcos Vecino Rosado
15. Contenido
➔ SmartPolitech
➔ Sistema de información
➔ Resultados experimentales
➔ Trabajos futuros y en proceso
Cassandra en SmartPolitech - Marcos Vecino Rosado
17. Sistema de información
Antecedentes
➔ Modelo Freemium
➔ Restricciones consultas (900 puntos, 14 días)
➔ LOPD
➔ Gráficas y estadísticas pobres
➔ Imposibilidad de analizar los datos directamente
Cassandra en SmartPolitech - Marcos Vecino Rosado
18. Sistema de información
Problemática
➔ Red de dispositivos (Internet de las Cosas):
● Escrituras intensas
● Número muy alto de conexiones concurrentes
● Pueden surgir nuevos datos a almacenar
➔ Diversidad de dispositivos:
● Necesitamos una interfaz común
➔ Compatible con herramientas analíticas para Big Data
● Framework Hadoop, Spark
➔ Alta disponibilidad, fácil escalabilidad y tolerancia a
Cassandra en SmartPolitech - Marcos Vecino Rosado
fallos
19. Sistema de información
Nuestra nube
Cámaras IP
Tornado Web Server
Apache
Cassandra
Cassandra en SmartPolitech - Marcos Vecino Rosado
Sensores
Aplicaciones Otras fuentes
API REST
20. Contenido
➔ SmartPolitech
➔ Sistema de información
➔ Resultados experimentales
➔ Trabajos en proceso y futuros
Cassandra en SmartPolitech - Marcos Vecino Rosado
21. Resultados experimentales
Despliegue del cluster
➔ 3 nodos de Cassandra
● Nodos virtuales
● Debian Wheezy 64 bits
● Conexiones 10Gbps
● Hot-add RAM/HDD
➔ Opciones de autenticación, autorización,
rendimiento y seguridad
➔ OpsCenter + Scripts (mantenimiento y backup)
Cassandra en SmartPolitech - Marcos Vecino Rosado
22. Resultados experimentales
Prueba de rendimiento
➔ 3 millones de escrituras
➔ Escribiendo en 2 nodos y Factor Replicación = 3
➔ Tiempo total: 8 minutos y 27 segundos
➔ Máquinas de 32 bit y limitadas en RAM (2GB)
Cassandra en SmartPolitech - Marcos Vecino Rosado
24. Resultados experimentales
Conexión dispositivos a Cassandra
➔ Modificación de Lagarto-Max
➔ Nuestro cluster como ser servicio
Cassandra en SmartPolitech - Marcos Vecino Rosado
en la nube
➔ Driver Python DB-API-2.0
➔ Funcionando en las Raspberry Pi
25. Resultados experimentales
Conexión dispositivos a Cassandra
SWAP
Driver
Python
Apache
Cassandra
SWAP
Cassandra en SmartPolitech - Marcos Vecino Rosado
26. Resultados experimentales
Conexión dispositivos a Cassandra
Apache
Cassandra
HTTP
API REST ...
HTTP
Driver
Python
DataStax
Tornado Web Server
Cassandra en SmartPolitech - Marcos Vecino Rosado
27. Contenido
➔ SmartPolitech
➔ Sistema de información
➔ Resultados experimentales
➔ Trabajos futuros y en proceso
Cassandra en SmartPolitech - Marcos Vecino Rosado
28. Trabajos futuros y en proceso
➔ Data mining (Spark)
➔ Modificación de Emoncms
➔ Continuación sensorización (actuadores)
➔ Incorporación del trabajo de distintos TFG/PFC
➔ TIERRA
➔ Etc.
Cassandra en SmartPolitech - Marcos Vecino Rosado
30. Gracias por la atención
¿Preguntas?
Esta obra está bajo una licencia Creative Comons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional
Cassandra en SmartPolitech - Marcos Vecino Rosado