datastax et apache cassandra pour la gestion des flux iot
TRANSCRIPT
Comment maîtriser le flux de données IoT avec Cassandra et Spark ?
Petit Déjeuner IoT - 19 novembre 2015
Victor Coustenoble Ingénieur [email protected]@vizanalytics
Agenda
Confidential 2
• DataStax• Apache Cassandra• Pourquoi Cassandra et Spark ?• Architectures• Bristish Gas et Cas clients
3
4
Un nouveau monde connecté a besoind’un nouveau SGBDR
©2015 DataStax. Do not distribute without consent.
“The Internet of Everything”
Client-Server
Isolated
Social MobileCloud
Mainframe
1970’s1990’s
Today
IBMORACLE
Semi-Connected Radically Connected
DATASTAXDistributed
5
Qu’est-ce qui est différent aujourd’hui ?
©2015 DataStax. Do not distribute without consent.
6
Qu’est-ce qu’une application IoT attend d’une base de données ?
©2015 DataStax. Do not distribute without consent.
Haute Disponibilité
Montée en charge
Securité
Prédictible
Coût maîtrisé
Multiple Data Centers
Performance
7
La réponse : DataStax Enterprise (DSE)
Robustesse et Support pour la ProductionSolution d’Entreprise
Puissance pour le DéveloppementWorkloads différents
Une plateforme de base de données Opérationnelle
Apache Cassandra – La Base de Données Distribuée
Bordeaux
Paris
Marseille
C *
C *
C *C *
Toujours DisponibleDistribution géographiquePerformance reconnue Extensibilité prédictible Simplicité OpérationnelleSéries Temporelles
8
9
Apache Cassandra
©2015 DataStax. Do not distribute without consent.
Totalement Distribuée• Données partagées et répliquées entre les noeuds• Tous les noeuds du cluster participent• Tous les noeuds sont égaux• Pas de Point Unique de Défaillance (SPOF)
10©2015 DataStax. Do not distribute without consent.
Montée en charge linéaire• Plus de données ? Ajoutez des noeuds• Plus de débits ? Ajoutez des noeuds
http://techblog.netflix.com/2011/11/benchmarking-cassandra-scalability-on.html
Apache Cassandra
11©2015 DataStax. Do not distribute without consent.
Tolérant à la panne• Noeud tombé != Base de données arrêtée• Data Center en panne != Base de données arrêtée• Mise à jour != Base de données arrêtée
Apache Cassandra
12©2015 DataStax. Do not distribute without consent.
Multi Data Center• Complétement Répliqué• Ecriture locale des clients• Synchronisation des données via WAN• Facteur de Réplication par DC
Apache Cassandra
13
Data Model & Cassandra Query Language (CQL)
©2015 DataStax. Do not distribute without consent.
Un langage simple et familier avec les commandes classiquesCREATE / DROP / ALTER TABLE SELECT / INSERT / UPDATE Et bien plus …
CREATE TABLE temperature (
weatherstation_id text,
event_time timestamp,
temperature text,
PRIMARY KEY(weatherstation_id,event_time)
);INSERT INTO temperature(weatherstation_id,event_time,temperature) VALUES ('1234ABCD','2013-04-03 07:01:00','72F');INSERT INTO temperature(weatherstation_id,event_time,temperature) VALUES ('1234ABCD','2013-04-03 07:02:00','73F');
SELECT temperatureFROM temperatureWHERE weatherstation_id='1234ABCD'AND event_time > '2013-04-03 07:01:00'
Format Clé/Colonne Série Temporelle
14©2015 DataStax. Do not distribute without consent.
Administration du Cluster - OpsCenter• Interface Visuel avec des API REST• Installation, configuration et administration• Supervision et Alertes• Support des Services d’Administration Automatiques
DataStax• Contrôle des accès
15©2015 DataStax. Do not distribute without consent.
Recherche Intégrée• Intégration du moteur de recherche d’entreprise
Apache Solr• Opérations de recherche distribués, scalables et
continuellement disponibles• Recherche plein texte, multicritère et geospatiale sur
des données Cassandra
16©2015 DataStax. Do not distribute without consent.
Analytique et Transformation de données• Spark = Framework de calcul distribué, plus rapide que Hadoop• Transformation et Analytique sur des données Cassandra en
Temp-Réel ou en mode Batch• Streaming intégré• Isolation des ressources, multi-data center• SparkSQL, Spark Streaming, GraphX, MLlib, SparkR, Spark JDBC
server
Cas d’utilisation Spark
Load data from various sources
Analytics (join, aggregate, transform, …)
Sanitize, validate, normalize data
Schema migration,Data conversion
18©2015 DataStax. Do not distribute without consent.
19©2015 DataStax. Do not distribute without consent.
20©2015 DataStax. Do not distribute without consent.
Analytique Batch ou Temps-Réel
©2014 DataStax Confidential. Do not distribute without consent. 21
Enrichissement ou Alerte
Batch Processing Machine Learning
Agrégats pré-
calculésPas d’ETL
Confidential 22
SMACK Architecture
SparkMesosAkkaCassandraKafkaArchivage
British Gas Tackles Internet-of-Things with DataStax Connected Homes, a new business unit, handles IoT-based customer systemsProvides remote control over thermostats and boilers via smart phones/tablets
Delivers analytics on energy usage to customersWill be using predictive analysis to forecast things like boiler failuresUses DataStax Enterprise for transactional data consumption and real-time analytics
24©2015 DataStax. Do not distribute without consent.
25©2015 DataStax. Do not distribute without consent.
26©2015 DataStax. Do not distribute without consent.
27©2015 DataStax. Do not distribute without consent.
28©2015 DataStax. Do not distribute without consent.
©2015 DataStax. Do not distribute without consent.
British Gaz & Spark
Data StreamingEnd 2015: • Hive Home -> 200k users •~ 15000 messages / s • Connected boilers -> 25k users •~ 2500 messages / s • Live Energy -> 50k users •~ 8500 messages / s
Spark Use cases
Data storage : Spark Streaming from queue Data processing : Transformations and Joins Data analytics : Data science productionising
30©2015 DataStax. Do not distribute without consent.
i2O Conserves 200M Liters of Water Per Day With Cassandra
The Smart Way to Manage Sensors for Energy and Cost Savings - Thousands of sensors on rooftop machines in commercial buildings
Google Nest Revolutionizes the Thermostat - DataStax chosen for ability to handle high velocity writes in time series
From Millions to Billions of Connected Devices, Aeris Uses Cassandra to Scale
Wattgo Engages Utility Customers with Personalized Smart Energy Analytics
Coordination System for 1 to millions containers
32©2015 DataStax. Do not distribute without consent.
We power the big data apps that transform business.
Merci