L’essor des DataOps : gouvernance et agilité avec TrueDataOps

L’essor des DataOps : gouvernance et agilité avec TrueDataOps

La vitesse du changement s’accélère. Le rythme de changement que connaissent les entreprises est tout simplement stupéfiant. Comme de nombreuses organisations l’ont vécu pendant la pandémie, en particulier dans leur chaîne d’approvisionnement, la nécessité pour l’environnement de données de pouvoir livrer plus rapidement est désormais mission critique pour tous!

Nous avons besoin de meilleures données, mais à un rythme beaucoup plus rapide qu’auparavant. Les entreprises ont besoin que leurs équipes de données deviennent Suite répondre à l’évolution des demandes de données.

Cela signifie qu’ils ont besoin agilité.

Mais ils doivent toujours fournir des données que l’entreprise peut confiance et prendre des décisions sur.

Cela signifie qu’ils ont besoin gouvernance.

Nous connaissons tous les demandes d’acteurs anxieux qui veulent tout à présent (enfin, vraiment… hier !). Ils ont besoin que les équipes de données soient agiles avec les données, tout comme nous sommes agiles dans le développement de logiciels.

Mais nos équipes de données sont souvent guindées.

Ils sont submergés par de nouvelles demandes et d’énormes arriérés qui ne cessent de changer. Tout dans le monde des données est encore très manuel, de la construction de la base de données à l’ingénierie des charges et des transformations, en passant par tous les tests. Qu’en est-il de la gestion des environnements dev/test/prod ? Oublie ça. Tout est manuel et probablement même pas près d’être synchronisé. Cela signifie que la mise en œuvre d’un nouveau changement de production avec des tests appropriés peut prendre des semaines.

Ce n’est pas agile, d’autant plus que le temps d’une équipe de données est souvent détourné pour d’« autres » travaux.

Personne ne fait confiance aux données et tout cela prend trop de temps.

Malgré des investissements massifs dans la technologie et les ressources humaines (et le consensus selon lequel les données sont l’atout stratégique clé d’une entreprise), un récent Étude d’examen de la gestion du MIT Sloan ont montré que seuls 9 % des cadres ont toujours confiance dans l’exactitude de leurs données et que seuls 6 % pensent que leurs données sont complètes.

Ceux-ci sont Majeur défis nous empêcher si nous voulons construire des organisations axées sur les données.

Nous devons résoudre ce problème.

Pourquoi nous avons besoin de DataOps

Snowflake assure la gouvernance et la sécurité, et ce sont les principales exigences de nos clients. Mais l’agilité est également essentielle. Ils doivent être en mesure de répondre aux besoins de l’entreprise. Avoir une plate-forme agile telle que Snowflake avec un calcul élastique et un stockage à faible coût est un bon début, mais vous avez toujours besoin de processus agiles pour déplacer les données à travers le pipeline de données afin de livrer la promesse et la valeur de ces données. Nous devons équilibrer gouvernance et agilité.

QBgruVBVo1qr saykgTG3gop4emTp1L5AsfFRTHlFxRRJDvNok0pbaV55swfyLbSbOR9T2fCVusv03 upP4lvqEIZeUsiwuFM 7p8lquJScT47btSDsUk sgjztEKbrz9kkAUA3C

Figure 1 : La plate-forme de Snowflake permet de nombreuses charges de travail et garantit que les données sont sécurisées et gouvernées, mais pour être totalement agile, DataOps est également nécessaire.

Questions clés

Réunion après réunion, nous entendons les clients poser ces questions :

  1. Comment appliquer les principes de la méthodologie Agile dans un monde data-driven ?
  2. Comment puis-je faire du CI/CD pour les données ?
  3. Comment gérer plus facilement les environnements dev/test/prod ?
  4. Comment puis-je orchestrer tous les outils impliqués dans mon pipeline de données ?

Pour approfondir un peu, je demande ce que les gens entendent par « CI/CD pour les données ». Ils expliquent qu’ils ne veulent pas seulement gérer les modifications du CODE. Ils souhaitent également modifier la conception du SCHEMA et les DONNÉES de ce schéma, puis le TESTER correctement et ORCHESTRER le tout. facilement, le tout dans un souci de gouvernance et d’auditabilité.

Par exemple, un développeur apporte une modification, une deuxième personne l’examine par des pairs et une troisième personne approuve sa fusion dans le projet. Tout doit être documenté : qui, quoi, où et quand.

