31
Groupe de Discussion Big Data Aperçu des technologies et applications Stéphane MOUTON [email protected]

Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

Groupe de Discussion Big Data Aperçu des technologies et applications

Stéphane MOUTON [email protected]

Page 2: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Recherche appliquée et transfert technologique

q  Agréé « Centre Collectif de Recherche » par la Wallonnie §  Créé en 2001 §  Recherche appliquée et transfert technologique au profit des PME §  Connexion entre Business/Industrie & Recherche/Académique

q  Chiffres clés pour 2010 §  Ressources humaines: 42 employés dont 38 chercheurs §  Budget: 4.500.000€

q  Au service du secteur des TIC §  Contribution au développement économique régional §  Rayonnement international – European Research Area

q  A l’initiative de:

2

Page 3: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Recherche & Développement au CETIC

q  Software & Service Technologies (SST) §  Aider les entreprises à exploiter plus rapidement

les nouvelles architectures informatiques orientées services, les technologies sémantiques, et les opportunités du logiciel libre

q  Software & System Engineering (SSE) §  Aider les entreprises à concevoir des produits et

services de meilleure qualité, à en assurer la fiabilité, la sécurité, le respect des normes internationales, en leur apportant un soutien méthodologique

q  Embedded & Communication Systems (ECS) §  Aider les entreprises à embarquer plus

d’intelligence et plus de connectivité dans les systèmes qu’elles développent, en exploitant et intégrant les nouvelles technologies électroniques

3

Page 4: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Technologies classiques de traitement de données

4

Page 5: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

The big data wall

5

Page 6: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

BigData stack

6

Page 7: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Juste la scalabilité ?

7

•  Scalabilité •  en stockage •  en puissance de traitement

•  Volume de données •  Rapidité de traitement (Velocity) •  Variété (Variety), hétérogénéité des données •  Variabilité des données en fonction du temps

•  Redondance des données stockées

Page 8: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Scalabilité

8

Page 9: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Répartir la charge de travail

9

•  Distribuer les traitements informatiques sur les ressources •  Algorithme Map Reduce

Page 10: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Hadoop : origine

10

•  Apparu dans Nutch (moteur de recherche Open Source)

•  Framework à usage

générique

Page 11: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Hadoop : architecture

11

Page 12: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Acquisition de données

12

Page 13: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Acquisition de données

13

•  Outils •  Données Structurées : ETL (Extract, Transform, Load) •  Données non structurées : Web/text crawlers

•  Problème : temps d’exécution 1 Bit = Binary Digit

8 Bits = 1 Byte

1024 Bytes = 1 Kilobyte

1024 Kilobytes = 1 Megabyte

1024 Megabytes = 1 Gigabyte

1024 Gigabytes = 1 Terabyte

1024 Terabytes = 1 Petabyte

1024 Petabytes = 1 Exabyte

1024 Exabytes = 1 Zettabyte

1024 Zettabytes = 1 Yottabyte

1024 Yottabytes = 1 Brontobyte

1024 Brontobytes = 1 Geopbyte

Page 14: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Stockage

14

Page 15: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Stockage

15

•  Nouvelles approches par le stockage distribué •  Respect d’au plus 2 contraintes sur 3 du théorème CAP •  Tenter de dépasser les limites des BD relationnelles (NoSQL)

o  Cohérence / consistance : les données sont vues de la même façon au même moment par tous les nœuds du réseau ;

o  Disponibilité (Availability) : la garantie de recevoir une réponse, même en cas d’échec ;

o  résistance au Partitionnement : le système doit continuer à répondre correctement même si une partie de l’infrastructure ne répond pas.

Page 16: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Not only SQL (NoSQL)

16

•  Variations autour de CAP •  SGBDR: Atomicity, Consistency, Isolation, Durability (ACID) •  NoSQL : BASE

§  Basically Available : le système doit absolument garantir la disponibilité ;

§  Soft state : le système peut passer par des états « non finalisés »  ;

§  Eventually consistent : la consistance n’est garantie qu’à la finalisation d’un ensemble d’opérations

Source: Eric Brewer

Page 17: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Une taxonomie du NoSQL

17

•  4 grandes familles d’outils NoSQL •  Clé / valeur •  Orienté document •  Orienté Colonne •  Orienté Graphe

(Possibilités d’ajout de réplication des données)

Source: Xebia

Page 18: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Clé / valeur

18

•  Stockage d'une valeur arbitraire (en bits) associée à une clé unique dans la base •  Hashtable distribuée

•  Lecture très rapide … lorsqu'on connait la clé •  Réplication possible sur plusieurs machines •  La consistance peut être assurée si désirée (lecture des

