{"id":12455,"date":"2022-06-22T19:40:30","date_gmt":"2022-06-22T19:40:30","guid":{"rendered":"http:\/\/705consulting.com\/?page_id=12455"},"modified":"2022-06-30T21:38:22","modified_gmt":"2022-06-30T21:38:22","slug":"formation-nosql","status":"publish","type":"page","link":"https:\/\/705consulting.com\/index.php\/formation-nosql\/","title":{"rendered":"Formation NoSQL"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"12455\" class=\"elementor elementor-12455\">\n\t\t\t\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-f419774 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"f419774\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-b7ddcf4\" data-id=\"b7ddcf4\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-258fa8e elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"258fa8e\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-1f15051\" data-id=\"1f15051\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-element elementor-element-9b0a0d4 elementor-widget elementor-widget-witr_section_service\" data-id=\"9b0a0d4\" data-element_type=\"widget\" data-widget_type=\"witr_section_service.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n\t\t\t<div class=\"service-item all_color_service text-center \">\n\t\t\t\t<div class=\"service_top_image\">\n\t\t\t\t\t<!-- image -->\n\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" src=\"http:\/\/705consulting.com\/wp-content\/uploads\/2022\/06\/kisspng-oracle-nosql-database-logo-oracle-nosql-database-5b4fba602dd8c7.4989619315319517121878.png\" alt=\"\" \/>\n\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"text_box all_icon_color\">\n\t\t\t\t\t<!-- icon -->\n\t\t\t\t\t\t\t\t\t\t<!-- custom icon -->\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t<!-- image -->\n\t\t\t\t\t\t\n\t\t\t\t\t<!-- title -->\n\t\t\t\t\t\t\t\t\t\t<!-- content -->\n\t\t\t\t\t\t\t\t\t\t\t<p>\n\n <\/p>\t\t\n\t\t\t\t\t\t\t\t\t\t<!-- button -->\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div> <!-- text_box -->\t\t\t\t\t\t\t\n\t\t\t<\/div> <!-- service item -->\t\t\t\t\t\t\t\n \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-45b9f54 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"45b9f54\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-a3cff03\" data-id=\"a3cff03\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-element elementor-element-f3991e2 elementor-widget elementor-widget-witr_section_t_widget\" data-id=\"f3991e2\" data-element_type=\"widget\" data-widget_type=\"witr_section_t_widget.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t<!-- text widget center -->\n\t\t\t\t\t<div class=\"witr_text_widget\">\n\t\t\t\t\t\t<div class=\"witr_text_widget_inner\">\n\t\t\t\t\t\t\t<!-- text widget top -->\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<!-- text widget middle -->\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<!-- text widget bottom -->\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<!-- content -->\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<p><p>Nos consultants formateurs tous fortement impliqu\u00e9s sur les bases NoSQL, ils suivent activement les nouveaut\u00e9s sur ce sujet afin de mettre \u00e0 jour nos programmes de cours pratiquement en temps r\u00e9el.<br \/>Ils ont con\u00e7u les formations NoSQL, les supports de cours et les travaux pratiques qui accompagnent chaque formation. Ces programmes sont r\u00e9vis\u00e9s plusieurs fois par an afin de coller \u00e0 l\u2019actualit\u00e9 tr\u00e8s dynamique de ce domaine.!<\/p><\/p>\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<!--- repeater content --->\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-476bc18 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"476bc18\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-224c9a9\" data-id=\"224c9a9\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-element elementor-element-a143fb5 elementor-widget elementor-widget-accordion\" data-id=\"a143fb5\" data-element_type=\"widget\" data-widget_type=\"accordion.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<style>\/*! elementor - v3.7.8 - 02-10-2022 *\/\n.elementor-accordion{text-align:left}.elementor-accordion .elementor-accordion-item{border:1px solid #d4d4d4}.elementor-accordion .elementor-accordion-item+.elementor-accordion-item{border-top:none}.elementor-accordion .elementor-tab-title{margin:0;padding:15px 20px;font-weight:700;line-height:1;cursor:pointer;outline:none}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{display:inline-block;width:1.5em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon svg{width:1em;height:1em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right{float:right;text-align:right}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left{float:left;text-align:left}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed{display:block}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened,.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed{display:none}.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened{display:block}.elementor-accordion .elementor-tab-content{display:none;padding:15px 20px;border-top:1px solid #d4d4d4}@media (max-width:767px){.elementor-accordion .elementor-tab-title{padding:12px 15px}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{width:1.2em}.elementor-accordion .elementor-tab-content{padding:7px 15px}}.e-container>.elementor-widget-accordion{width:var(--container-widget-width,100%)}<\/style>\t\t<div class=\"elementor-accordion\" role=\"tablist\">\n\t\t\t\t\t\t\t<div class=\"elementor-accordion-item\">\n\t\t\t\t\t<div id=\"elementor-tab-title-1691\" class=\"elementor-tab-title\" data-tab=\"1\" role=\"tab\" aria-controls=\"elementor-tab-content-1691\" aria-expanded=\"false\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon elementor-accordion-icon-left\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-closed\"><i class=\"fas fa-plus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-opened\"><i class=\"fas fa-minus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-accordion-title\" href=\"\">FORMATION NoSQL: DECOUVERTE DES SOLUTIONS & ARCHITECTURE DE LA DONNEE<\/a>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-1691\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"1\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-1691\"><h2>Objectifs de la formation NoSQL\u00a0<\/h2><p>Les technologies actuelles permettent de traiter des volumes de donn\u00e9es beaucoup plus importants que les syst\u00e8mes relationnels. Ils s&#8217;ouvrent aux donn\u00e9es en ligne (Transactional Processing), au Cloud, au traitement en temps r\u00e9el sur des des syst\u00e8mes virtualis\u00e9s.<br \/>Par ailleurs, la donn\u00e9e est devenue un nouveau pan de l&#8217;\u00e9conomie : exploration de la donn\u00e9e, Data Science&#8230;<br \/>Avec cette formation, vous allez d\u00e9couvrir l\u2019\u00e9cosyst\u00e8me des nouvelles architectures de la donn\u00e9e b\u00e2ties autour des solutions dites &#8220;NoSQL&#8221; (Not only SQL)\u00a0afin de comprendre leurs particularit\u00e9s et cas d\u2019usage associ\u00e9s : Couchbase, MongoDB, ElasticSearch, Cassandra&#8230;<\/p><p>Concr\u00e8tement, \u00e0 l&#8217;issue de ce stage vous aurez acquis les comp\u00e9tences et connaissances n\u00e9cessaires pour:<\/p><ul><li>Comprendre les concepts de syst\u00e8mes distribu\u00e9s et de donn\u00e9e : coh\u00e9rence, th\u00e9or\u00e8me de CAP&#8230;<\/li><li>D\u00e9couvrir l\u2019\u00e9cosyst\u00e8me de NoSQL et les caract\u00e9ristiques des solutions du march\u00e9 (ElasticSearch, Cassandra, MongoDB, Redis, Couchbase&#8230;)<\/li><li>Conna\u00eetre les cas d\u2019usage de la donn\u00e9e<\/li><li>Comprendre les plateformes de streaming de la donn\u00e9e (Storm, Spark&#8230;)<\/li><li>Observer l\u2019\u00e9cosyst\u00e8me Hadoop.<\/li><\/ul><h2>\u00c0 qui s&#8217;adresse cette formation ?<\/h2><p><strong>Public :<\/strong><\/p><p>Ce stage s&#8217;adresse aux DSI, Directeurs de projets, Chefs de projets, Architectes (Logiciel\/Entreprise\/Technique) et D\u00e9veloppeurs.<\/p><p><strong>Pr\u00e9requis :<\/strong><\/p><p>Il est conseill\u00e9 pour une meilleure appr\u00e9ciation du cours, d&#8217;avoir des connaissances certaines en architectures applicatives traditionnelles avec SGBDR.<\/p><h2>Contenu du cours NoSQL\u00a0<\/h2><ol><li><h4>Comprendre les bases de donn\u00e9es avant l&#8217;arriv\u00e9e de NoSQL<\/h4><\/li><\/ol><p>Forme normale des bases de donn\u00e9es relationnelles<br \/>Baisse des co\u00fbts hardware<br \/>Notion de \u00ab Transaction \u00bb<br \/>Quand syst\u00e8mes distribu\u00e9s et disponibilit\u00e9 d\u00e9passent la coh\u00e9rence (CAP)<br \/>D\u00e9couvrir le NoSQL : \u201cNot only SQL&#8221;<br \/>D\u00e9finition de \u00ab R\u00e9plication \u00bb<br \/>D\u00e9finition de \u00ab Sharding \u00bb<\/p><ol><li><h4>D\u00e9couvrir les familles de base de donn\u00e9es NoSQL<\/h4><\/li><\/ol><p>Key-Value<br \/>Document<br \/>Graph<br \/>Colonne<\/p><ol><li><h4>Le monde Hadoop<\/h4><\/li><\/ol><p>D\u00e9couvrir l\u2019offre Colonne avec Cassandra<br \/>Pr\u00e9sentation g\u00e9n\u00e9rale, architecture et cas pratique<br \/>S\u00e9ries temporelles, objets connect\u00e9s<br \/>Frameworks de traitement distribu\u00e9 et Lambda architecture<\/p><p><strong><em>Cas d\u2019application<\/em><\/strong><\/p><p><em>\u00ab Cassandra et Spark streaming \u00bb<\/em><\/p><ol><li><h4>Focus sur l\u2019offre cl\u00e9-valeur et document avec Couchbase et MongoDB<\/h4><\/li><\/ol><p>Pr\u00e9sentation g\u00e9n\u00e9rale, architecture et cas d\u2019utilisation<\/p><p><strong><em>Cas d\u2019application\u00a0<\/em><\/strong><\/p><p><em>&#8220;Couchbase et MongoDB&#8221;<\/em><\/p><ol><li><h4>Search &#8211; F\u00e9d\u00e9ration De Donn\u00e9es<\/h4><\/li><\/ol><p>Pr\u00e9sentation de l\u2019offre Elasticsearch<\/p><p><strong><em>Cas d\u2019application\u00a0<\/em><\/strong><\/p><p><em>&#8220;Elasticsearch&#8221;<\/em><\/p><ol><li><h4>Bilan et perspectives\u00a0<\/h4><\/li><\/ol><p>Feedback des participants<br \/>Recommandations et \u00e9laboration du plan d\u2019action individuel<br \/>Conclusion<br \/>Questions \/ R\u00e9ponses<\/p><\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-accordion-item\">\n\t\t\t\t\t<div id=\"elementor-tab-title-1692\" class=\"elementor-tab-title\" data-tab=\"2\" role=\"tab\" aria-controls=\"elementor-tab-content-1692\" aria-expanded=\"false\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon elementor-accordion-icon-left\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-closed\"><i class=\"fas fa-plus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-opened\"><i class=\"fas fa-minus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-accordion-title\" href=\"\">FORMATION BASES DE DONNEES NoSQL MISE EN OEUVRE: <\/a>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-1692\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"2\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-1692\"><h2 style=\"padding-left: 120px;\">Objectifs de la formation Base de donn\u00e9es noSQL\u00a0<\/h2><p>\u00a0<\/p><p>Le langage SQL et les concepts de matrice (ligne, colonne) et de relation entre les donn\u00e9es ont monopolis\u00e9 la fa\u00e7on de repr\u00e9senter les donn\u00e9es et de les manipuler pendant des d\u00e9cennies. Mais les sources de donn\u00e9es, les formats, et les volumes ont \u00e9volu\u00e9 (Informations \u00e9mises par les applications et les sites WeB, Objets Connect\u00e9s, Journaux, etc.).<br \/>Aussi il a bien fallu penser de nouvelles architectures et de nouveaux outils ou langages d\u2019extraction et de stockage pour les donn\u00e9es non structur\u00e9es. Il s\u2019agit d\u2019une rupture conceptuelle suffisamment forte par rapport au SQL (et donc aux architectures sous-jacentes) pour que l\u2019on souhaite la d\u00e9finir en montrant qu\u2019il existe une autre voie &#8220;Not Only SQL&#8221; . La nuance est importante car il ne s\u2019agit pas d\u2019abandonner le SQL pour tous les projets et cette formation pr\u00e9cisera clairement les champs d\u2019application du NoSQL.<br \/>Les bases de donn\u00e9es NoSQL renvoient donc \u00e0 des concepts et des outils sp\u00e9cifiques que ce soit au niveau des architectures, de l\u2019exploitation, du stockage, de l\u2019extraction des donn\u00e9es, et bien s\u00fbr du d\u00e9veloppement.<\/p><p>Cette formation vous propose dans un premier temps de bien comprendre en quoi les concepts et les savoir-faire sont diff\u00e9rents par rapport au monde des SGBDR classiques puis de mettre en \u0153uvre les solutions NoSQL Open Source les plus utilis\u00e9es aujourd\u2019hui comme MongoDB, Cassandra, Couchbase et le puissant outil ElasticSearch qui permet l\u2019indexation et la recherche de donn\u00e9es.<br \/>La formation est r\u00e9solument orient\u00e9e vers la pratique afin de ne pas rester uniquement conceptuelle\u00a0\u00a0<\/p><h2><strong>\u00c0 qui s&#8217;adresse cette formation ?<\/strong><\/h2><p><strong>Public :<\/strong><\/p><p>Cette formation cible les directions informatiques et fonctionnelles, les responsables informatiques, chefs de projet, architectes, d\u00e9veloppeurs&#8230;<\/p><p><strong>Pr\u00e9requis :<\/strong><\/p><p>Pour suivre ce cours NoSQL Mise en oeuvre, il faut avoir des connaissances de base des architectures techniques et du management SI.<br \/>ainsi que des connaissances en bases de donn\u00e9es.<\/p><h2><strong>Contenu du cours Base de donn\u00e9es noSQL\u00a0<\/strong><\/h2><ol><li><h4>Des SGBD relationnels au NoSQL\u2026<\/h4><\/li><\/ol><p>Rappels synth\u00e9tiques sur la philosophique des SGBDR<br \/>G\u00e9rer les relations entre les donn\u00e9es avec de la redondance<br \/>En quoi certains formats ne sont pas adapt\u00e9s aux SGBDR ?<br \/>Qu\u2019entend-on par donn\u00e9es structur\u00e9es et donn\u00e9es non-structur\u00e9es ?<br \/>Exemples de \u00ab nouvelles \u00bb sources de donn\u00e9es (logs, IoT, sites Web, etc.)<br \/>\u00c9volutions technologiques et av\u00e8nement du NoSQL<br \/>Champs d\u2019application des bases NoSQL et des SGBDR<\/p><ol><li><h4>Diff\u00e9rentes familles NoSQL<\/h4><\/li><\/ol><p>Pourquoi cette classification ?<br \/>Les bases de donn\u00e9es cl\u00e9\/valeur<br \/>Comment g\u00e9rer l\u2019int\u00e9grit\u00e9 des donn\u00e9es ?<br \/>Les bases de donn\u00e9es orient\u00e9es document<br \/>Exemples de traitements sur des formats JSON ou XML<br \/>Comment stocker des documents binaires ?<br \/>Les bases orient\u00e9es colonne distribu\u00e9es pour le Big Data op\u00e9rationnel :<br \/>Hadoop, HBase, Cassandra\u2026<br \/>Mod\u00e9liser un r\u00e9seau avec les bases de donn\u00e9es orient\u00e9es graphe (Facebook, Twitter, etc.)<br \/>L&#8217;\u00e9cosyst\u00e8me Hadoop (diff\u00e9rences avec les SGBDR, liens avec le NoSQL)<\/p><p><em>Ateliers :<\/em><\/p><p><em>Manipulation des donn\u00e9es dans un contexte Big Data avec l\u2019outil HBase de Hadoop<br \/>Observation du format des donn\u00e9es manipul\u00e9es sur des bases en production (Cassandra, Redis, MongoDB)<\/em><\/p><ol><li><h4>Comment choisir une base NoSQL ?<\/h4><\/li><\/ol><p>Synth\u00e8se des principaux acteurs Open Source (MongoDB, Cassandra, Redis, CouchBase\u2026)<br \/>Les choix mat\u00e9riels<br \/>Comment aborder la migration ?<br \/>Les impacts sur le d\u00e9veloppement client. Comment d\u00e9velopper efficacement avec des bases NoSQL ?<br \/>Quels outils de supervision et comment les choisir ?<br \/>Quelle est la complexit\u00e9 administrative et la courbe d&#8217;apprentissage ?<br \/>Cas d&#8217;utilisation dans des entreprises existantes<br \/>Et les performances ? Quelques benchmarks ?<br \/>Qu&#8217;est-ce que NewSQL ?<\/p><p><strong><em>Ateliers :<\/em><\/strong><\/p><p><em>Cr\u00e9ation interactive d\u2019une matrice de synth\u00e8se comparant les diff\u00e9rents acteurs, leur contexte propice d\u2019utilisation, leurs points forts et leurs faiblesses en fonction de diff\u00e9rents param\u00e8tres comme les fonctionnalit\u00e9s, la recherche, le stockage, la souplesse dans la scalabilit\u00e9, les performances, la courbe d\u2019apprentissage, etc.<\/em><\/p><ol><li><h4>Rechercher les donn\u00e9es (Elasticsearch)<\/h4><\/li><\/ol><p>Liens entre Elasticsearch et les bases NoSQL<br \/>Int\u00e9gration des donn\u00e9es dans Elasticsearch<br \/>Configuration d\u2018index<br \/>Analyse et extraction de texte<br \/>Diff\u00e9rents modes de recherche (structur\u00e9e, full-texte, proximit\u00e9, etc.)<\/p><p><strong><em>Ateliers :<\/em><\/strong><\/p><p><em>Cr\u00e9ation d&#8217;index, Mise en place d&#8217;analyseurs<br \/>Utilisation de l&#8217;API de recherche<\/em><\/p><ol><li><span style=\"color: #000000;\"><strong>Mise en \u0153uvre d\u2019une base NoSQL avec MongoDB<\/strong><\/span><\/li><\/ol><p>Installation de MongoDB<br \/>Cr\u00e9ation de documents et manipulations (shell)<br \/>Importation de donn\u00e9es des SGBDR au format JSON<br \/>Indexer les donn\u00e9es<br \/>Suivre les donn\u00e9es et les index dans le temps<br \/>R\u00e9plication des donn\u00e9es<br \/>Partitionner les donn\u00e9es<br \/>Fonctionnement du moteur de stockage des donn\u00e9es<br \/>Administrer et superviser au quotidien<\/p><p><strong><em>Ateliers :<\/em><\/strong><\/p><p><em>Installation de MongoDB<br \/>Premiers pas avec le shell<br \/>Cr\u00e9ation de bases et de collections<br \/>Int\u00e9gration de donn\u00e9es au format JSON<br \/>Stockage de journaux de supervision de r\u00e9seau (Nagios)<br \/>Requ\u00eatage<br \/>Mise en place d\u2019index et observation du d\u00e9roulement des requ\u00eates<br \/>Mise en \u0153uvre de la r\u00e9plication de donn\u00e9es<br \/>Mise en \u0153uvre du partitionnement de donn\u00e9es<\/em><\/p><p style=\"text-align: left; padding-left: 80px;\">\u00a0<\/p><\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-accordion-item\">\n\t\t\t\t\t<div id=\"elementor-tab-title-1693\" class=\"elementor-tab-title\" data-tab=\"3\" role=\"tab\" aria-controls=\"elementor-tab-content-1693\" aria-expanded=\"false\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon elementor-accordion-icon-left\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-closed\"><i class=\"fas fa-plus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-opened\"><i class=\"fas fa-minus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-accordion-title\" href=\"\">FORMATION Neo4J POUR DEVELOPPEUR<\/a>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-1693\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"3\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-1693\"><h2>Objectifs de la formation Neo4J pour D\u00e9veloppeur\u00a0<\/h2><p>Neo4J est une base NoSQL permettant de g\u00e9rer des donn\u00e9es fortement li\u00e9es les unes aux autres sous forme de graphe. Cette approche permet d\u2019obtenir de bien meilleures performances lors d\u2019un parcours de graphe qu\u2019avec une base de donn\u00e9es relationnelle et des jointures.<\/p><p>Cette formation est ax\u00e9e sur le d\u00e9veloppement avec Neo4J et non sur l\u2019administration.<br \/>Cependant il est n\u00e9cessaire de comprendre les concepts et le fonctionnement g\u00e9n\u00e9ral de Neo4J afin d\u2019\u00eatre pr\u00e9par\u00e9 \u00e0 l\u2019apprentissage de la programmation qui pr\u00e9sente des diff\u00e9rences nettes par rapport au\u00a0 SQL traditionnel de par le format de stockage des donn\u00e9es dans cette base NoSQL.<\/p><p>Concr\u00e8tement, \u00e0 l\u2019issue de la formation Neo4J pour D\u00e9veloppeur, vous serez capable de :<\/p><ul><li>Comprendre les sp\u00e9cificit\u00e9s d\u2019une base NoSQL par rapport \u00e0 un SGBDR<\/li><li>Savoir installer Neo4J et utiliser les outils du d\u00e9veloppeur<\/li><li>Comprendre la structure des donn\u00e9es et le vocabulaire associ\u00e9 dans Neo4J<\/li><li>Savoir manipuler des donn\u00e9es sous forme de graphe<\/li><li>Am\u00e9liorer les performances avec les index<\/li><li>Acc\u00e9der aux donn\u00e9es de Neo4J depuis des programmes tiers (C#, Java, JavaScript, Python)<\/li><li>Acc\u00e9der aux donn\u00e9es de Neo4J via l\u2019API HTTP<\/li><\/ul><h2>\u00c0 qui s&#8217;adresse cette formation ?<\/h2><p><strong>Public :<\/strong><\/p><p>Cette formation s&#8217;adresse aux D\u00e9veloppeurs Java, Python ou JavaScript..<\/p><p><strong>Pr\u00e9requis :<\/strong><\/p><p>Afin de profiter de cette formation, il est n\u00e9cessaire que les participants aient des connaissances des principes des bases de donn\u00e9es ainsi que des langages de programmation Java, Python ou JavaScript.<\/p><h2><strong>Contenu du cours Neo4J pour D\u00e9veloppeur\u00a0<\/strong><\/h2><ol><li><h4>Introduction \u00e0 Neo4J<\/h4><\/li><\/ol><p>La domination historique des bases de donn\u00e9es relationnelles<br \/>L\u2019apparition des bases NoSQL. Les diff\u00e9rents types de bases NoSQL<br \/>Pr\u00e9sentation de Neo4J, son positionnement, ses avantages<br \/>Exemples d\u2019utilisation de Neo4J<\/p><ol><li><h4><strong>Installation de Neo4J<\/strong><\/h4><\/li><\/ol><p>Plateformes support\u00e9es et configuration requise<br \/>Installation sous Linux, lancement du serveur<br \/>Installation sous Windows, cr\u00e9ation d\u2019un service, lancement<br \/>Configuration, shell et interface web<\/p><p><strong><em>Travaux Pratiques :\u00a0<\/em><\/strong><\/p><p><em>Installer Neo4J sur son poste de d\u00e9veloppement<\/em><\/p><ol><li><h4><strong>La structure des donn\u00e9es sous Neo4J<\/strong><\/h4><\/li><\/ol><p>Les n\u0153uds : propri\u00e9t\u00e9s et labels<br \/>Les relations : propri\u00e9t\u00e9s, types et sens<br \/>Les propri\u00e9t\u00e9s : types et tableaux<br \/>Chemins et parcours de donn\u00e9es<br \/>Sch\u00e9ma. Index et contraintes<\/p><p><strong><em>Travaux Pratiques :\u00a0<\/em><\/strong><\/p><p><em>Exploration du sch\u00e9ma de la base d\u2019exemple<\/em><\/p><ol><li><h4>Le langage Cypher<\/h4><\/li><\/ol><p>Pr\u00e9sentation<br \/>La syntaxe : expressions, variables, param\u00e8tres, op\u00e9rateurs, motifs, tableaux\u2026<br \/>Les clauses : lectures, \u00e9critures, unions, projections\u2026<br \/>Les fonctions : math\u00e9matiques, agr\u00e9gations, scalaires, li\u00e9es aux tableaux et cha\u00eenes\u2026<br \/>Les index : cr\u00e9ation, utilisation, suppression, ajout de contraintes<br \/>Optimisation de requ\u00eates et plans d\u2019ex\u00e9cution<br \/>Importation de donn\u00e9es<\/p><p><strong><em>Travaux Pratiques :\u00a0<\/em><\/strong><\/p><p><em>Importation de la base d\u2019exemple et ex\u00e9cution de requ\u00eates via l\u2019interface web<\/em><\/p><ol><li><h4>Acc\u00e9der \u00e0 Neo4J depuis vos propres programmes<\/h4><\/li><\/ol><p>Les drivers fournis par Neo4J<br \/>Aper\u00e7u des drivers C#, Java, JavaScript, Python<br \/>Focus sur le driver Java, JavaScript ou Python<br \/>&#8211; Connexion au serveur et authentification<br \/>&#8211; Requ\u00eates en lecture et \u00e9criture<br \/>&#8211; Transactions<br \/>Aper\u00e7u de l\u2019embarquement de Neo4J au sein d\u2019un programme Java<\/p><p><strong><em>Travaux Pratiques :\u00a0<\/em><\/strong><\/p><p><em>Ex\u00e9cution de requ\u00eates via le driver Java, JavaScript ou Python<\/em><\/p><ol><li><h4>L\u2019API HTTP<\/h4><\/li><\/ol><p>Racine et authentification<br \/>Flux JSON<br \/>Service transactionnel<br \/>Manipulation directe de n\u0153uds<br \/>Manipulation directe de relations<br \/>Service historique (transactionnel et non transactionnel)<br \/>Recensement des propri\u00e9t\u00e9s, labels et types de relations utilis\u00e9s dans la base<br \/>Gestion de l\u2019indexation et des contraintes<\/p><p><strong><em>Travaux Pratiques :\u00a0<\/em><\/strong><\/p><p><em>Ex\u00e9cution de requ\u00eates via l\u2019API HTTP gr\u00e2ce \u00e0 l\u2019outil Curl<\/em><\/p><\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-accordion-item\">\n\t\t\t\t\t<div id=\"elementor-tab-title-1694\" class=\"elementor-tab-title\" data-tab=\"4\" role=\"tab\" aria-controls=\"elementor-tab-content-1694\" aria-expanded=\"false\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon elementor-accordion-icon-left\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-closed\"><i class=\"fas fa-plus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-opened\"><i class=\"fas fa-minus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-accordion-title\" href=\"\">FORMATION MongoDB POUR DEVELOPPEUR<\/a>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-1694\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"4\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-1694\"><h2><strong>Objectifs de la formation MongoDB d\u00e9veloppeur\u00a0<\/strong><\/h2><p>MongoDB est une base NoSQL permettant de g\u00e9rer un gros volume d\u2019informations (\u00ab humongous \u00bb = \u00e9norme), structur\u00e9e ou non, avec des performances qui en ont fait un standard reconnu du march\u00e9.<br \/>Toutes les fonctionnalit\u00e9s attendues d\u2019une base de donn\u00e9es sont pr\u00e9sentes (langage complet de requ\u00eates, index, r\u00e9plication, cluster, API diverses, etc.).<br \/><br \/>Cette formation MongoDB est ax\u00e9e sur le d\u00e9veloppement MongoDB et non l\u2019administration (r\u00e9f. BMDB). Cependant il est n\u00e9cessaire de comprendre les concepts et le fonctionnement g\u00e9n\u00e9ral de MongoDB afin d\u2019\u00eatre pr\u00e9par\u00e9 \u00e0 l\u2019apprentissage de la programmation qui pr\u00e9sente des diff\u00e9rences nettes par rapport au SQL traditionnel de par le format de stockage des donn\u00e9es dans une base NoSQL.<br \/><br \/>Concr\u00e8tement \u00e0 l\u2019issue de la formation MongoDB D\u00e9veloppement vous serez capable de :<\/p><ul><li>Comprendre les sp\u00e9cificit\u00e9s d\u2019une base NoSQL par rapport \u00e0 un SGBDR<\/li><li>Savoir installer MongoDB et utiliser les outils du d\u00e9veloppeur<\/li><li>Comprendre la structure des donn\u00e9es et le vocabulaire associ\u00e9 dans MongoDB<\/li><li>Savoir manipuler les donn\u00e9es au format JSON ou BSON<\/li><li>Savoir mod\u00e9liser les donn\u00e9es dans une base NoSQL<\/li><li>Am\u00e9liorer les performances avec les index<\/li><li>Comprendre les concepts avanc\u00e9s de stockage (r\u00e9plication, sharding, GridFS)<\/li><li>Acc\u00e9der aux donn\u00e9es de MongoDB depuis des programmes tiers (PHP, NodeJs, Ruby, Python, etc.)<\/li><li>Mettre en \u0153uvre un cycle complet en Java de manipulation des donn\u00e9es<\/li><li>Savoir optimiser vos requ\u00eates gr\u00e2ce aux solutions propos\u00e9es par MongoDB (index, sharding, logs, monitoring, etc.).<\/li><\/ul><h2><strong>\u00c0 qui s&#8217;adresse cette formation ?<\/strong><\/h2><p><strong>Public :<\/strong><\/p><p>Cette formation s&#8217;adresse aux d\u00e9veloppeurs PHP ou Python.<\/p><p><strong>Pr\u00e9requis :<\/strong><\/p><p>Afin de profiter pleinement de cette formation il est n\u00e9cessaire que les participants aient des connaissances des principes des bases de donn\u00e9es, de la ligne de commande ainsi que des connaissances du langage Java (pour la partie Java seulement).<\/p><h2><strong>Contenu du cours MongoDB d\u00e9veloppeur\u00a0<\/strong><\/h2><ol><li><h4><strong>Philosophie de MongoDB<\/strong><\/h4><\/li><\/ol><p>La domination historique des bases de donn\u00e9es relationnelles<br \/>L\u2019apparition des bases NoSQL. Les diff\u00e9rents types de bases NoSQL<br \/>Pr\u00e9sentation de MongoDB, son positionnement, ses avantages<br \/>Exemples d\u2019utilisation de MongoDB<\/p><ol><li><h4><strong>Installation<\/strong><\/h4><\/li><\/ol><p>Plateformes support\u00e9es<br \/>Installation sous Linux, lancement du serveur<br \/>Installation sous Windows, configuration, cr\u00e9ation d\u2019un service, lancement<br \/>Pr\u00e9sentation des outils MongoDB et de l\u2019invite de commande (shell)<\/p><p><strong><em>Travaux Pratiques :\u00a0<\/em><\/strong><\/p><p><em>Installer MongoDB sur son poste de d\u00e9veloppement, test de connexion<\/em><\/p><ol><li><h4>La structure des donn\u00e9es sous MongoDB<\/h4><\/li><\/ol><p>La structure : base de donn\u00e9es, collections, documents, espace de noms\u2026<br \/>Les formats JSON et BSON. Types de donn\u00e9es \u00e9l\u00e9mentaires et sp\u00e9cial<br \/>La mod\u00e9lisation de donn\u00e9es. Les diff\u00e9rents sc\u00e9narios de sch\u00e9ma<\/p><p><strong><em>Travaux Pratiques :<\/em><\/strong><\/p><p><em>Premi\u00e8re exploration du shell<br \/>Mod\u00e9lisation d\u2019un cas pratique de donn\u00e9es<\/em><\/p><ol><li><h4>La manipulation de donn\u00e9es via le shell MongoDB<\/h4><\/li><\/ol><p>Insertion d\u2019un ou plusieurs documents<br \/>R\u00e9cup\u00e9rer des documents, filtres de recherches (find(), findOne(), $where, $in, $not, $gt, $lt, $ne, etc.) Projections. Tris. Curseurs<br \/>Mettre \u00e0 jour ou remplacer un ou plusieurs documents ($set, $inc, tableau\u2026)<br \/>Supprimer un ou plusieurs documents<br \/>La validation de documents<\/p><p><strong><em>Travaux Pratiques :<\/em><\/strong><\/p><p><em>Manipulation de donn\u00e9es via le shell<br \/>Mise en place de r\u00e8gles de validation<\/em><\/p><ol><li><h4><strong>Le stockage de fichiers lourds avec GridFS<\/strong><\/h4><\/li><\/ol><p>Pr\u00e9sentation : Quand l\u2019utiliser ?<br \/>Collections et pr\u00e9fixes<br \/>L\u2019utilitaire \u00ab mongofiles \u00bb<\/p><p><strong><em>Travaux Pratiques :<\/em><\/strong><\/p><p><em>Stockage de fichier via l\u2019utilitaire \u00ab mongofiles \u00bb<\/em><\/p><ol><li><h4><strong>Acc\u00e9der \u00e0 MongoDB depuis vos propres programmes (API)<\/strong><\/h4><\/li><\/ol><p>Les drivers fournis par MongoDB<br \/>Aper\u00e7u des drivers PHP, NodeJS, Ruby, Python<br \/>Focus sur le driver Java :<br \/>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8211; Connexion aux bases (isol\u00e9es, ReplicaSet, clusters de shard)<br \/>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8211; Authentification<br \/>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8211; S\u00e9lection de la base et de la collection<br \/>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8211; Insertion, r\u00e9cup\u00e9ration, mise \u00e0 jour et suppression de documents<br \/>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8211; \u00c9critures par lot<br \/>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8211; GridFS<\/p><p><strong><em>Travaux Pratiques :<\/em><\/strong><\/p><p><em>Connexion, manipulation des documents, cr\u00e9ation d\u2019index, GridFS depuis un programme Java<\/em><\/p><ol><li><h4><strong>Performance des requ\u00eates MongoDB<\/strong><\/h4><\/li><\/ol><p>Fonctionnement d\u2019une transaction dans MongoDB (atomicit\u00e9, verrous)<br \/>Les \u00e9critures par lot<br \/>L\u2019indexation des donn\u00e9es (types, propri\u00e9t\u00e9s d\u2019index)<br \/>Couverture de requ\u00eate et intersection d\u2019index<br \/>Strat\u00e9gies d\u2019indexation et explication de requ\u00eates<br \/>La pr\u00e9f\u00e9rence de lecture et la confirmation des \u00e9critures dans un ReplicaSet<br \/>Le sharding<br \/>Le profiling des requ\u00eates lentes<br \/>Les outils de monitoring<br \/>Retrouver les infos pertinentes dans les logs<\/p><p><strong><em>Travaux Pratiques :<\/em><\/strong><\/p><p><em>Observation du comportement de la base lors des manipulations pr\u00e9c\u00e9dentes (ex\u00e9cution de requ\u00eates lentes, diagnostic, tuning)<br \/>Mise en place d\u2019index. Analyse du d\u00e9roulement des requ\u00eates et optimisation<\/em><\/p><p>\u00a0<\/p><p><strong>Travaux Pratiques<\/strong><\/p><p>Les travaux pratiques repr\u00e9sentent plus de 50% du temps de formation.<br \/>La machine virtuelle sur laquelle vous allez mettre en \u0153uvre les diff\u00e9rents exercices vous est offerte avec son media de stockage afin que vous puissiez prolonger vos tests de d\u00e9veloppement sur un jeu de donn\u00e9es et un environnement qui vous seront devenus familiers.<\/p><p>\u00a0<\/p><\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-accordion-item\">\n\t\t\t\t\t<div id=\"elementor-tab-title-1695\" class=\"elementor-tab-title\" data-tab=\"5\" role=\"tab\" aria-controls=\"elementor-tab-content-1695\" aria-expanded=\"false\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon elementor-accordion-icon-left\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-closed\"><i class=\"fas fa-plus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-opened\"><i class=\"fas fa-minus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-accordion-title\" href=\"\">FORMATION ADMINISTRATION MongoDB <\/a>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-1695\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"5\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-1695\"><h2><strong>Objectifs de la formation Administration MongoDB\u00a0<\/strong><\/h2><p>MongoDB est une solution Open Source de gestion de bases de donn\u00e9es NoSQL orient\u00e9e document, capable de s\u2019installer sur de simples serveurs comme dans un contexte d\u2019architecture complexe r\u00e9partie.<br \/>Les objets manipul\u00e9s par une base MongoDB changent de nature (collections, documents, information au format JSON, etc.) et bien s\u00fbr les traitements associ\u00e9s \u00e9galement.<br \/><br \/>Concr\u00e8tement, \u00e0 l\u2019issue de cette formation d\u2019Administration MongoDB vous serez capable de :<\/p><ul><li>Comprendre les sp\u00e9cificit\u00e9s de l\u2019administration et le vocabulaire d\u2019une base MongoDB<\/li><li>Installer MongoDB<\/li><li>Comprendre la structure des donn\u00e9es dans une base MongoDB<\/li><li>Manipuler les donn\u00e9es de la base (CRUD)<\/li><li>Interfacer MongoDB avec des programmes tiers (Javascript, Python, etc.)<\/li><li>Savoir dialoguer avec Mongo en ligne de commande et via des scripts<\/li><li>Bien comprendre le m\u00e9canisme d\u2019indexation des donn\u00e9es<\/li><li>Mettre en \u0153uvre la r\u00e9plication de donn\u00e9es<\/li><li>Mettre en \u0153uvre le partitionnement des donn\u00e9es sur plusieurs serveurs (sharding)<\/li><li>Superviser le bon fonctionnement de MongoDB<\/li><li>Effectuer des sauvegardes et des restaurations<\/li><li>S\u00e9curiser l\u2019acc\u00e8s aux donn\u00e9es de MongoDB.<\/li><\/ul><h2><strong>\u00c0 qui s&#8217;adresse cette formation ?<\/strong><\/h2><p><strong>Public :<\/strong><\/p><p>Ce cours s&#8217;adresse aux chefs de projet, gestionnaires de bases de donn\u00e9es.<\/p><p><strong>Pr\u00e9requis :<\/strong><\/p><p>Pour suivre ce cours dans de bonnes conditions, il vous faut conna\u00eetre les principes des bases de donn\u00e9es, l\u2019administration en ligne de commande et, si possible, avoir des bases du langage JavaScript.<\/p><h2><strong>Contenu du cours Administration MongoDB\u00a0<\/strong><\/h2><ol><li><h4><strong>Introduction \u00e0 MongoDB<\/strong><\/h4><\/li><\/ol><p>La domination historique des bases de donn\u00e9es relationnelles<br \/>L\u2019apparition des bases NoSQL. Les diff\u00e9rents types de bases NoSQL<br \/>Pr\u00e9sentation de MongoDB, son positionnement, ses avantages<br \/>La structure de donn\u00e9es au sein de MongoDB : base de donn\u00e9es, collections, documents\u2026<br \/>Les formats JSON et BSON. Types de donn\u00e9es \u00e9l\u00e9mentaires et sp\u00e9ciaux<br \/>Exemples d\u2019utilisation de MongoDB<\/p><ol><li><h4><strong>Installation de MongoDB<\/strong><\/h4><\/li><\/ol><p>Plateformes support\u00e9es<br \/>Installations sous les diff\u00e9rentes distributions de Linux, lancement<br \/>Installation sous Windows, configuration, cr\u00e9ation de services, lancement<br \/>Pr\u00e9sentation des outils MongoDB<\/p><p><strong><em>Travaux Pratiques :\u00a0<\/em><\/strong><\/p><p><em>Installation de MongoDB, lancement du serveur, test de connexion<\/em><\/p><ol><li><h4><strong>L\u2019invite de commande (shell) Mongo<\/strong><\/h4><\/li><\/ol><p>Pr\u00e9sentation et lancement<br \/>Premi\u00e8res commandes et pages d\u2019aide<br \/>Script d\u2019initialisation et configuration de l\u2019invite de commande<br \/>Bases de donn\u00e9es, collections, documents, namespaces : gestion et r\u00e8gles de nommage<br \/>Les instructions CRUD : insertion, lecture, mise \u00e0 jour, suppression<\/p><p><strong><em>Travaux Pratiques :\u00a0<\/em><\/strong><\/p><p><em>Cr\u00e9er et manipuler des documents via le shell<\/em><\/p><ol><li><h4>\u00c9crire des scripts et des programmes pour MongoDB<\/h4><\/li><\/ol><p>Scripts JavaScript externes : diff\u00e9rences avec le shell et lancement<br \/>Stocker des fonctions JavaScript sur le serveur et appeler celles-ci<br \/>Utiliser les drivers pour manipuler les donn\u00e9es depuis des programmes externes<\/p><p><strong><em>Travaux Pratiques :\u00a0<\/em><\/strong><\/p><p><em>Manipuler des donn\u00e9es via des scripts et via le driver Python<\/em><\/p><ol><li><h4><strong>L\u2019indexation des donn\u00e9es<\/strong><\/h4><\/li><\/ol><p>Principes. Types et propri\u00e9t\u00e9s d\u2019index<br \/>Couverture de requ\u00eate et intersection d\u2019index<br \/>Strat\u00e9gies d\u2019indexation et explication de requ\u00eates<\/p><p><strong><em>Travaux Pratiques :\u00a0<\/em><\/strong><\/p><p><em>Mise en place d\u2019index. Observation du d\u00e9roulement des requ\u00eates<\/em><\/p><ol><li><h4><strong>La r\u00e9plication de donn\u00e9es<\/strong><\/h4><\/li><\/ol><p>Pr\u00e9sentation et int\u00e9r\u00eat<br \/>N\u0153uds ma\u00eetre et secondaires. R\u00e9plication des donn\u00e9es et bascule automatique en cas d\u2019incident<br \/>N\u0153uds secondaires : priorit\u00e9, n\u0153uds cach\u00e9s et diff\u00e9r\u00e9s<br \/>Proc\u00e9dure de mise en place de la r\u00e9plication<\/p><p><strong><em>Travaux Pratiques :\u00a0<\/em><\/strong><\/p><p><em>Mise en \u0153uvre de la r\u00e9plication de donn\u00e9es<\/em><\/p><ol><li><h4><strong>Le partitionnement de donn\u00e9es (sharding)<\/strong><\/h4><\/li><\/ol><p>Pr\u00e9sentation et int\u00e9r\u00eat<br \/>Le sharding avec MongoDB<br \/>R\u00e9partition automatique ou manuelle des donn\u00e9es<br \/>Proc\u00e9dure de mise en place du sharding<br \/>Le cas GridFS : stockage de fichiers lourds<\/p><p><strong><em>Travaux Pratiques :\u00a0<\/em><\/strong><\/p><p><em>Mise en \u0153uvre du partitionnement de donn\u00e9es<\/em><\/p><ol><li><h4><strong>Les moteurs de stockage des donn\u00e9es<\/strong><\/h4><\/li><\/ol><p>Le moteur WiredTiger : concurrence, journalisation, compression, usage m\u00e9moire\u2026<br \/>Le moteur MMAPv1 : journalisation, usage disque, usage m\u00e9moire&#8230;<br \/>Le moteur In-Memory : concurrence, usage m\u00e9moire, strat\u00e9gie de d\u00e9ploiement\u2026<br \/>Les moteurs de stockage tiers : RocksDB\u2026<\/p><p><strong><em>Travaux Pratiques :\u00a0<\/em><\/strong><\/p><p><em>Param\u00e9trage du moteur de stockage par serveur et par collection. Visualisation des impacts<\/em><\/p><ol><li><h4><strong>S\u00e9curiser son installation de MongoDB<\/strong><\/h4><\/li><\/ol><p>Cheklist de s\u00e9curit\u00e9<br \/>L\u2019authentification et les diff\u00e9rents m\u00e9canismes utilisables<br \/>Utilisateurs, r\u00f4les et privil\u00e8ges<br \/>Authentification entre n\u0153uds<br \/>Les fonctionnalit\u00e9s entreprise : cryptage, audit<\/p><p><strong><em>Travaux Pratiques :\u00a0<\/em><\/strong><\/p><p><em>Mise en \u0153uvre de l\u2019authentification sur un cluster de shard<\/em><\/p><ol><li><h4><strong>Administrer et superviser MongoDB<\/strong><\/h4><\/li><\/ol><p>Importer \/ exporter des donn\u00e9es (mongoexport, mongoimport)<br \/>Sauvegarder \/ restaurer : les diff\u00e9rentes strat\u00e9gies (mongodump, mongorestore, snapshot filesystem)<br \/>Superviser l\u2019ex\u00e9cution et int\u00e9grer des outils de supervision externes (ex : Nagios)<br \/>Les outils graphiques d\u2019administration<br \/>G\u00e9rer la journalisation<\/p><p><em>Travaux Pratiques :\u00a0<\/em><\/p><p><em>Importer \/ exporter des donn\u00e9es. Dump de donn\u00e9es, Superviser une base<\/em><\/p><p><span style=\"text-decoration: underline;\">Travaux Pratiques<\/span><\/p><p>De nombreux travaux pratiques \u00e0 chaque \u00e9tape facilitent l&#8217;assimimilation des notions enseign\u00e9es.<\/p><\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-accordion-item\">\n\t\t\t\t\t<div id=\"elementor-tab-title-1696\" class=\"elementor-tab-title\" data-tab=\"6\" role=\"tab\" aria-controls=\"elementor-tab-content-1696\" aria-expanded=\"false\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon elementor-accordion-icon-left\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-closed\"><i class=\"fas fa-plus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-opened\"><i class=\"fas fa-minus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-accordion-title\" href=\"\">FORMATION MongoDB OPTIMISATION<\/a>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-1696\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"6\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-1696\"><h2>Objectifs de la formation MongoDB Optimisation\u00a0<\/h2><p>Reconnue comme l&#8217;une des bases \u00ab NoSQL \u00bb les plus utilis\u00e9es aujourd\u2019hui, MongoDB permet de stocker de grands volumes de donn\u00e9es et de les interroger de mani\u00e8re \u00e0 la fois simple et efficace. Accessible par le plus grand nombre, il n&#8217;est pas n\u00e9cessaire de ma\u00eetriser un langage suppl\u00e9mentaire comme c\u2019est le cas avec les bases de donn\u00e9es relationnelles. Il existe en effet un grand nombre de pilotes offrant une API simple et intuitive.<br \/>Cette formation est organis\u00e9e sur deux axes : d\u2019une part savoir d\u00e9tecter les causes de sous performance et y rem\u00e9dier, d\u2019autre part faire face \u00e0 une mont\u00e9e en charge par r\u00e9partition de charge.<\/p><p>A l&#8217;issue de cette formation MongoDB, vous aurez les comp\u00e9tences et connaissances pour savoir mettre en place une architecture performante avec MongoDB<\/p><h2><strong>\u00c0 qui s&#8217;adresse cette formation ?<\/strong><\/h2><p><strong>Public :<\/strong><\/p><p>Cette formation MongoDB s&#8217;adresse aux administrateurs de base de donn\u00e9es.<\/p><p><strong>Pr\u00e9requis :<\/strong><\/p><p>Pour r\u00e9ussir cette formation MongoDB, il est demand\u00e9 de Ma\u00eetriser l&#8217;administration de MongoDB, en particulier le shell mongo et la r\u00e9plication.<\/p><h2><strong>Contenu du cours MongoDB Optimisation\u00a0<\/strong><\/h2><ol><li><h4><strong>Introduction et Rappel (Rapide)<\/strong><\/h4><\/li><\/ol><p>Pr\u00e9sentation<br \/>Pourquoi MongoDB ?<br \/>MongoDB en comparaison des bases relationnelles<\/p><ol><li><h4><strong>Optimisation de MongoDB<\/strong><\/h4><\/li><\/ol><p>Les outils mongotop et mongostat<br \/>Statistiques et profilage : les collections sp\u00e9cialis\u00e9es<br \/>Bonnes pratiques : param\u00e9trages disque, syst\u00e8me de fichiers, m\u00e9moire, swap<\/p><ol><li><h4><strong>Indexation dans MongoDB<\/strong><\/h4><\/li><\/ol><p>Principes et structures g\u00e9n\u00e9riques des index<br \/>Les diff\u00e9rents types d&#8217;index et leur restrictions d&#8217;utilisation : simple, composite, multi-cl\u00e9s, unique,creux<br \/>R\u00e8gles d&#8217;indexation<br \/>Fonctionnement de l&#8217;optimiseur<br \/>La commande explain et les hint<\/p><ol><li><h4><strong>Sharding (MongoDB)<\/strong><\/h4><\/li><\/ol><p>Performance et haute disponibilit\u00e9 : sharding et r\u00e9plication<br \/>Architecture : noeud de configuration, noeud mongod, noeud mongos<br \/>Concepts et impl\u00e9mentation : auto-sharding, replica set, sharding key, chunks<br \/>Installation d&#8217;un cluster \u00e0 partir d&#8217;une architecture existante<br \/>Choisir la cl\u00e9 de sharding<br \/>Contr\u00f4ler la r\u00e9partition des donn\u00e9es<br \/>Supervision d&#8217;un cluster<br \/>Administration : ajouter un shard, d\u00e9placer manuellement les donn\u00e9es<br \/>Probl\u00e8mes courants et bonnes pratiques<\/p><h4><strong>Travaux Pratiques<\/strong><\/h4><p>Les chapitres \u00abIndexation\u00bb et \u00abSharding\u00bb se concluent chacun par des travaux pratiques utilisant le savoir acquis lors du chapitre \u00abOptimisation\u00bb.<\/p><\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-accordion-item\">\n\t\t\t\t\t<div id=\"elementor-tab-title-1697\" class=\"elementor-tab-title\" data-tab=\"7\" role=\"tab\" aria-controls=\"elementor-tab-content-1697\" aria-expanded=\"false\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon elementor-accordion-icon-left\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-closed\"><i class=\"fas fa-plus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-opened\"><i class=\"fas fa-minus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-accordion-title\" href=\"\">FORMATION REDIS PRISE EN MAIN<\/a>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-1697\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"7\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-1697\"><h2>Objectifs de la formation Redis\u00a0<\/h2><p>B\u00e9n\u00e9ficiez des avantages d&#8217;une base de donn\u00e9es m\u00e9moire pour booster la performance de vos applications hautement transactionnelles. Cette formation vous permettra d&#8217;appr\u00e9hender les contraintes techniques de l&#8217;utilisation d&#8217;une base de donn\u00e9es non relationnelle, et de mettre en \u0153uvre sur une premi\u00e8re application les principes de Redis. Cette formation Redis vous donnera les connaissances et l&#8217;exp\u00e9rimentation pratique pour mettre en oeuvre Redis et l\u2019exploiter au quotidien.<\/p><h2><strong>\u00c0 qui s&#8217;adresse cette formation ?<\/strong><\/h2><p><strong>Public :<\/strong><\/p><p>Ce cours s&#8217;adresse principalement aux d\u00e9veloppeurs.<\/p><p><strong>Pr\u00e9requis :<\/strong><\/p><p>Bonnes connaissances en programmation.<\/p><h2><strong>Contenu du cours Redis\u00a0<\/strong><\/h2><ol><li><h4><strong>Introduction \u00e0 Redis<\/strong><\/h4><\/li><\/ol><p>Redis, cache en m\u00e9moire<br \/>Positionnement vis \u00e0 vis des autres moteurs NoSql<br \/>Quand utiliser Redis, quand ne pas l\u2019utiliser<br \/>Les grandes r\u00e9f\u00e9rences de Redis<\/p><ol><li><h4><strong>Fonctionnalit\u00e9s de Redis<\/strong><\/h4><\/li><\/ol><p>Protocole de communication<br \/>Format des donn\u00e9es<br \/>Commandes essentielles<br \/>Network latency et groupement de commandes<br \/>Gestion des transactionns et op\u00e9rations atomiques<br \/>Server-side scripting<br \/>Organisation des donn\u00e9es<br \/>Probl\u00e9matique du requ\u00e9tage complexe<\/p><ol><li><h4><strong>D\u00e9velopper avec Redis<\/strong><\/h4><\/li><\/ol><p>Encoding<br \/>Clients permettant de d\u00e9velopper avec Redis<br \/>Utiliser Redis en cache d\u2019un RDBMS classique<\/p><ol><li><h4><strong>Administrer Redis<\/strong><\/h4><\/li><\/ol><p>Persistance des bases sur disque<br \/>R\u00e9plication des bases<br \/>Monitoring de Redis<br \/>Sauvegarde \/ restauration<br \/>Gestion de l\u2019authentification<\/p><\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-accordion-item\">\n\t\t\t\t\t<div id=\"elementor-tab-title-1698\" class=\"elementor-tab-title\" data-tab=\"8\" role=\"tab\" aria-controls=\"elementor-tab-content-1698\" aria-expanded=\"false\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon elementor-accordion-icon-left\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-closed\"><i class=\"fas fa-plus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-opened\"><i class=\"fas fa-minus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-accordion-title\" href=\"\">FORMATION CASSANDRA<\/a>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-1698\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"8\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-1698\"><h2>Description de la formation Cassandra\u00a0<\/h2><p>Cassandra est une base de donn\u00e9es distribu\u00e9e NoSQL connue pour ses capacit\u00e9s \u00e0 savoir g\u00e9rer sans d\u00e9faillance de tr\u00e8s grosses quantit\u00e9s de donn\u00e9es structur\u00e9es. Cette formation vous donnera toutes les connaissances n\u00e9cessaires et l&#8217;exp\u00e9rimentation pratique pour mettre en \u0153uvre et administrer Apache Cassandra au quotidien.<\/p><p>Cette formation vous apporte les bases pour mettre en \u0153uvre et administrer Apache Cassandra au quotidien.<\/p><h2>Objectifs\u00a0<\/h2><p><strong><u>Objectifs Op\u00e9rationnels:<\/u><\/strong><\/p><p>Administrer Apache Cassandra au quotidien.<\/p><p><strong><u>Objectifs P\u00e9dagogiques:<\/u><\/strong><\/p><ul><li>Maitriser les fonctionnalit\u00e9s principales de Cassandra<\/li><li>Savoir installer et configurer Cassandra<\/li><li>Connaitre la notion de grappe au sein de la base de donn\u00e9es<\/li><\/ul><h2>\u00c0 qui s&#8217;adresse cette formation ?<\/h2><p><strong>Public :<\/strong><\/p><p>Cette formation s&#8217;adresse aux Chefs de projet, gestionnaires de bases de donn\u00e9es, et administrateurs qui souhaitent utiliser Apache Cassandra.<\/p><p><strong>Pr\u00e9requis :<\/strong><\/p><p>Connaissances g\u00e9n\u00e9rales sur les bases de donn\u00e9es.<\/p><h2><strong>Contenu du cours Cassandra\u00a0<\/strong><\/h2><ol><li><h4><strong>Cassandra les fonctionnalit\u00e9s principales<\/strong><\/h4><\/li><\/ol><p>Pr\u00e9sentation de l&#8217;historique et des fonctionnalit\u00e9s de Cassandra.<br \/>Introduction \u00e0 la licence.<br \/>Etude du format des donn\u00e9es et &#8220;key-value&#8221;.<br \/>Traitement de volumes importants et haute disponibilit\u00e9.<br \/>Pr\u00e9sentation d&#8217;un syst\u00e8me r\u00e9parti de base de donn\u00e9es.<\/p><ol><li><h4><strong>Installation et configuration de Cassandra<\/strong><\/h4><\/li><\/ol><p>Rappel sur les pr\u00e9requis.<br \/>Pr\u00e9sentation des plate-formes support\u00e9es.<br \/>Etude du fichier de configuration: conf\/cassandra.yaml .<br \/>R\u00e9pertoire de travail, de stockage des donn\u00e9es, gestion de la m\u00e9moire.<br \/>D\u00e9marrage d&#8217;un noeud et test de l&#8217;interface cliente cqlsh.<\/p><ol><li><h4><strong>Le CQL<\/strong><\/h4><\/li><\/ol><p>Maitriser les commandes de base: connexion au syst\u00e8me de base de donn\u00e9es, cr\u00e9ation de colonnes, insertion, modification recherche.<br \/>Le CQL: Cassandra Query Language.<br \/>Ex\u00e9cution de scripts.<br \/>Comment \u00e9crire des requ\u00eates?<br \/>Etude des diff\u00e9rentes approches.<\/p><ol><li><h4><strong>Gestion de la grappe<\/strong><\/h4><\/li><\/ol><p>Initiation au principe de base.<br \/>Pr\u00e9paration du premier noeud : adresse d&#8217;\u00e9coute.<br \/>Configuration de nouveaux noeuds.<br \/>Notion de bootstrapping et de token.<br \/>Param\u00e8tres listen_address et rpc_address.<br \/>R\u00e9plication : topologie du r\u00e9seau et EndpointSnitch.<br \/>Strat\u00e9gie de r\u00e9plication.<br \/>Ajout de noeuds, suppression.<br \/>Cassandra dans un cloud.<br \/>Mise en oeuvre avec OpenStack.<\/p><ol><li><h4><strong>Supervision<\/strong><\/h4><\/li><\/ol><p>OpsCenter: installation, lancement.<br \/>Utilisation de base.<br \/>Supervision avec nodetool cfstats, ou export JMX vers des outils de supervision comme Nagios.<\/p><ol><li><h4>Exploitation de Cassandra<\/h4><\/li><\/ol><p>Maitriser les notions de sauvegarde.<br \/>Import\/export au format JSON.<\/p><ol><li><h4><strong>Support Hadoop<\/strong><\/h4><\/li><\/ol><p>Pr\u00e9sentation du principe de MapReduce.<br \/>Impl\u00e9mentation Hadoop.<br \/>Maitriser la mise en oeuvre depuis Cassandra.<\/p><ol><li><h4><strong>Support Spark<\/strong><\/h4><\/li><\/ol><p>Description rapide de l&#8217;architecture spark.<br \/>Mise en oeuvre depuis Cassandra.<br \/>Execution de travaux Spark s&#8217;appuyant sur une grappe Cassandra.<\/p><p><strong>Travaux Pratiques<\/strong><\/p><p>De nombreux travaux partiques sont propos\u00e9s tout au long de la formation<\/p><\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-accordion-item\">\n\t\t\t\t\t<div id=\"elementor-tab-title-1699\" class=\"elementor-tab-title\" data-tab=\"9\" role=\"tab\" aria-controls=\"elementor-tab-content-1699\" aria-expanded=\"false\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon elementor-accordion-icon-left\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-closed\"><i class=\"fas fa-plus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-opened\"><i class=\"fas fa-minus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-accordion-title\" href=\"\">FORMATION CASSANDRA AVANCE<\/a>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-1699\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"9\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-1699\"><h2><strong>Description de la formation Cassandra avanc\u00e9\u00a0<\/strong><\/h2><p><strong>Cassandra<\/strong>\u00a0est une base de donn\u00e9es distribu\u00e9e NoSQL connue pour ses capacit\u00e9s \u00e0 savoir g\u00e9rer sans d\u00e9faillance de tr\u00e8s grosses quantit\u00e9s de donn\u00e9es structur\u00e9es.<\/p><p>Cette formation explore les fonctionnalit\u00e9s avanc\u00e9es de Cassandra pour vous permettre d&#8217;en approfondir votre niveau de ma\u00eetrise : mise en place d&#8217;un cluster, communication multi-DC, tuning des performances, s\u00e9curisation&#8230;<\/p><h2><strong>Objectifs\u00a0<\/strong><\/h2><p><strong><u>Objectifs Op\u00e9rationnels<\/u><\/strong><strong>\u00a0:<\/strong><\/p><p>Ma\u00eetriser les aspects avanc\u00e9s de la base de donn\u00e9es NoSQL Cassandra.<\/p><p><strong><u>Objectifs P\u00e9dagogiques:<\/u><\/strong><\/p><ul><li>Savoir mettre en place un cluster Cassandra<\/li><li>Conna\u00eetre le cycle de vie d&#8217;une lecture\/\u00e9criture sur Cassandra<\/li><li>Ma\u00eetriser les notions de backup, de restauration et de mouvement des donn\u00e9es<\/li><li>Savoir comment superviser et d\u00e9panner Cassandra<\/li><li>Conna\u00eetre l&#8217;aspect s\u00e9curit\u00e9 de Cassandra<\/li><\/ul><h2>\u00c0 qui s&#8217;adresse cette formation ?<\/h2><p><strong>Public :<\/strong><\/p><p>Ce cours Cassandra avanc\u00e9 s&#8217;adresse aux chefs de projet, gestionnaires de bases de donn\u00e9es et administrateurs qui souhaitent ma\u00eetriser les aspects avanc\u00e9s d&#8217;Apache Cassandra.<\/p><p><strong>Pr\u00e9requis :<\/strong><\/p><p>Pour suivre cette formation Cassandra avanc\u00e9 dans de bonnes conditions, il est conseill\u00e9 d&#8217;avoir suivi la\u00a0<a href=\"https:\/\/www.plb.fr\/formation\/oracle\/formation-cassandra,5-19148.php\">formation Cassandra (r\u00e9f.OCAS)<\/a>\u00a0ou d&#8217;en poss\u00e9der les connaissances \u00e9quivalentes.<\/p><h2><strong>Contenu du cours Cassandra avanc\u00e9\u00a0<\/strong><\/h2><ol><li><h4><strong>Rappel de l\u2019architecture Cassandra<\/strong><\/h4><\/li><\/ol><p>Cluster \/ Node \/ Datacenter \/ Rack<br \/>R\u00e9plication \/ Protocole Gossip<br \/>Snitches<br \/>Noeuds Seeds<br \/>Memtables, SSTables et CommitLogs<br \/>Niveau de consistance<br \/>Hinted Handoff<\/p><ol><li><h4><strong>Query by Design<\/strong><\/h4><\/li><\/ol><p>Data-Driven versus Query-Driver<br \/>Liens entre tables et int\u00e9grit\u00e9 r\u00e9f\u00e9rentielle<br \/>Duplication de donn\u00e9es<br \/>\u00c9tapes de conception d\u2019un keyspace<\/p><ol><li><h4>Mise en place d\u2019un cluster Cassandra<\/h4><\/li><\/ol><p>Choix de m\u00e9moire, CPU<br \/>Contraintes r\u00e9seau<br \/>Choix du stockage<br \/>Configuration du cluster (Datacenter, Rack et autres)<br \/>Gestion du cycle de vie du cluster<\/p><ol><li><h4><strong>Cycle de vie d\u2019une lecture\/\u00e9criture sur Cassandra<\/strong><\/h4><\/li><\/ol><p>M\u00e9moire Off-Heap \/ JVM-Heap et disque<br \/>Comprendre le flush, memtable et commitLog<br \/>Chemin d\u2019\u00e9criture des donn\u00e9es<br \/>Chemin de lecture des donn\u00e9es<br \/>Le Read-repair, Merkel Tree et Anti-Entropy<\/p><ol><li><h4><strong>Communication multi-DC sur Cassandra<\/strong><\/h4><\/li><\/ol><p>Raisons de choix d\u2019une architecture multi-DC<br \/>Communication synchrone vs asynchrone entre DCs<br \/>Gestion de la d\u00e9faillance d\u2019un DC<br \/>Utilisation des Racks au lieu de Datacenter<\/p><ol><li><h4><strong>Backup, restauration et mouvement des donn\u00e9es<\/strong><\/h4><\/li><\/ol><p>Backup incr\u00e9mental et full<br \/>Restauration des donn\u00e9es \u00e0 partir d\u2019un Snapshot<br \/>Restauration de donn\u00e9es avec sstableLoader<br \/>Import\/Export des donn\u00e9es en masse<\/p><ol><li><h4><strong>Supervision et troubleshooting<\/strong><\/h4><\/li><\/ol><p>Gestion des n\u0153uds d\u2019un cluster<br \/>Monitoring avec l\u2019outil nodetool<br \/>Configuration et exploitation des logs<\/p><ol><li><h4><strong>Tuning des performances de Cassandra<\/strong><\/h4><\/li><\/ol><p>Utilisation de Tracing pour analyser les performances<br \/>Tracer les lectures et les \u00e9critures<br \/>Tuning des Bloom Filtres<br \/>Cache de donn\u00e9es<br \/>Param\u00e8tres globaux de gestion de cache<br \/>Tests de mont\u00e9e en charge avec cassandra-stress<\/p><ol><li><h4><strong>Strat\u00e9gies de compaction<\/strong><\/h4><\/li><\/ol><p>SizeTieredCompactionStrategy<br \/>LeveledCompactionStrategy<br \/>TimeWindowCompactionStrategy<br \/>Tuning de la JVM<\/p><ol><li><h4><strong>S\u00e9curisation de Cassandra<\/strong><\/h4><\/li><\/ol><p>Configuration Authentification<br \/>Gestion des r\u00f4les<br \/>Cryptage de la communication dans Cassandra avec SSL<br \/>Activation du cryptage inter-n\u0153uds<br \/>Activation du chiffrement client<\/p><h2>\u00a0<\/h2><\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Nos consultants formateurs tous fortement impliqu\u00e9s sur les bases NoSQL, ils suivent activement les nouveaut\u00e9s sur ce sujet afin de mettre \u00e0 jour nos programmes de cours pratiquement en temps r\u00e9el.Ils ont con\u00e7u les formations NoSQL, les supports de cours et les travaux pratiques qui accompagnent chaque formation. Ces programmes sont r\u00e9vis\u00e9s plusieurs fois par [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-12455","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/705consulting.com\/index.php\/wp-json\/wp\/v2\/pages\/12455","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/705consulting.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/705consulting.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/705consulting.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/705consulting.com\/index.php\/wp-json\/wp\/v2\/comments?post=12455"}],"version-history":[{"count":29,"href":"https:\/\/705consulting.com\/index.php\/wp-json\/wp\/v2\/pages\/12455\/revisions"}],"predecessor-version":[{"id":12794,"href":"https:\/\/705consulting.com\/index.php\/wp-json\/wp\/v2\/pages\/12455\/revisions\/12794"}],"wp:attachment":[{"href":"https:\/\/705consulting.com\/index.php\/wp-json\/wp\/v2\/media?parent=12455"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}