Je n’arrivais pas à y croire lorsque j’ai travaillé avec de grandes entreprises mondiales et que j’ai constaté que les administrateurs de bases de données apportaient encore des modifications directement à l’environnement des données de production ; dans aucun autre espace que je connaisse, cela n’est acceptable.

Ce problème a été résolu il y a des années avec l’avènement de DevOps pour les logiciels. « Le projet Phénix” décrit comment le faire. Les organisations prospères qui ont adopté les frameworks DevOps poussent des centaines ou des milliers de modifications de code par jour en production… mais pas avec des données.

Nous avons besoin d’une nouvelle façon de penser à la façon dont nous traitons nos plateformes de données et les données qu’elles contiennent. Cette nouvelle façon est DataOps.

Qu’est-ce que DataOps ?

Fondamentalement, DataOps est l’application des principes DevOps aux données. Il y a une petite définition dans le Manifeste DataOpsqui reflète clairement le Manifeste Agile pour le développement logiciel :

Figure 2 : Les principes de DataOps reflètent les principes du Manifeste Agile.

Mais pour une application pratique, dans le monde réel, cela ne va pas assez loin.

#TRUEDATAOPS

Pour essayer de résoudre tout cela, quelques-uns de mes collègues et moi avons décidé de créer un nouveau mouvement DataOps appelé #TrueDataOps. Ainsi, avec Justin Mullens et Guy Adams de DataOps.live prenant les devants, nous avons rédigé truedataops.org pour articuler notre philosophie détaillée autour de la gestion des données dans le cloud.
Au cours de la dernière année, nous avons commencé à discuter des besoins des clients Snowflake pour DevOps et DataOps en particulier. Nous avons travaillé sur la manière d’amener le monde du DevOps – le vrai DevOps – aux données. Comment exploiter toutes les meilleures pratiques que DevOps nous a montrées au cours des 20 dernières années et les appliquer aux données ? Nous avons donc collaboré à l’élaboration d’une vision raffinée de ce que nous appelons désormais le « True DataOps ». Cette vision exprime ce que cela signifie vraiment d’appliquer les principes DevOps dans le cloud avec comment nous livrons DataOps au monde. Collectivement, nous avons réalisé que ce n’est que maintenant, et grâce aux capacités uniques de Snowflake, que notre vision de True DataOps devient réalisable.

2gaFYVNh3L3ygSbbZtJ65itw2 umY 6ehIsMzbWQJm9ahvYY9Tv00IHXM3wnfhwJcdsbsCF58IEozgodNq10WZTjM1hHsrD6r

Figure 3 : Le cycle de vie DataOps

Les 7 piliers du True DataOps

Pour donner un peu plus de détails sur ce à quoi nous pensons qu’un cadre True DataOps devrait ressembler, nous avons décidé de ces piliers fondamentaux (ensembles de fonctionnalités) qui, selon nous, sont nécessaires pour réussir véritablement.

ELT : Comptez davantage sur la plate-forme de données. Utilisez un stockage à faible coût et un calcul élastique, et tirez parti de Schema-on-Read chaque fois que possible pour gagner en agilité et conserver les données au même endroit. Arrêtez d’extraire les données de la plateforme pour les transformer, car cela ajoute de la latence et réduit votre agilité.

Agilité et CI/CD : Votre processus DataOps doit avoir un pipeline reproductible et orchestré pour tout (données et schémas) afin que vous puissiez atteindre les objectifs d’intégration continue et de développement continu.

Conception de composants : Nous devrions construire tous nos processus de données de la même manière que nous construisons des logiciels : pas de grands systèmes monolithiques, mais de petits éléments faciles à comprendre, faciles à entretenir et faciles à tester qui peuvent ensuite être assemblés dans les systèmes avancés. nous avons besoin. Un bon exemple de cela dans le monde de la modélisation des données est l’approche Data Vault 2.0.

Gestion de l’environnement : Il s’agit de créer nos instances de production, de développement et de test, mais cela inclut également la gestion des bases de données de tronc et de branche de fonctionnalités pour activer CI/CD.

Gouvernance, sécurité et contrôle des modifications : Chaque modification doit être enregistrée dans un référentiel partagé afin qu’elle puisse être suivie, répliquée (ou annulée), correctement approuvée et signalée pour audit.

