From ae563d781af3faadcb908b04613b860427edcdf1 Mon Sep 17 00:00:00 2001 From: "Glenn Y. Rolland" Date: Mon, 17 Apr 2023 19:14:08 +0200 Subject: [PATCH] doc: Add samples formats & prompts & config --- docs/config.md | 38 ++++++++++++++ docs/prompts.md | 91 +++++++++++++++++++++++++++++++++ docs/samples/base.json | 9 ++++ docs/samples/chapter.01.json | 9 ++++ docs/samples/section.01.01.json | 10 ++++ 5 files changed, 157 insertions(+) create mode 100644 docs/config.md create mode 100644 docs/prompts.md create mode 100644 docs/samples/base.json create mode 100644 docs/samples/chapter.01.json create mode 100644 docs/samples/section.01.01.json diff --git a/docs/config.md b/docs/config.md new file mode 100644 index 0000000..41a589e --- /dev/null +++ b/docs/config.md @@ -0,0 +1,38 @@ + +## Usage + +Préparer un fichier `docmachine.yaml`: + + personae: + - TECHY + - GEOPOLY + + context: | + some text here + + audience: | + some text here + + prerequisites: | + some text here + + goals: | + some text here + + pattern: "{{chapter.index}}.{{section.index}}.{{chapter.slug}}.json" + + +Run docmachine to build the main toc + + docmachine plan -c docmachine.yaml --level 0 --output . + + +Run docmachine to build the toc for all chapters + + docmachine plan -c docmachine.yaml --level 1 --output . + + +Run docmachine to build the toc (if missing) + + docmachine plan -c docmachine.yaml --level 0 --output . + diff --git a/docs/prompts.md b/docs/prompts.md new file mode 100644 index 0000000..3de3bc6 --- /dev/null +++ b/docs/prompts.md @@ -0,0 +1,91 @@ + +[TECHY is a technology expert with more than 20 years of experience. TECHY are specialized in systems, networks and infrastructures. They understand technology strength, opportunities, weaknesses and threats). TECHY focuses only on the technical and technological aspects of things. TECHY is methodical and analytical in his answers. TECHY admits his incompetence on other topics. TECHY behaves like a blend of Linus Torvalds, Marc Andreessen, Paul Graham, Bruce Schneier, Bram Cohen, Philip Zimmermann, Jon Callas, Derek Atkins, Adam Back, Theo de Raadt, Nick Szabo, Runa Sandvik, David Chaum, Richard Matthew Stallman, Alan Turing, Ada Lovelace. In all messages, you will start your reply by "TECHY:" and then you will answer to the questions or to the prompt like if TECHY was answering himself.] + +## Contexte + +Une formation d'excellente qualité, faite une université ou une ecole prestigieuse comme l'ENS Ulm, l'école Centrale, l'Ecole polytechnique, le MIT, l'université de Berkeley. + +## Public concerné + +* Administrateurs de bases de données +* Administrateurs de systèmes +* Professionnels des opérations et DevOps +* et toute personne souhaitant maitriser parfaitement MongoDB + +## Prérequis + +* Avoir une connaissance générale des systèmes d'informations, systèmes et réseaux IP. +* Avoir de bonnes connaissance Linux +* Familiarité avec les concepts basiques et intermédiaires de MongoDB +* Plusieurs années d'expérience sur l'outil MongoDB + +## Objectifs + +* Connaître la manipulation et l'interrogation des données à un niveau avancé +* Connaître les bonnes pratiques d'optimisation des performances +* Comprendre l'indexation avancée et les collections spéciales +* Travailler sur la performance et la haute disponibilité avec le sharding et la réplication +* Savoir détecter les causes de sous-performance et y remédier +* Faire face à une montée en charge avec une répartition de charge. +* Créer une stratégie de sauvegarde + +## Programme de la formation + +### Manipulation avancée de données + +* Ajustement du Shell Mongo +* Manipulation efficace des opérations CRUD (insertions, requêtes, mises à jour, suppressions) +* Commandes d'administration utiles + +### Optimisation des performances + +* Outils de supervision intégrés : mongotop, mongostat +* Analyser la mémoire et les performances des E/S +* MongoDB Cloud Manager et Munin +* Identifier les requêtes sous-optimales. Utiliser le profileur de requêtes. +* Moteurs de stockage : MMAPv1 et WiredTiger +* Les Explainable objects + +### Indexation et collections spéciales + +* Gestion et fonctionnement des index +* Index des champs uniques et composés +* Index des tableaux et des sous-documents +* Index géo-spatiaux +* Collections plafonnées, indexs TTL et curseurs + +### Agrégation + +* Agrégation à finalité unique +* Pipelines d'agrégation +* Map-reduce + +### Réplication + +* Réplication asynchrone dans MongoDB +* Mise en place et entretien d'un replica set +* Utilisation de "write concern" et "read preference" +* Gérer les échecs de réplication + +### Sharding + +* Sharding automatique +* Mise en place d'un cluster de shards MongoDB +* Choisir judicieusement une shard key +* Administration avancée d'un cluster de shards +* Gérer un cluster de shards déséquilibré +* Gérer les chunks (scission, fusion, migration) + +### Sécurité + +* Authentification et autorisation dans les replica sets et les clusters de shards +* Gestion des privilèges et des rôles personnalisés +* Recommandations pour un déploiement sûr + +### Plans de sauvegarde et de restauration + +* Stratégies basées sur le système de fichiers +* Utilisation mongodump et mongorestore +* Récupération de type point-in-time + + diff --git a/docs/samples/base.json b/docs/samples/base.json new file mode 100644 index 0000000..8de85c8 --- /dev/null +++ b/docs/samples/base.json @@ -0,0 +1,9 @@ +{ + "type": "main-element", + "title": "" + "chapters": [ + "EXAMPLE CHAPTER TITLE...", + "EXAMPLE CHAPTER TITLE...", + "EXAMPLE CHAPTER TITLE..." + ] +} diff --git a/docs/samples/chapter.01.json b/docs/samples/chapter.01.json new file mode 100644 index 0000000..66b03d6 --- /dev/null +++ b/docs/samples/chapter.01.json @@ -0,0 +1,9 @@ +{ + "type": "chapter", + "title": "" + "sections": [ + "EXAMPLE SECTION TITLE...", + "EXAMPLE SECTION TITLE...", + "EXAMPLE SECTION TITLE..." + ] +} diff --git a/docs/samples/section.01.01.json b/docs/samples/section.01.01.json new file mode 100644 index 0000000..461e419 --- /dev/null +++ b/docs/samples/section.01.01.json @@ -0,0 +1,10 @@ +{ + "type": "section", + "title": "" + "subsections": [ + "EXAMPLE SUBSECTION TITLE...", + "EXAMPLE SUBSECTION TITLE...", + "EXAMPLE SUBSECTION TITLE..." + ] +} +