31
De l’explosion des volumes de données liée à l’essor du Web, à l’émergence de nouvelles architectures de stockage et d’interrogation de données Maxime Bérard Kévin Dumoulin Thomas Moreau Guillaume Roche SI5 - AL 16/11/2012

De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

De l’explosion des volumes de données liée à l’essor du Web, à l’émergence de nouvelles architectures de

stockage et d’interrogation de données

Maxime BérardKévin Dumoulin

Thomas MoreauGuillaume Roche

SI5 - AL

16/11/2012

Page 2: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

Contexte actuel

Bases de données NoSQLde nouvelles architectures de stockage et de traitement des données. Bases orientées clé-valeur

Map Reduce

Bases orientées documents

Bases orientées colonnes

Bases orientées graphes

Un tout en un : Hadoop

Conclusion

11/16/2012 2

Page 3: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

Big Data = désigne ensembles de données qui s’étendent et deviennent très difficiles à stocker et interroger avec des outils classiques (SGBDR)

Enjeux économiques importants

Coût de stockage

Vitesse de traitement des données (vélocité)

Pb de variété des données

Exemples :

Google

Réseaux sociaux

Télécoms

11/16/2012 3

Page 4: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

Atomicité, Cohérence, Isolation, Durabilité

Le théorème CAP (Cohérence, Disponibilité, Résistance)

Les SGBDR ont une mauvaise performance en scalabilité horizontale

11/16/2012 4

Page 5: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

« not only SQL »

Ne remplace SQL, mais constitue une alternative

Répond aux problématiques de scalabilité horizontale

S’affranchit des contraintes ACID

11/16/2012 5

Page 6: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

NoSQL

Associer une clé a une seule valeur

La valeur est un BLOB

Pas de structure de champs

La clé peut être une adresse vers une ressource

11/16/2012 6

Page 7: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 7

+ Simplicité et extensibilité

Performances

- Cas d’utilisation très spécifiques

Avantages & Inconvénients

Page 8: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 8

Solution proposé par Amazon

Base de données distribuée

Excellente « scalabilité » horizontale

Tolérance aux pannes

Flexibilité

Capacité requêtes des tables

DynamoDB

Page 9: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 9

Attribut

Elément

Table

Principe de DynamoDB

Page 10: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

Algorithme popularisé par Google

Permet de diviser et répartir la charge de travail

Se déroule en 2 phases

Map

Reduce

11/16/2012 10

Page 11: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 11

Évolution des bases de données clé-valeur

Plus de BLOB, mais un document intelligible

Requêtes sur les champs du documents

SchemaLess : Pas de schéma de base de données

Présentation du concept

Page 12: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

Comparaison avec les SGBDR

11/16/2012 12

Page 13: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 13

+ Adapté pour traiter des données hétérogènes

Très flexible

Bonne scalabilité horizontale

- Trop permissif

Pas adapté lorsqu’on a des entités peu autonomes

Avantages & Inconvénients

Page 14: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 14

CouchDB : utilisation de JSON et REST/HTTP

MongoDB : performances, requêtes évoluées

Redis : très performant, minimaliste

Riak : inspiré de Dynamo

Quelques exemples

Page 15: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 15

Stockage en colonne

Sérialisation des données :1, Jean, null, Chapeau

2, Paul, Polytech, null

3, Jacques, null, null

Etc.

Jean, Paul, Jacques

Polytech

Chapeau, Casquette, Sombrero

Gain en espace disque : Possiblement pas de « null »

Le principe de stockageid Nom Ecole CouvreChef

1 Jean Chapeau

2 Paul Polytech

3 Jacques

4 Casquette

5 Sombrero

Nom Ecole CouvreChef

Jean (1) Polytech (2) Chapeau (1)

Paul (2) Casquette (4)

Jacques (3) Sombrero (5)

Base relationnelle

Base orientée colonnes

Page 16: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 16

+ Une capacité de stockage accrue

Compression (travail possible sur des données compressées)

Rapidité d’accès à de gros volumes de données

Ajout de nouveaux types de données/colonnes facilité

Se prêtent bien au clustering + Architecture MPP

- Opérations limitées, efficaces dans un contexte BigData

Avantages & Inconvénients

Page 17: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 17

BigTable

Base « modèle » et initiatrice du mouvement NoSQL