données répliquées) •  Scalabilité linéaire

Page 19: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Orienté document

19

•  Extension du stockage Clé/Valeur •  Grande flexibilité dans la structure (s'adapte à tout type

d'application) •  La base de données connait la structure de chaque

document « valeur » associé à une clé (généralement un format JSON ou JSON-like)

•  Possibilité d’effectuer des requêtes proches du SQL •  Ajout, modification, lecture ou suppression de seulement

certains champs dans un document (pas pour CouchDB)

Page 20: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Orienté colonne

20

•  Modèle de données : •  Ensemble de tables contenant une liste de clés •  A chaque clé est associée un ensemble fixe de familles de colonnes •  Chaque famille de colonnes peut contenir une nombre indéterminé

de colonnes

•  Structure flexible pour les tables •  Bien adapté aux relations one-to-many •  Pas de coût de stockage pour une valeur « null » /vide •  Stockage des données de façon verticale (par colonne)

Page 21: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Orienté colonne

21

•  Vue conceptuelle de la table

•  Stockage physique pour cette table

3� �� ������ ��� ��� �������

, A� ����� ��� �� �� ��������

, ������� ��#��"� ������� �� �����

3� �� ������ ��� ��� �������

, A� ����� ��� �� �� ��������

, ������� ��#��"� ������� �� �����

Page 22: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Orienté graphe

22

•  Représentation des données sous forme d'un graphe •  Utiles quand on doit faire face à des JOIN en chaîne •  Idéales pour les relations many-to-many •  Application : a priori pour les réseaux sociaux

Page 23: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Quelques utilisations

23

•  Utilisé par « les grands du Web » pour gérer les grands ensembles de données •  Google : BigTable •  Amazon : Dynamo •  Yahoo! : HBase – Hadoop •  Microsoft : Azure Storage •  Facebook : Cassandra + MySQL

-> HBASE •  Twitter : Cassandra •  LinkedIn : Voldemort •  ...

Page 24: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

NoSQL quand c’est nécessaire

24

•  Conversion SQL -> NoSQL pas automatique •  Solutions mixtes ? •  Capacité d’adaptation des SGBDR •  Emploi de NoSQL lié au besoin … … pas uniquement aux performances

Page 25: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Pré-traitement & requêtage

25

Page 26: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Pré-traitement & requêtage

26

•  Données structurées •  Formatage et filtrage •  Production de données intermédiaires (clustering, …)

•  Données non structurées •  Extraction d’entités nommées, de méta données •  Classification, regroupement

•  Outils •  Requêtage et workflows de données (outils Hadoop) •  Machine learning : dégager des patterns dans les données •  Outils sémantiques (OpenCalais, …)

Page 27: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Retour d’expérience

27

•  Traitement de données de réseau électrique •  Hadoop + Hbase : paralléliser le calcul (+ stockage) •  Pas de recette magique SQL g NoSQL

•  Stockage et analyse d’ADNs •  MongoDB : adapté aux données (+ transition SQL g NoSQL) •  Accélération : x10 à x15

•  Analyse haut débit de données internet •  Memcached & Voldemort : clef-valeur adapté aux données •  Tests de débit concluants

•  Stockage et analyse de données, sites à grande capacité •  MongoDB + Redis (file de messages) : flexibilité & scalabilité •  Flexibilité concluante, benchmarks partiellement faits

Page 28: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Technologies

28

Page 29: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Et le Cloud ?

29

•  Software as a Service •  Service Généraliste

•  Google BigQuery, Rackspace Infochimps, •  Plateforme IBM BigInsights, …

•  Offre spécialisée •  Par outil (ex. : visualisation) ou métier (ex.: bookt.com)

•  Platform as a Service •  Offre autour de Hadoop (ou équivalent)

•  Amazon Elastic MapReduce (EMR), Hadoop on Azure …

•  Stockage NoSQL prêt à l’emploi •  Amazon DynamoDB, Microsoft Azure Table Storage…

•  Infrastructure as a Service •  Tous les outils présentés sont installables … soi même

Page 30: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

© CETIC – www.cetic.be

Synthèse

30

Source: O’Reilly

Page 31: Groupe de Discussion Big Data Aperçu des technologies et ...€¦ · • Modèle de données : • Ensemble de tables contenant une liste de clés • A chaque clé est associée

Thank you

CETIC

Aéropôle de Charleroi-Gosselies Rue des Frères Wright, 29/3 B-6041 Gosselies [email protected] www.cetic.be

Contact : [email protected] www.cetic.be/stephane-mouton [email protected] www.cetic.be/orlando-cassano