Architectures de Données :
l’état de l’art

Définitions, Architectures, Technologies, Outils, Sécurité et Gouvernance.
Sommaire

Après ces 3 journées, vous saurez aussi bien déchiffrer que dessiner des Architectures de Données contemporaines, aussi complexes soient-elles. Vous acquerrez le vocabulaire et les connaissances fondamentales pour pouvoir commenter et critiquer les choix d’Architectures de Données.

Depuis une décennie on assiste à une foultitude d’innovations de ruptures, aussi bien dans les outils quand dans les pratiques, pour construire des Architectures de Données toujours plus sophistiquées. Celles-ci sont de plus en plus complexes à concevoir, à mettre au point, à exploiter, à sécuriser et aussi à financer.

Des paradigmes évolués se généralisent tels que Data Intensive Applications, Data Platform, Data Stream, DataOps, MapReduce, CAP, etc.

Des outils novateurs démontrent leur efficacité opérationnelle tels que Hadoop, Spark, HDFS, YARN, ZooKeeper, Hive, Impala, HBase, Solr, Kafka, ElasticSearch, etc.

Le Cloud affiche une offre pléthorique pour construire des Architectures de Données tels que Amazon, Azure, Google, Alibaba, IBM, Oracle, SAP, 3DOutscale, etc.

En 3 jours, je vous expose l’état de l’art complet et pragmatique des Architectures de Données les plus modernes. Je partage avec vous les expériences de projets opérationnels et les retours terrains concrets issus directement des usines Data de dizaines d’entreprises, aussi bien des géants du Web que des entreprises conventionnelles en pleine transformation digitale.



Architectures de Données


  • Les définitions du terme Donnée.
  • Quelle différence entre Donnée et Information.
  • Définitions du concept Architecte de Données.
  • Les risques à ne pas maîtriser les Architectures des Données.
  • Les contraintes posées par les Données dans les logiciels modernes.
  • Les outils modernes dans les Architectures contemporaines.
  • Exemple d’outils : HDFS, YARN, ZooKeeper, Hive, Impala, HBase, Solr, etc. ?

Typologie et formats de Données


  • Les principaux types de Données.
  • Données structurées, semi structurées, non structurées, etc.
  • Données lisibles, chiffrées, anonymisées, tokenisées, etc.
  • Données métiers vs Données techniques.
  • Métadonnées de conception, d’exécution.
  • Concept de Données en Repos et Données en Mouvement.

Types de traitements de Données


  • Les principaux types de traitement de Données.
  • Découverte et Identification.
  • Structuration et Nettoyage.
  • Extraction et Acquisition.
  • Ingestion, Transformation et Normalisation.
  • Calcul, Analyse et Publication.
  • Chiffrement, Anonymisation et Tokenisation.
  • Stockage, Répartition et Réplication.
  • Sauvegarde et Restauration.
  • Archivage et Suppression.

Schémas de Modélisation de Données


  • Modélisation en schéma relationnel.
  • Modélisation en schéma graphe.
  • Modélisation en schéma colonnes.
  • Modélisation en schémas document.
  • Modélisation en schéma clé-valeurs.
  • Modélisation en mode binaire.
  • Modélisation par matérialisation de vues.
  • Modélisation orientée schéma d’accès aux Données.
  • Modélisation sans schéma.

Persistance et partitionnement de Données


  • Les principaux formats de stockage de Données.
  • Qu’est que la persistance en NoSQL ?
  • Avantages et limites de la persistance en File System.
  • Quelles différences entre : centralisé, distribué, partitionné, répliqué et Sharding.
  • Rappel des modèles de réplication meneur- suiveur et égal à égal.
  • Exemple de combinaison du Sharding et de la réplication dans Kafka.

Patterns d’Architectures de Données


  • Architecture ETL (Extract, Transform and Load)
  • Architecture ESB (Enterprise Service Bus)
  • Architecture MDM (Master Data Management)
  • Architecture DW (Data Warehouse)
  • Architecture BI (Business Intelligence)
  • Architecture Data Lake.
  • Architecture IoT (Internet of Things)
  • Architecture OT (Operation Technology)
  • Architecture AV (Autonomous Vehicle)
  • Architecture Big Data.
  • Architecture IA/Deep Learning.
  • Architecture Stream.
  • Pattern CQRS (Command Query Responsibility Separation)
  • Pattern Event Sourcing / CQRS / Stream.

Intégrité et versionning des Données


  • Définition de l’intégrité d’une Donnée.
  • Consistance en écriture et en lecture.
  • La relaxation de la consistance et de la durabilité.
  • Introduction aux concepts d’Eventual consistency.
  • Versionning métier, technique, temporel, By Design.
  • Comment gérer la traçabilité et l’auditabilité.
  • Introduction à l’observabilité d’une architecture de Données.

Transactionnel


  • Définitions formelles de la Consistance, de l’Isolation et de la Durabilité.
  • Qu’est ce que la Relaxation de la Durabilité ?
  • Comment assurer une disponibilité à 100% ?
  • Pourquoi le Partitionnement est inévitable ?
  • Introduction du Théorème CAP.
  • Analyse des principes transactionnels évolués Quorum, Eventual consistency, etc.
  • Introduction du principe de la transaction de compensation fonctionnelle.

