datastax et apache cassandra pour la gestion des flux iot

32
Comment maîtriser le flux de données IoT avec Cassandra et Spark ? Petit Déjeuner IoT - 19 novembre 2015 Victor Coustenoble Ingénieur Solutions [email protected] @vizanalytics

Upload: victor-coustenoble

Post on 09-Jan-2017

680 views

Category:

Software


0 download

TRANSCRIPT

Page 1: DataStax et Apache Cassandra pour la gestion des flux IoT

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

Page 2: DataStax et Apache Cassandra pour la gestion des flux IoT

Agenda

Confidential 2

• DataStax• Apache Cassandra• Pourquoi Cassandra et Spark ?• Architectures• Bristish Gas et Cas clients

Page 3: DataStax et Apache Cassandra pour la gestion des flux IoT

3

Page 4: DataStax et Apache Cassandra pour la gestion des flux IoT

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

Page 5: DataStax et Apache Cassandra pour la gestion des flux IoT

5

Qu’est-ce qui est différent aujourd’hui ?

©2015 DataStax. Do not distribute without consent.

Page 6: DataStax et Apache Cassandra pour la gestion des flux IoT

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

Page 7: DataStax et Apache Cassandra pour la gestion des flux IoT

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

Page 8: DataStax et Apache Cassandra pour la gestion des flux IoT

 

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

Page 9: DataStax et Apache Cassandra pour la gestion des flux IoT

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)

Page 10: DataStax et Apache Cassandra pour la gestion des flux IoT

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

Page 11: DataStax et Apache Cassandra pour la gestion des flux IoT

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

Page 12: DataStax et Apache Cassandra pour la gestion des flux IoT

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

Page 13: DataStax et Apache Cassandra pour la gestion des flux IoT

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

Page 14: DataStax et Apache Cassandra pour la gestion des flux IoT

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

Page 15: DataStax et Apache Cassandra pour la gestion des flux IoT

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

Page 16: DataStax et Apache Cassandra pour la gestion des flux IoT

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

Page 17: DataStax et Apache Cassandra pour la gestion des flux IoT

Cas d’utilisation Spark

Load data from various sources

Analytics (join, aggregate, transform, …)

Sanitize, validate, normalize data

Schema migration,Data conversion

Page 18: DataStax et Apache Cassandra pour la gestion des flux IoT

18©2015 DataStax. Do not distribute without consent.

Page 19: DataStax et Apache Cassandra pour la gestion des flux IoT

19©2015 DataStax. Do not distribute without consent.

Page 20: DataStax et Apache Cassandra pour la gestion des flux IoT

20©2015 DataStax. Do not distribute without consent.

Page 21: DataStax et Apache Cassandra pour la gestion des flux IoT

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

Page 22: DataStax et Apache Cassandra pour la gestion des flux IoT

Confidential 22

SMACK Architecture

SparkMesosAkkaCassandraKafkaArchivage

Page 23: DataStax et Apache Cassandra pour la gestion des flux IoT

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

Page 24: DataStax et Apache Cassandra pour la gestion des flux IoT

24©2015 DataStax. Do not distribute without consent.

Page 25: DataStax et Apache Cassandra pour la gestion des flux IoT

25©2015 DataStax. Do not distribute without consent.

Page 26: DataStax et Apache Cassandra pour la gestion des flux IoT

26©2015 DataStax. Do not distribute without consent.

Page 27: DataStax et Apache Cassandra pour la gestion des flux IoT

27©2015 DataStax. Do not distribute without consent.

Page 28: DataStax et Apache Cassandra pour la gestion des flux IoT

28©2015 DataStax. Do not distribute without consent.

Page 29: DataStax et Apache Cassandra pour la gestion des flux IoT

©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

Page 30: DataStax et Apache Cassandra pour la gestion des flux IoT

30©2015 DataStax. Do not distribute without consent.

Page 31: DataStax et Apache Cassandra pour la gestion des flux IoT

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

Page 32: DataStax et Apache Cassandra pour la gestion des flux IoT

32©2015 DataStax. Do not distribute without consent.

We power the big data apps that transform business.

Merci