Sommaire

LE MOT DE L’INTERVENANT

Avec ce séminaire, je compte vous éclairer dans vos choix...

Avec ce séminaire, je compte vous éclairer dans vos choix stratégiques en matière d’architectures Big Data, afin de pouvoir exploiter pleinement le potentiel des gisements de données à votre disposition. Ces données sont de plus en plus nombreuses, distribuées, interconnectées, hétérogènes, mobiles… et de plus en plus difficiles à intégrer et analyser, notamment en temps réel. Vous pourrez comprendre les concepts et les techniques à la base de ces nouvelles architectures, ainsi que les meilleures pratiques pour réussir vos projets big data.

Patrick Valduriez
Docteur en informatique, Directeur de Recherche à Inria et expert en bases de données, Big Data et systèmes d’informations, senior scientist au Micrœlectronics and Computer Technology Corporation (USA), professeur à l’Université Paris 6 et Directeur de Dyade entre Bull et Inria. Consultant international, auteur de « Principles of Distributed Database Systems ».
Lire la suite Cacher le texte

Le Big Data bouleverse profondément la gestion traditionnelle de données avec de nouvelles solutions et technologies, adaptées à différents besoins. Afin d’aider à se repérer dans un paysage complexe et à faire les choix stratégiques, ce séminaire fait le point sur les architectures de données Big Data et les meilleures pratiques.

Il répond aux questions suivantes :

  • Big Data : quels enjeux ? quels retours d’expériences en entreprise ? quels sont les meilleurs cas d’utilisation dans l’industrie ?
  • Architectures Big Data : pourquoi de nouvelles approches ? que dit le théorème CAP ? différences avec les SGBD relationnels ?
  • Architectures de stockage : objet ou fichier ? pour quels besoins ?
  • Indexation et recherche de Big Data : comment fonctionnent les moteurs de recherche ?
  • Architectures massivement parallèles : SGBD versus framework parallèle ? comment les associer ? impact du in-memory sur l’architecture ?
  • Nouveaux modèles de données : clé-valeur, table, document, graphe, stream. La fin de l’approche taille unique du relationnel ? Impact du Big Data sur l’existant ?
  • SGBD NoSQL : critères de choix ? comment allier relationnel et NoSQL ? quid du NewSQL ?
  • Intégration de données : comment intégrer le Big Data avec les données du SI ? data warehouse versus data lake ?
  • Projets Big Data : quelle méthodologie? Les meilleures pratiques ?


Big Data : opportunités et enjeux


Evolution vers une science des données

  • Le continuum de la compréhension : données, informations, connaissances, sagesse.
  • Les 5 Vs du Big Data : volume, variété, vélocité, véracité, validité.
  • Données structurées : transactionnelles, décisionnelles, référentielles, scientifiques, etc.
  • Données non structurées : Web, documents, réseaux sociaux, Linked Open Data, IoT, etc.
  • Machine learning et data analytics.

Les enjeux pour l’entreprise

  • Enjeux techniques : maîtrise du cycle de vie des données, réactivité face aux flux de données temps réel, protection des données personnelles.
  • Enjeux stratégiques : mesure de la performance, exploration des données, analyse des comportements sociaux, expérimentation de nouvelles questions.
  • Quels sont les meilleurs cas d’utilisation dans l’industrie ?
  • Quelle stratégie Big Data mettre en place ? quel impact sur la gouvernance des données ?
  • Succès et échecs de projets Big Data.

Architectures parallèles

  • La nouvelle hiérarchie de mémoires : RAM, flash, disque SSD, disque HDD.
  • 1 teraoctet de RAM sur un chip : l’avènement du traitement de données in-memory ?
  • Processeurs multi-cœurs, la combinaison CPU/GPU, la nouvelle hiérarchie du calcul parallèle.
  • Les architectures massivement parallèles (MPP) : speed-up, scale-up, scale-out, élasticité.

Architectures Big Data structuré


Architectures de gestion de données parallèles

  • La pile logicielle du SGBD SQL : requêtes décisionnelles et transactions.
  • Parallélisme de données : inter-requête, inter-opération, intra-opération, pipeline.
  • Le stockage en cluster: DAS versus NAS versus SAN.
  • Architectures parallèles : SMP, NUMA, cluster shared-disk, cluster shared-nothing.

Techniques distribuées et parallèles

  • Organisation des données : stockage en ligne ou en colonne, sharding, indexation.
  • Transactions distribuées : modèle ACID, protocole 2PC, tolérance aux pannes et scalabilité.
  • Réplication de données : cohérence des copies, propagation des mises à jour.
  • Haute disponibilité : le failover, les points de sauvegarde pour requêtes lourdes.
  • Parallélisation des requêtes, optimisation et équilibrage de charge.

SGBD parallèles

  • Produits principaux : Actian, IBM, Microsoft, Oracle Exadata, MySQL Cluster, SAP Sybase, Teradata, HP Vertica, ParAccel, EMC GreenPlum.
  • Étude de cas Walmart: la base de données Teradata.

Architectures Big Data non structuré


Motivations

  • La fin de l’approche « taille unique » du relationnel.
  • Architecture scalable dans le cloud.
  • Le théorème CAP: analyse et impact.

La pile logicielle Big Data

  • Les niveaux fonctionnels : stockage, organisation, traitement, intégration, indexation et analyse.
  • La gestion de clusters.
  • L’architecture Hadoop, comparaison avec les architectures Lambda et Kappa.
  • Comparaison avec les SGBD relationnels.

Stockage d’objets

  • Objectifs : objets volumineux, faciles à transférer sur Internet.
  • Architecture : OID, métadonnées, objets distribués.
  • Services dans le cloud : Amazon Web Services S3, Rackspace, Microsoft Azure, Google Cloud Storage.

