Les cahiers de science des données, un format de document populaire utilisé pour publier du code, des résultats et des explications sous une forme lisible et exécutable, ont innové en combinant un récit continu avec des éléments et des affichages interactifs. Le résultat a été une nouvelle façon de capturer et de transférer des connaissances sur le processus de découverte d’informations. En étudiant pourquoi les blocs-notes de science des données ont si bien fonctionné, nous pouvons mieux comprendre les domaines connexes présentant des caractéristiques similaires, tels que les opérations technologiques (TechOps).
À première vue, de nombreux attributs des blocs-notes de science des données s’appliquent également à TechOps. Cependant, le data scientist et la cohorte TechOps ont des objectifs différents. Un data scientist s’intéresse aux résultats variables en fonction des éléments changeants au sein des requêtes. Une équipe TechOps responsable des systèmes opérationnels complexes recherche des variables et des modèles, cherche à comprendre la cause première et prend des mesures correctives. Les cahiers de science des données sont propices à l’enseignement et sont faciles à changer. Cependant, dans un contexte d’opérations de production, les choses doivent être répétables plutôt que variables. Pour s’aligner sur les différents besoins des utilisateurs dans TechOps, le concept de bloc-notes s’est transformé en runbooks.
Comment les cahiers et les runbooks sont similaires
Les blocs-notes permettent aux utilisateurs de créer et de partager des documents qui combinent du code en direct, des équations, du texte enrichi, des visualisations, du texte narratif, des images, des vidéos, des tracés, des widgets et des interfaces utilisateur graphiques dans un seul document. Depuis le premier bloc-notes il y a plus de 30 ans, les interfaces ont connu une croissance exponentielle, permettant des cas d’utilisation allant du nettoyage et de la transformation des données à la simulation numérique, la modélisation statistique et la visualisation des données.
La façon dont les ordinateurs portables ont été utilisés peut être adaptée pour s’adapter aux environnements d’exploitation complexes dans lesquels travaillent les équipes TechOps. Le mélange d’un récit avec du code en direct et des résultats de requêtes et d’analyses crée un document vivant qui peut refléter ce qui se passe en temps réel et créer une archive. Bon nombre des mêmes éléments du modèle de cahier de science des données peuvent être utilisés pour enregistrer une activité ad hoc et préserver les connaissances.
La beauté des cahiers réside dans la plate-forme intégrée de code en direct, de narration et de tout le reste nécessaire pour démontrer les résultats ou les découvertes. Il s’agit d’un modèle particulièrement puissant qui s’applique également aux pratiques TechOps modernes dans lesquelles un runbook ou une réponse à un incident peut couvrir de nombreux systèmes différents.
Dans TechOps, l’incorporation d’un récit riche et interactif augmente la probabilité que le processus puisse être dupliqué plutôt que créé à partir de zéro. Il permet également aux équipes d’exploitation de rechercher les causes profondes possibles, en passant au crible un riche ensemble d’informations, en utilisant des combinaisons de « symptômes déclencheurs » qui ont précipité un événement.
Comment les capacités des ordinateurs portables prennent vie dans TechOps
Les notebooks utilisés en science des données et les runbooks utilisés dans TechOps partagent le même ensemble de principes qui sont exprimés différemment dans les implémentations.
Centralisation et accès aux différentes ressources : Hébergés dans un navigateur (plutôt que sur un ordinateur local), les notebooks permettent aux data scientists d’accéder aux données de n’importe où et d’effectuer des traitements plus complexes. Pour les équipes TechOps, en codifiant les processus via des runbooks, les données sont centralisées et accessibles aux personnes de l’ensemble des équipes et des organisations. Cela garantit que toutes les parties prenantes comprennent ce qui se passe, en particulier quelles données ont été analysées.
Intégration et automatisation des données plus faciles : les organisations utilisent souvent divers systèmes analytiques, bases de données opérationnelles et formats de stockage de données, tels que le stockage d’objets nécessitant des informations d’identification et des autorisations. Les ordinateurs portables peuvent diriger les connexions vers différentes sources de données et ne nécessitent pas d’accès ou d’approbations utilisateur supplémentaires. Dans TechOps, l’automatisation de l’intégration des données crée des affichages visuels et des analyses qui aident les équipes à comprendre ce qui se passe dans divers systèmes. Dans les deux cas, il faut avoir des connecteurs vers les données dans tous les systèmes sous-jacents.
Prise en charge des itérations rapides : les ordinateurs portables permettent un retour rapide dans la boucle test-code-refactor. Ils ont l’attrait supplémentaire où les cellules peuvent être exécutées dans n’importe quel ordre. Le modèle itératif est utile pour capturer ce qui se passe lors d’une réponse à un incident où il peut y avoir de nombreux faux départs et tester des hypothèses avant que la bonne réponse ne soit trouvée. Le runbook créé à partir de ce processus peut ensuite être modifié et transformé en un document standard.
Partageable et collaboratif : les notebooks sont une plate-forme d’édition interactive qui permet aux utilisateurs de trouver et d’utiliser du code que d’autres membres de la communauté de la science des données ont partagé publiquement. Cette collaboration renforce la reproductibilité, où le rapport final peut être réexécuté avec différentes hypothèses par toute personne ayant accès au cahier. Dans TechOps, l’utilisation de runbooks permet la création d’une base de connaissances vivante qui émerge du travail effectué plutôt que d’être assemblée à partir de notes et d’autres artefacts par la suite. Lorsque les équipes TechOps utilisent des outils collaboratifs, elles peuvent modifier et annoter des processus documentés en temps réel, en capturant des informations contextuelles qui profiteront à un coéquipier confronté à un événement similaire.
Le rôle de l’automatisation : l’introduction d’un niveau d’automatisation dans les cahiers allège le fardeau de la documentation et de la publication des résultats des expériences informatiques, ce qui permet aux chercheurs de se concentrer sur des tâches plus importantes. Il fournit des interfaces utilisateur pour annoter la provenance capturée avec des notes, puis effectuer des requêtes. Dans TechOps, lorsque l’automatisation et l’apprentissage automatique sont appliqués, cela peut aider à identifier des modèles et à rechercher des problèmes potentiels avant qu’ils ne surviennent en explorant les relations entre des choses apparemment non connectées.
Comment les Runbooks ont été adaptés pour TechOps
L’utilisation de notebooks dans le domaine de la science des données fournit un riche bassin d’expérience dont les TechOps peuvent bénéficier. Dans les deux environnements, les cohortes principales, qu’il s’agisse de chercheurs et de scientifiques des données ou d’ingénieurs et de techniciens, s’appuient sur les principes de partage des connaissances, de collaboration et de documentation interactive. Les blocs-notes et les runbooks diffèrent par la capacité du runbook à être produit, ils sont donc reproductibles, compréhensibles, auditables et transparents.
Répétable
Les notebooks et les runbooks combinent tous deux la documentation avec le code de manière transparente. Cependant, les cahiers sont ancrés dans le milieu universitaire – ils mélangent la documentation avec des instructions que les gens doivent suivre et explorer. Ce qui est fondamentalement différent, c’est qu’ils ne sont pas reproductibles.
Avec le bloc-notes, il n’y a aucune visibilité sur l’état derrière le bloc-notes. Ad hoc, quelqu’un peut ajouter une ligne qui définit une variable, faisant en sorte que le bloc-notes se comporte différemment à l’avenir. Bien que cet attribut soit essentiel pour une itération rapide dans une salle de classe, les équipes TechOps ont besoin de tâches répétables qui permettent la cohérence et la précision, que ce soit dans une tâche quotidienne ou sur appel après les heures.
Compréhensible
Contrairement aux blocs-notes, les runbooks permettent la gestion des versions, ce qui permet aux utilisateurs d’avoir un ensemble d’étapes fixes et compréhensibles prêtes à l’emploi. Par conséquent, les utilisateurs peuvent choisir la version à déployer et à utiliser en production. Une fois que ce runbook est déployé, il ne peut pas être modifié en dessous ; l’état est compris.
Auditable
Bien que les blocs-notes ne soient pas conçus pour être audités, les runbooks TechOps fournissent une piste d’audit complète grâce à la documentation automatique des actions humaines et machine. Cette piste d’audit identifie clairement les actions automatisées et les actions humaines liées à l’identité d’une personne. Si l’une des étapes suivies comporte une erreur, la condition d’erreur est détectable et documentée.
Transparent
Les cahiers de science des données sont conçus pour être adaptables, comme point de départ pour faire un travail que d’autres ont fait auparavant mais qui peut être fait d’une manière différente à chaque fois. Les runbooks sont intentionnellement conçus pour permettre l’exécution prévisible d’un processus bien défini qui est reproductible, compréhensible et auditable au fur et à mesure qu’ils se déroulent. Les runbooks incluent la notion de chaînes d’action, qui sont des menus d’automatisation qui peuvent s’exécuter en fonction de l’évaluation par l’utilisateur de ce qui doit être fait. Par exemple, un utilisateur peut avoir plusieurs boutons qui exécutent diverses chaînes d’action automatisées de réponses. Cependant, la seule façon dont ces chaînes d’action peuvent communiquer entre elles est de produire quelque chose de visible pour l’utilisateur ou d’un système d’enregistrement, tel que l’écriture d’un message de mise à jour sur le ticket afin que ce qui s’est passé soit toujours visible, transparent et audité. Les futures parties du runbook peuvent utiliser les informations contenues dans le ticket pour savoir ce qui s’est passé.
Les runbooks passent à un nouveau niveau
Les runbooks utilisent les meilleurs attributs des notebooks (itération rapide et codage en ligne) et les rendent « productibles » en s’appuyant sur les capacités nécessaires dans des environnements opérationnels complexes. Bien que les cahiers de science des données permettent aux utilisateurs d’avoir une automatisation, celle-ci n’est pas nécessairement reproductible, compréhensible, auditable ou transparente.
Les capacités critiques du runbook incluent la gestion des versions, le contrôle des modifications, la documentation automatique des événements, la capacité à prendre en charge des ensembles d’actions et des chaînes d’actions reproductibles et compréhensibles qui rapportent et saisissent des données dans d’autres systèmes sur les événements. En combinant les meilleures qualités des notebooks avec les nouveaux attributs d’un runbook, vous obtenez un runbook parfaitement adapté aux environnements opérationnels complexes.