Intègre une couche MPP (Massively Parallel Processing) pour le traitement des données

Optimisations pour l’indexation

Non librement distribuée

Quelques exemples

Page 18: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 18

Vertica

Utilisée par LinkedIn + Hadoop (MPP à tous les niveaux)

Compression des données optimisée (données similaires : taux de compession 50-90%)

Travail sur les données compressées

Clustering, solutions de haute disponibilité

Optimisations : regroupements de colonnes (FlexStore)

Proche de SQL pour le requêtage

Idéale pour datawarehouse et stockages/traitements massifs

Quelques exemples

Page 19: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

(Michael Stonebraker) Un bloc de stockage ne doit contenir des données que d’une

seule colonne.

Le taux de compression doit être amélioré

Il faut pouvoir se passer des ID d’enregistrement

La base de données orientée colonnes doit disposer d’un moteur d’exécution au niveau de la colonne et non au niveau de l’enregistrement

Le moteur doit pouvoir travailler directement sur les données compressées et non au travers d’un buffer de décompression.

Le moteur doit être capable de traiter aussi bien des données stockées chronologiquement que sur une clé.

11/16/2012 19

Page 20: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

Réseaux sociaux

Réseaux informatiques

Intelligence artificielle (réseau de neurones)

Relations de préférences client-produit

Exemples d’infrastructures de type graphe

2011/16/2012

Page 21: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 21

◦ 3 éléments :

Nœuds

Liens

Propriétés

Structure de la base

Page 22: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 22

Nœud de départ

Dinosaure

Spécification de parcours

Parcours sur les liens « mange » sur une profondeur de 2 noeuds

Set obtenu

=> Beaucoup plus rapide qu’une série de Joins

Opération particulière : le parcours transversal

Page 23: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 23

Equivalent des liens d’amitié entre utilisateurs de Facebook…

… pour une ville comme Mougin !

Page 24: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 24

HypergraphDB : intelligence artificielle, web sémantique

FlockDB : Twitter, pas de parcours transversal

BigData : très grande capacité, clustering

Exemples de bases

Page 25: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 25

+ Parfaitement adaptées à la gestion de données relationnelles

Algorithmes déjà existants et optimisés

Architecture modulable selon les besoins

- Inadaptées pour tous les autres cas

Avantages & Inconvénients

Page 26: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 26

Framework open source

Développé par Apache

Solution au BigData

Utilisé par Google, Ebay, IBM et Facebook

Présentation

Page 27: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 27

Base de données distribuées

Hadoop Distributed File System (HDFS)

MapReduce

Principe

Page 28: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 28

Réalisation d'applications extensibles

Efficace

Flexible

Peu impacté par les erreurs

Bilan

Page 29: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

Des volumes de données à traiter toujours plus grands

Réseaux sociaux, télécoms, données de tout types

Besoin de nouvelles solutions de stockage et interrogation

Réponse au mouvement NoSQL

Technologies newSQL, bases optimisées, respectant le modèle ACID

11/16/2012 29

Page 30: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

http://blog.xebia.fr/2010/05/04/nosql-europe-bases-de-donnees-orientees-colonnes-et-cassandra/

http://ayende.com/blog/4449/that-no-sql-thing-key-value-stores

http://www.legrandbi.com/2012/02/linkedin-bigdata/

http://dbpedias.com/wiki/NoSQL:Survey_of_Distributed_Databases#NoSQL_Databases

http://readwrite.com/2011/04/20/5-graph-databases-to-consider

http://aws.amazon.com/fr/dynamodb/#functionality

http://blog.xebia.fr/2010/12/15/mongodb-en-pratique/

http://www.legrandbi.com/2009/10/stockage-en-colonnes-adoop-le-duo-gagnant/

http://blog.zenika.com/index.php?post/2012/07/11/Hadoop-et-le-MapReduce-au-service-des-gros-volumes-de-donn%C3%A9es

http://www.youtube.com/user/ibmbigdata

http://www.internetactu.net/2012/10/04/big-data-le-grand-desequilibre/

Et bien d’autres…

11/16/2012 30

Page 31: De l’explosion des volumes de données liée à l’essor du ... · Google Réseaux sociaux Télécoms 11/16/2012 3 Atomicité, Cohérence, Isolation, ... Optimisations pour l’indexation

11/16/2012 31