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 d’applications distribuées, afin de pouvoir maîtriser leur complexité dans un monde connecté. Vous pourrez comprendre les concepts et approches basées sur les technologies du Web afin de mettre en place des architectures de données et de services distribués. Vous pourrez aussi apprécier les solutions à mettre en place pour intégrer le Big Data et le Cloud, et rendre votre SI réactif face aux flux croissants de données.

Patrick VALDURIEZ
Directeur de recherche à Inria, expert en Data Science et Systèmes Distribués, conseiller scientifique de la start-up LeanXcale (SGBD NewSQL). Consultant international, auteur du best-seller “Principles of Distributed Database Systems”. Grande expérience de la R&D (senior scientist au Micrœlectronics & Computer Technology Corp., USA, Directeur de la joint venture Dyade entre Bull et Inria) et de l’enseignement (professeur à l’Université Pierre-et-Marie-Curie).
Lire la suite Cacher le texte

Pour évoluer dans un monde ultra-connecté, avec des réseaux de communication toujours plus performants, les applications doivent être nécessairement distribuées. Afin de maîtriser la complexité de la distribution, il est crucial d’en maîtriser les concepts, technologies et approches architecturales. Après une analyse des dernières évolutions du Web, notamment le Web sémantique, le séminaire introduit les différents modèles d’architectures distribuées, puis présente les architectures de données et de services, et enfin les architectures Big Data et Cloud.

Il répond aux questions suivantes :

  • Web sémantique (ou Web 3.0) : quelles opportunités pour les applications d’entreprise?
  • Interopérabilité des applications : couplage fort vs couplage faible ?
  • Contrôle décentralisé et confiance avec la Blockchain : opportunités et risques ?
  • Quid de la sécurité dans un contexte distribué et ouvert ?
  • Impact du RGPD sur les données personnelles ?
  • Données distribuées : intégration réelle ou virtuelle ?
  • SOA vs WOA : quels sont les meilleurs Use Cases ?
  • Comment migrer vers l’architecture microservice ?
  • Event-Driven SOA : vers des SI réactifs ?
  • Architectures Big Data: impact du Data Lake sur l’existant?
  • Architectures Cloud : comment rendre le SI Cloud-Ready ?
  • Fog Computing : quelles solutions pour les objets connectés ?


Applications distribuées et Web


Applications distribuées

  • Vecteurs de la distribution : Web, Cloud, Big Data et Machine Learning, IoT.
  • Réseaux sociaux, communautés professionnelles, Crowdsourcing et collaboration à grande échelle.
  • Data Analytics : analyse descriptive, prédictive et prescriptive.
  • Vue 360 : visibilité des clients ou produits dans toutes les directions.

Le Web

  • Protocoles et architectures.
  • Les formats d’échange de données : XML vs JSON.
  • Langages de programmation interprétés : JavaScript, Python, Grovy, Ruby, etc.
  • Les APIs : principes, Web API vs API endpoint.
  • Du client léger au client riche avec HTML5, CSS3, JavaScript et AJAX.
  • Intégration de services avec les Mashups.
  • Web Services : architecture, services standards, WSDL, le protocole SOAP, composition de services avec BPEL.
  • Web sémantique : RDF et SPARQL, l’exemple de Google Knowledge Graph, les Triplestores.

Architectures distribuées


Architectures multitiers

  • Modèles d’architecture : 1-tier, 2-tier, 3-tier, n-tier.
  • Les différents niveaux : présentation, sécurité, application, intégration, ressources.
  • La distribution des clients : léger, lourd ou riche.
  • La distribution des serveurs : présentation, Web, pare-feu, applications, données.
  • Architectures orientées services : SOA, WOA.
  • Architectures distribuées à grande échelle : Peer-to-Peer (P2P), Cluster, Cloud.

Sécurité

  • Sécurité des SI : confidentialité, intégrité, disponibilité, auditabilité.
  • Le chiffrement : clés privées, clés publiques, certificats.
  • Principaux modèles d’authentification.
  • Techniques de protection des données : serveur de données chiffrées, contrôle d’accès DAC, RBAC et MAC.
  • L’anonymisation : enjeux, randomisation vs généralisation, Use Cases, les bonnes pratiques.
  • Protection des données personnelles et législation : impact du RGPD sur le SI.

Architectures de données


Intégration de données

  • Intégration réelle (Data Warehouse - DW) 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é.
  • Qualité des données, nettoyage, et Master Data Management.
  • L’offre produits et services.

Transactions et réplication de données

  • Transactions distribuées : les propriétés ACID, le protocole 2PC, tolérance aux pannes et scalabilité.
  • Transactions de compensation : les Sagas.
  • Réplication de données : cohérence et rafraichissement des copies.
  • Produits principaux : Oracle, IBM DB2, SQL Server, SAP Sybase, PostgreSQL, MySQL.
  • Tolérance aux fautes et consensus distribué : les algorithmes Paxos et PBFT.

Le Peer-to-Peer

  • Autonomie des pairs, contrôle décentralisé, auto-adaptation, très grande échelle.
  • Topologie des réseaux P2P : non structurés, structurés (DHT), superpeers.
  • Applications principales : partage de contenu, communication, calcul distribué.

