Capgemini Institut 0144742410
24 rue du Gouverneur général Eboué 92136 Issy les Moulineaux
Architectures d’Applications Distribuées Paris
Architectures d’Applications Distribuées Paris
DURéE
3 jours
DATES
11-13 décembre 2017
11-13 juin 2018
LIEU
Paris
PRIX 2017
2 615 € ht (3 138 € ttc)
Sommaire du séminaire
    Séminaires technique Institut Capgemini

    Architectures d’Applications Distribuées

    >  concepts, technologies et approches




    Pour évoluer dans un monde connecté, avec des réseaux et systèmes de communication toujours plus performants, les applications doivent être nécessairement distribuées. Afin de maîtriser la complexité de la distribution, il est indispensable de bien comprendre les concepts, technologies et approches architecturales. Après une analyse des dernières évolutions du Web, le séminaire introduit les différentes architectures distribuées, puis présente les architectures de données distribuées et de services, et enfin les architectures Big Data et cloud.

    Il répond aux questions suivantes:

    • Web 2.0 et 3.0 : quelles opportunités ?
    • Impact de XML, JSON, AJAX et HTML5 sur les architectures Web? SOAP versus REST.
    • Architectures multi-tiers, middlewares transactionnels et Web Services.
    • Quid de la sécurité dans un contexte distribué et ouvert ?
    • Données distribuées : intégration réelle ou virtuelle?
    • SOA versus WOA : les meilleurs cas d’usage ?
    • Event-driven SOA: vers des SI réactifs ?
    • Architectures Big Data: le data lake, impact sur l’existant?
    • Architectures cloud : comment intégrer avec le SI ?
    • Cloud et Big Data : le mariage parfait ?

    LE MOT DE L’INTERVENANT

    « 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 derniers développements du Web afin de mettre en place des architectures de données et de services distribués, et rendre votre SI réactif. Vous pourrez aussi apprécier les solutions à mettre en place pour intégrer le Big Data et le Cloud, ou rendre votre SI plus réactif face aux flux de données. »

    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 ».



    Évolutions du Web et de ses applications


    Évolution des applications distribuées

    • Tendances : mobilité, Big Data, connectivité.
    • Portails d’informations et de services.
    • Transactions de commerce électronique.
    • Réseaux sociaux, communautés professionnelles, crowdsourcing et collaboration à grande échelle.
    • Applications mobiles : smartphones et tablettes.
    • Hébergement de services, data centers et cloud.
    • Les besoins : interopérabilité (anyhow), accès à partir de terminaux mobiles (anywhere), haute disponibilité (anytime).

    Évolutions du Web

    • Protocoles et architectures.
    • Les formats d’échange de données : XML versus JSON.
    • Web 2.0 : échange de données XML, nouvelles formes d’interaction, l’exemple de Wikipédia.
    • Du client léger au client riche avec HTML5, CSS3, JavaScript et AJAX.
    • Les problème de sécurité avec AJAX.
    • Le RIA : Adobe Flash, JavaFX, Microsoft Silverlight.
    • Les mashups.
    • Web 3.0 : sémantique des ressources avec RDF et SparQL, ontologies avec OWL.

    Architectures distribuées


    Architectures multi-tiers

    • Modèles 1-tier, 2-tiers, 3-tiers, n-tiers.
    • 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.
    • Mise en œuvre du patron d’architecture MVC (modèle-vue-contrôleur) dans le 3-tiers.
    • Architectures : orientées données (DOA), orientées services (SOA), orientées Web (WOA), peer-to-peer (P2P), massivement parallèles (MPP).

    Sécurité

    • Sécurité des applications distribuées : confidentialité, intégrité, disponibilité.
    • Les défenses : authentification, protection des communications, autorisation, chiffrement, audit, contrôle d’usage, rétention limitée, anonymisation, législation.
    • Le chiffrement : clés privées, clés publiques, certificats.
    • Techniques de sécurité réseau : antivirus, VPN, firewalls, DMZ, serveurs proxy,
    • Techniques de protection des données : serveurs de données cryptées, contrôle d’accès discrétionnaire ou multi-niveau.
    • Etude cas : partage et sécurisation de ledger avec Blockchain.

    Web Services

    • Architecture des Web Services : client, fournisseur, annuaire de services.
    • Description des services avec WSDL.
    • Référencement des services, les annuaires de services, l’échec de UDDI.
    • Le protocole de communication SOAP.
    • La composition de services avec BPEL.
    • Qualité de service et sécurité : WS-reliability, WS-transaction, WS-security, etc.
    • Etude de cas de réutilisation : Qwest Communications.

    Architectures de données distribuées


    La pile logicielle du SGBD

    • Le standard SQL : requêtes, transactions, vues, contraintes d’intégrité et triggers.
    • Optimisation et réglage, l’importance du placement et des index.
    • L’analyse de données: décisionnel, OLAP et Business Intelligence.

    Intégration des données

    • 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, clé-valeur.
    • Etude de cas : comparateur de prix.
    • L’offre produits et services.

    SGBD transactionnels distribués

    • Transactions distribuées : les propriétés ACID, le protocole 2PC, tolérance aux pannes et scalabilité.
    • Réplication de données : cohérence des copies, propagation des mises à jour.
    • Produits principaux : Oracle, IBM DB2, SQL Server, SAP Sybase, PostgreSQL, MySQL.
    • Etude de cas : consolidation des ventes de milliers de magasins franchisés.

    Architectures parallèles de données

    • Objectifs: speed-up, scale-up, scale-out, élasticité.
    • Architectures de stockage : NAS versus SAN en cluster.
    • Architectures parallèles : SMP, NUMA, cluster shared-disk, cluster shared-nothing.
    • Techniques de base : stockage en ligne ou en colonne, sharding, indexation, failover, parallélisation des requêtes.
    • Produits principaux: Actian, IBM, Microsoft, Oracle Exadata, MySQL Cluster, Teradata, HP Vertica, ParAccel, EMC GreenPlum.
    • Étude de cas : Sabre Air Travel Shopping Engine.

    Architectures de services


    Gestion de services avec serveurs d’applications

    • Le modèle JEE : les API standards, vers la simplification avec JEE 8.
    • Le problème de la persistance des objets Java ; les solutions de type TopLink, Hibernate, Versant enJin.
    • Les principaux serveurs JEE : IBM WebSphere, Oracle WebLogic, JBoss, Geronimo, Jonas, Sun GlassFish.
    • L’alternative légère à JEE avec POJO, Spring et Tomcat.
    • .NET de Microsoft : les transactions distribuées, l’accès aux données avec ADO.

    Service Oriented Architecture (SOA)

    • Éléments essentiels : messages descriptifs, format d’échange standard, extensibilité, découverte de service.
    • EAI : transport, transformation et routage de messages ; gestion des processus métier.
    • ESB : interopérabilité des Web Services, gestion de messages distribués, équilibrage de charge.
    • Les offres : IBM, Oracle, Microsoft, SAG, Sonic, Sun OpenESB, Ow2 Petals.
    • Succès et échecs du SOA ; écueils à éviter.

    Event-Driven Architecture (EDA)

    • SI dirigés par les événements : event-driven BPM, event-driven SOA.
    • Business activity monitoring (BAM).
    • Gestion d’événements complexes avec Complex Event Processing (CEP).
    • Gestion de flux d’événements avec Event Stream Processing (ESP).
    • Les principaux CEP : Tibco Streambase, Microsoft StreamInsight, Parstream, etc.
    • Etude de cas : salle de marché avec EDA

    Web Oriented Architecture (WOA)

    • Le modèle d’architecture REST : identification des ressources par URI, accès par hyperliens, protocole sans état (HTTP).
    • SOAP versus REST.
    • Les frameworks de services RESTful : AngularJS, ASP.NET, Eclipse, JAX-RS, Restfulie, Spring, Struts.
    • L’alternative aux frameworks : RESTful MVC.
    • Principes de conception WOA.
    • L’adoption du WOA chez les géants du Web : Amazon, Facebook, Google, Twitter, etc.
    • Etude de cas : l’entreprise Textile.com avec WOA.

    Architectures Big Data


    La pile logicielle Big Data

    • Les niveaux fonctionnels : stockage, organisation, traitement, intégration, outils d’analyse.
    • L’architecture Hadoop, comparaison avec les architectures Lambda et Kappa.
    • Le stockage en fichiers distribués dans un cluster.
    • Comparaison avec les SGBD relationnels.

    Les frameworks de traitement de Big Data

    • Le modèle de données clé-valeur, partitionnement des fichiers : GFS versus HDFS.
    • Le framework MapReduce : les fonctions Map et Reduce, tolérance aux fautes et équilibrage de charge, l’écosystème Hadoop.
    • Le framework Spark: le langage Scala, transformations et actions, stockage in-memory, Spark SQL, Spark Streaming.
    • Distributeurs/éditeurs principaux: Cloudera, Datameer, Datastax, Greenplum HD, Hurence, Hortonworks, Talend, VMware.
    • Le calcul de graphes avec Google Pregel.
    • Etude de cas Facebook : gérer 1000 milliards de liens avec Apache Giraph.

    Le data lake

    • Problèmes avec les entrepôts de données : développement avec ETL, schéma en écriture.
    • Principes : schéma en lecture, traitement de données multi-workload.
    • Architecture : sources, systèmes de données, outils, applications.
    • Meilleures pratiques.
    • Etude de cas dans le commerce de détail : performance du marketing ciblé.

    Intégration dans le SI

    • Besoins : acquisition, organisation, analyse.
    • Place de Hadoop dans une architecture d’intégration les ETL comme Splunk.
    • Exemples de plateformes d’intégration: Microsoft HDInsight, IBM InfoSphere BigInsights, Oracle Bigdata Appliance.

    Architectures Cloud


    Le cloud computing

    • Objectifs : hébergement de services, passage à l’échelle, élasticité, hautes performances, pay-per-use.
    • Origines : ASP, Software as a Service (SaaS), Infrastructure as a Service (IaaS), Platform as a Service (PaaS).
    • Différents types de Clouds : public, privé, communautaire, hybride.
    • Fonctions d’un Cloud : administration, sécurité, annuaire, virtualisation des ressources, containers d’applications, gestion des SLA.
    • Positionnement des acteurs majeurs : Amazon, Google, IBM, HP, Microsoft, Oracle-Sun, SalesForces, VMware.
    • Études de cas : Amazon, Google.
    • Le cloud en France : Atos, Bull, Cloudwatt, Dassault Systèmes, Numergy, Orange, Thales.
    • Cloud et Big Data : le mariage parfait ?

    Architecture de gestion de données dans le cloud

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

    Les SGBD NoSQL

    • SGBD clé-valeur : Amazon DynamoDB, Apache Cassandra, Linkedin Voldemort.
    • Etude de cas Orange: supervision de réseau avec Cassandra.
    • SGBD tables : Google Bigtable, Hadoop Hbase, Apache Accumulo.
    • Etude de cas Scaled Risk: Hbase dans les services financiers.
    • SGBD documents : MongoDB, CouchBase, LinkedIn Espresso.
    • Etude de cas MetLife : vue 360° des assurés avec MongoDB.
    • SGBD graphes : Neo4J, DEX/Sparksee, AllegroGraph.
    • Etude de cas GameSys : intégration sociale et jeux en ligne avec Neo4J.
    • SGBD NewSQL : Google F1, CockroachDB, LeanXcale, MemSQL, SAP HANA, VoltDB.
    • Etude de cas Google : gestion de la base AdWords avec F1.
    • Critères de choix d’un SGBD NoSQL.
    • Intégration de données SQL et NoSQL : Microsoft Polybase, HadoopDB.