Partitionnement et interfaces d’Invocation


  • Les types de distribution de Données : Replicat, Reflet, Extrait, Vue, Shard, etc.
  • Qu’est ce qu’un contrat d’Interface de Données ?
  • Les principaux pièges du Nommage.
  • Les 4 types de Couplage : technique, fonctionnel, temporel et sémantique.
  • Les principaux modes d’invocation d’une interface : pub/sub, synchrone, asynchrone, Event, message, etc.
  • Exemple d’outils et stockage distribué : HDFS, S3, HBAse, Cassandra, Elastic Search, SolR, Kudu, CockroachDB, etc.

Métadonnées


  • Les définitions de Métadonnées.
  • Qu’est ce que la Métadonnée de traitement ?
  • Intérêts et limites des Métadatas déclarative.
  • Les avantages des Métadonnées construites par découverte.
  • Management des Métadonnées.

Cluster de Données


  • Qu’est ce qu'un Cluster de Données ?
  • Les nœuds d’un Cluster : MasterNode, Worker Node, Edge Node, etc.
  • Les contraintes de configuration par taille de Cluster.
  • Les types de Clusters : séparation légale, résilience, développement, etc.
  • Qu’est ce que la multitenancy ?
  • Les problèmes de croissance de la taille d’un Cluster.
  • Les modes d’accès à un Cluster : programmatique, accès en ligne, interface Web.
  • Les Landing Zones (accès en CLI, NFS Gateways, WebHDFS, FULME, etc.).

La haute disponibilité


  • Avantages et inconvénients de la disponibilité horizontale.
  • Les précautions essentielles dans la mise en œuvre des Quorums et du Load Balancing.
  • Délégation de la Haute disponibilité aux moteurs de bases de Données.
  • Etude de cas de séparation des Process maître et des Process traitements.
  • Etude de cas de séparation des Services à rôles identiques.
  • Etude de cas d’équilibrage des Configurations maîtres.
  • Optimisation des Configurations de serveurs.

Sécurité des Données


  • Les deux modèles de sécurité de Données At Rest et In Motion.
  • Exemple de chiffrement des volumes avec Cloudera Navigator Encrypt.
  • Exemple de chiffrement transparent dans HDFS.
  • faut-il chiffrer les fichiers temporaires ?
  • Comment gérer l’authentification ?
  • Centralisation du management des autorisations.
  • La problématique de la sécurité de bout en bout.
  • Certificats génériques pour un Cluster multinœuds.

Contraintes d’Infrastructures


  • Les modes de consommation et tarification du calcul et du stockage.
  • Contraintes par taille de Cluster : petit et grande taille.
  • La problématique d’Intégration des réseaux.
  • Les exigences de base (cooling, energie, puissance, réseau, gestion des racks).
  • Coûts et bénéfices des serveurs Commodity.
  • Alignement des domaines de pannes.
  • Exemple de pannes en mode Clusters Spanning.
  • Concepts avancés : Réplication vs Erasure Coding.
  • Exemples de contraintes liée à l’ingestion et l’extraction de gros volumes.
  • Introduction au concept de Chaos Kong.

Sauvegarde et restauration


  • Le problème de la multiplicité des systèmes distribués à sauvegarder.
  • Scénarios de désastre et de reprise d’activité.
  • Définition des RTO (Recovery Time Objectives) et RPO (Recovery Point Objectives)
  • Stratégies de sauvegarde en fonction de RPO et RTO.
  • Comment choisir les sources de Données à sauvegarder ?
  • Les principaux types de Données à sauvegarder.
  • La problématique de la consistance des Données postrestauration.
  • Les pratiques de validation des backup et des restaurations.

Conformité GDPR


  • Quels prérequis pour minimiser les risques liés à l'Accountability ?
  • Comment partager les responsabilités sur des architectures hétérogènes et complexes.
  • Quelle place du registre dans l'architecture de Données ?
  • Certification de tous les building blocks des Architectures de Données.
  • Analyse de la difficulté à garantir la conformité.
  • Qu’est qu’une entreprise GDPR Compliant by Design ?

Gouvernance


  • Les rôles et responsabilités dans un projet Data.
  • Les rôles et responsabilités sur les Données, les Métadonnées.
  • Les modèle de gouvernance orientés Infrastructure, Middleware et Applications.
  • Les nouvelles approches pour construire une équipe dans un projet Data.
  • Impact des silos de l’IT et de l’OT.
  • Les limites des découpages des responsabilités.
  • Quel rôle pour le DevOps, DevSecOps, DataOps, etc. ?
  • Avantages et limites des centres d’excellence et des centres de compétences ?
  • Les principaux KPI de gouvernance des Données dans l’entreprise.
  • Les principaux organismes de référence en gouvernance de Données.

Panorama des outils


Ce chapitre dresse un panorama critique des principales offres des outils Data aussi bien Éditeurs et Open Source que Cloud. Caractéristiques des principaux produits dans chaque catégorie, points forts et limites, domaines d’application privilégiés et principales contre-indications respectives, etc.

Parmis les outils étudiés HADOOP, HDFS, YARN, ZooKeeper, Hive, Impala, HBase, Solr, Kudu, Oozie, Hue, Kafka, Sentry, etc. Google Cloud (Big Query, DataFlow, SQL, Firebase, FireStore,Big Table, Spanner, etc.). Microsoft Azure (SQL Database,, DMS, Cosmos DB, DataBox, DataBricks, HDInsight, HDP, Analysis Services, SQL Server Big Data, etc. ). Amazon Web Services (QLDB, Aurora, Aurora, RDS, Elasticache, EMR, Athena, Redshift, Kinesis, etc.).