La Blockchain

  • Confiance dans un monde numérique : problèmes avec une autorité centrale.
  • Blockchain publique ou privée, le Bitcoin.
  • Concepts : P2P, réplication, consensus (Mining), transactions, chiffrement à clé publique.
  • L’attaque Goldfinger des 51%.
  • Blockchain 2.0 : la Blockchain programmable, les Smart Contracts, le projet Hyperledger.
  • Les top Use Cases : services financiers, micropaiements, droits numériques, identité numérique, logistique, IoT.
  • Opportunités et risques.

Architectures de services


Service Oriented Architecture (SOA)

  • Éléments essentiels : messages descriptifs, format d’échange standard, extensibilité, découverte de service.
  • ESB : interopérabilité des Web Services, gestion de messages distribués, équilibrage de charge.
  • L’offre du marché.
  • Succès et échecs du SOA ; écueils à éviter.

Web Oriented Architecture (WOA)

  • Le modèle d’architecture REST; SOAP vs REST.
  • Les frameworks de services RESTful.
  • Principes de conception WOA.
  • Use Case : Textile.com.

Architecture microservice

  • Le modèle d’architecture monolithique : avantages et inconvénients.
  • Principes d’une architecture microservice : conception dirigée par le domaine, KISS.
  • Les Frameworks de microservices : Kubernetes, Cloud Spring.
  • Déploiement dans les conteneurs d’application ; Docker, sécurité des conteneurs.
  • Patterns et Antipatterns : migration, intégration, gestion globale, sagas.
  • Impact sur l’organisation du SI et des équipes.

Event-Driven Architecture (EDA)

  • SI dirigés par les événements : Event-Driven BPM, Business Activity Monitoring (BAM).
  • Gestion d’événements complexes avec Complex Event Processing (CEP).
  • SQL pour Streaming de données.
  • Principaux CEP : InfoSphere Streams, Kafka, Parstream, Streambase, StreamInsight.
  • Use Case : détection de fraude en ligne.

Architectures Big Data


La pile logicielle Big Data

  • Les niveaux fonctionnels : persistance polyglotte, organisation, traitement, intégration, indexation et analyse.
  • L’architecture Hadoop : gestion de ressources avec Yarn, coordination avec Zookeeper.
  • Le stockage en fichiers distribués avec HDFS.

Technologies Big Data

  • SGBD NoSQL : modèles clé-valeur, document, tabulaire, graphe.
  • Use Cases NoSQL dans l’industrie.
  • SGBD NewSQL : cohérence SQL et scalabilité/haute disponibilité NoSQL.
  • HTAP : analytics et transactionnel sur les mêmes données opérationnelles.
  • Use Cases : la base Google AdWords avec Spanner ; supervision de SI avec LeanXcale.
  • Spark: le langage Scala, transformations et actions, stockage in-memory, Spark SQL, Spark Streaming.

Le Data Lake

  • Problèmes avec le DW : développement ETL, schéma en écriture.
  • Apports : schéma en lecture, traitement de données multiworkload, RoI.
  • Enterprise Hadoop : intégration, sécurité et gouvernance, outils BI.
  • Chargement de données parallèles : exemple avec HDFS, pattern extracteur de sources.
  • Use Case dans le commerce de détail.
  • Meilleures pratiques.

Intégration du Big Data dans un DW

  • Nouveaux besoins en acquisition, organisation, analyse.
  • Tables externes SQL et pattern connecteur.
  • Offres des éditeurs de DW : Microsoft HDInsight et Polybase, IBM Analytics Engine, Oracle Big Data Appliance.

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.
  • Analytics : du réactif au prescriptif.
  • Gouvernance : comment éviter le Data Swamp.
  • Méthodes itératives : l’exemple CRISP-DM.
  • Méthodes agiles : Scrum et Big Data.
  • Meilleures pratiques.

Architectures Cloud et Fog


Le Cloud Computing

  • Modèles de services : SaaS, IaaS, PaaS, XaaS.
  • Différents types de Clouds : public, privé, communautaire, hybride.
  • Fonctions d’un Cloud : administration, sécurité, annuaire, virtualisation des serveurs, gestion des SLA.
  • Exemples de PaaS : AWS, Azure, OVH.
  • Les applications Cloud Ready : principes de construction.

Cloud hybride et iPaaS

  • Cloud privé virtuel, le projet OpenStack.
  • iPaaS : objectifs, architecture.
  • Acteurs : Dell Boomi, Informatica, Mulesoft, CloudHub, SnapLogic, Microsoft, Oracle, SAP.

Database as a Service (DBaaS)

  • Positionnement par catégorie : polyglotte, SQL, NoSQL, NewSQL, DW.
  • Exemples : AWS RedSchift, Snowflake.
  • Migration vers DBaaS.

Big Data as a Service

  • Positionnement des acteurs.
  • Chargement de Big Data dans le Cloud.
  • Accès au Big Data dans le Cloud.

Fog Computing

  • Objectifs, différences, complémentarité avec le Cloud.
  • Intégration dans une plateforme IoT.
  • Standardisation avec le consortium OpenFog.
  • Les acteurs majeurs : Cisco, Amazon, Dell, Intel, Microsoft.
  • Les problèmes de sécurité.
  • Use Case : les smart cities.