Tests automatisés : Cette, en particulier, est critique. Les approches actuelles consistent soit à apporter des modifications tous les quelques mois et à les revoir manuellement avec quelques tests avant de passer en production, soit à apporter des modifications tous les jours et à espérer que tout se passe bien. Aucune de ces approches n’est acceptable et ne devrait pas l’être car les données sont un atout stratégique. Avec une approche de test automatisée et une plate-forme à mise à l’échelle automatique (telle que Snowflake), vous devriez pouvoir exécuter des milliers de tests en quelques minutes.

Collaboration et libre-service : Vous devez permettre à l’ensemble de l’organisation d’accéder aux données régies à l’aide de données structurées. anonymisation. Par exemple, vous pouvez orchestrer le partage de données afin que l’organisation puisse placer différents sous-ensembles de données dans différents comptes Snowflake et que tout soit suivi et masqué de manière appropriée.

Q XJZBSVGuwVqh475Mq3PRD3kPwTudAE0wRcBmBzh4U IDdy6ZXVgMWPVC Nplo1rzoLxehT7 SBLciF7z9S4ADYHyRAu9LUhFGb4RBWtElXm g 2OElIurfCa4mOUpBa718p0MP

Figure 4 : Les sept piliers de True DataOps

C’est le nouveau cadre. L’objectif est de répondre aux besoins exprimés par les clients : agilité et gouvernance.

Avantages de True DataOps

Donc, si nous adoptons une approche True DataOps, comment cela nous aidera-t-il ?

Maintenabilité

Avec tout décomposé en petits composants, chaque petit morceau fait une chose, le fait bien et est facile à comprendre et à entretenir. Les systèmes monolithiques sont pratiquement impossibles (et incroyablement coûteux) à entretenir, comme l’ont montré les systèmes hérités.

Testabilité

Avec la possibilité de déployer le système entier ou une partie du système en un clic ou en exécutant une commande, tout devient plus facile à tester. Nous devrions en fait construire des tests parallèlement à notre code ; le développement et les tests sont les deux faces d’une même médaille.

Disponibilité (y compris la restauration)

Si chaque modification a été testée plusieurs fois, puis examinée et approuvée par des pairs, la disponibilité du système résultant devient beaucoup plus élevée (par exemple, il y a moins de bogues pour le supprimer). Dans le cas où quelque chose ne va pas ou est perturbé, relancez simplement le déploiement à partir du référentiel et recommencez.

Rapidité de développement

Malgré toutes les inquiétudes initiales du type « n’est-ce pas plus de travail », le résultat est une amélioration spectaculaire de la productivité et de la rapidité des équipes de développement. Le travail est plus facile à saisir, plus facile à tester et offre la possibilité d’effectuer jusqu’à 20 ou même 30 cycles de vie complets par heure (contre un ou deux par semaine avec une équipe formidable). Il est également plus facile à déployer. Cela permet à une méthode de travail agile d’émerger. Cette approche n’aurait pas pu avoir lieu sans DevOps. Bien fait, il s’agit d’une approche low-code ou no-code.

Commencer

Si vous êtes un client Snowflake, vous pouvez commencer dès aujourd’hui en cliquant sur la vignette DataOps dans Snowflake Partner Connect :

HPn6faQoMbdBt57cXklRfE4wcytAUxbnLsMQFmTprc3akB1BCXNt9 PJQsqiI6mMfT7CTOYe 8XjrYRJcEWsDD7ZMf5LP3B67bF4AWrR66DnTFLEMMJOgQHfBdh4V9Q 6 IcvGMN

Figure 5 : La vignette DataOps dans Snowflake Partner Connect

Cela conduit à un produit disponible aujourd’hui, conçu par un partenaire Snowflake expérimenté, qui prend spécifiquement en charge le Snowflake Data Cloud et offre cette vision de True DataOps. Il utilise git, dbt et d’autres outils (sous les couvertures) avec une interface utilisateur simplifiée pour automatiser tout cela pour les utilisateurs de Snowflake.

En utilisant cette approche et ces principes, vous pouvez démarrer une opération True DataOps dès aujourd’hui. Cela nécessitera un changement culturel dans la façon dont vous abordez votre travail de données, mais le gain est énorme. Vous pouvez atteindre l’agilité et la gouvernance de votre plateforme de données.

Si pas maintenant quand? Si ce n’est pas vous, alors qui ?

Soyez un leader des données !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.