Stockage en fichiers distribués

  • Objectifs : très grands fichiers dans un cluster, tolérance aux fautes, parallélisme.
  • Architecture : métadonnées, partitionnement et réplication, optimisations.
  • Systèmes de fichiers distribués : Hadoop HDFS, Google File System, IBM GPFS, GlusterFS, Lustre.

L’indexation et la recherche de Big Data

  • Techniques : index, fichiers inverses, index multidimensionnels, recherche par mot-clé, recherche par contenu.
  • Moteurs de recherche: Bing, Google Search, ElasticSearch, Exalead, Lucene, Indexma, Qwant, Splink.
  • Etude de cas Google Search: l’algorithme PageRank, l’architecture en cluster shared-nothing.

SGBD NoSQL


SGBD clé-valeur

  • Gestion de l’accès sur clé, parallélisme, tolérance aux fautes.
  • Systèmes clé-valeur : Amazon DynamoDB, Amazon SimpleDB, Apache Cassandra, Linkedin Voldemort.
  • Etude de cas Orange: supervision de réseau avec Cassandra.

SGBD grandes tables

  • Modèle de données : table, orienté ligne/colonne, opérateurs ensemblistes.
  • Exemples : Google Bigtable sur GFS, Hadoop Hbase sur HDFS, Apache Accumulo.
  • Etude de cas Scaled Risk: Hbase dans les services financiers.

SGBD documents

  • Modèles XML et JSON, langages de requêtes: XQuery, SQL/XML, JSONiq, Json Query, Jaql.
  • SGBD XML : BerkeleyDB XML, DB2 pureXML, EMC X-Hive/DB, Apache Xindice, etc.
  • SGBD JSON : MongoDB, CouchBase, LinkedIn Espresso, etc.
  • XML/JSON dans les SGBD relationnels : IBM DB2, Oracle, SQLServer, SAP Sybase, MySQL, PostgreSQL.
  • Etude de cas MetLife : vue 360° des assurés avec MongoDB.

SGBD graphes

  • Modèle de données : graphe, RDF, opérateurs de parcours de graphes, langages de requêtes.
  • Exemples : Neo4J, DEX/Sparksee, AllegroGraph, InfiniteGraph, IBM DB2 Sparql.
  • Etude de cas GameSys : intégration sociale et jeux en ligne avec Neo4J.

SGBD NewSQL

  • Le relâchement de la cohérence : problèmes pour les développeurs et les utilisateurs.
  • NoSQL versus relationnel. L’intégration SQL/NoSQL.
  • Les SGBD NewSQL : Google F1, CockroachDB, LeanXcale, MemSQL, SAP HANA, VoltDB.
  • Etude de cas Google : gestion de la base AdWords avec F1.

Frameworks de traitement de données parallèles


Le framework MapReduce

  • Objectifs : analyse de Big Data en mode batch.
  • Le modèle de données clé-valeur, les fonctions Map et Reduce, partitionnement des fichiers.
  • Architecture : tolérance aux fautes et équilibrage de charge.

L’écosystème Hadoop

  • Les fondements : HDFS, Yarn, MapReduce.
  • Les outils : Pig (interface workflows), Hive (interface SQL).
  • Editeurs : Cloudera, Datameer, Datastax, Greenplum HD, Hurence, Hortonworks, Talend, VMware.

Traitement des flux de données

  • Les concepts : data streams, requêtes continues, données temporaires, fenêtre glissante.
  • Les outils : InfoSphere Streams, Kafka, Parstream, Samza, Storm, Streambase, StreamInsight.
  • Etude de cas Beymani : détection de fraude en temps réel.

Le framework Spark

  • Objectifs : analyse de Big Data en mode interactif et itératif.
  • Extensions du modèle MapReduce : le langage Scala, transformations et actions, Resilient Distributed Datasets.
  • Les outils : Spark SQL, Spark Streaming, MLlib (machine learning), GraphX (graphes).
  • Editeurs : Data Bricks, Apache, Cloudera, Amazon EC2, Hortonworks.

Traitement des graphes

  • Le modèle de calcul de graphes de Google Pregel.
  • Etude de cas Facebook : gérer 1000 milliards de liens avec Apache Giraph.

Architectures d’intégration de Big Data


Intégration de données hétérogènes

  • Intégration réelle (data warehouse) ou virtuelle (fédérateur de données).
  • Médiateur, adaptateur et ETL
  • Intégration de schémas et d’ontologies : les conflits sémantiques, le problème de la résolution d’entité.
  • Modèles de données pour l’intégration : relationnel, XML, JSON, clé-valeur.
  • Qualité des données, nettoyage, MDM.
  • L’offre produits et services.

Intégration du Big Data dans un data warehouse

  • Nouveaux besoins en acquisition, organisation, analyse.
  • Place de Hadoop dans une architecture d’intégration, les ETL comme Splunk.
  • Exemples : HadoopDB, Microsoft HDInsight et Polybase, IBM InfoSphere BigInsights, Oracle Bigdata Appliance.

Le data lake

  • Problèmes avec les entrepôts de données : développement avec ETL, schéma en écriture.
  • Apports : schéma en lecture, traitement de données multi-workload, ROI.
  • Enterprise Hadoop: intégration, sécurité et gouvernance avec Hadoop.
  • Etude de cas dans le commerce de détail : performance du marketing ciblé.

Méthodologie pour un projet Big Data

  • Stratégie : objectifs métiers, besoins en données, qualité des données.
  • Equipe : rôles et compétences, cadre pour la gouvernance des données.
  • Outils : le choix de développer du code ou utiliser.
  • Processus : évolutivité et réutilisation.
  • Architecture : de la sandbox à l’architecture idéale.
  • Meilleures pratiques.