Plongée dans l’approche DataOps avec Adrien Blind, Tech & DevOps évangéliste chez Saagie.

« Data is the new oil » lit-on depuis un moment. La question qui vient immédiatement à l’esprit est la suivante : « What is its (best) engine ? ». A l’ère de la transformation numérique des entreprises, chacun cherche l’état de l’Art pour convertir rapidement, efficacement ces projets BigData embarquant de l’IA en nouveaux produits et services à valeur ajoutée.

Car les faits sont là : 8 projets Big Data sur 10 ne vont pas en production selon Gartner.

Le potentiel des données est incommensurable. Mais voilà, de ce fait avéré, il faut réussir à le convertir en réalité métier et business pour ne pas perdre la bataille de l’innovation dans un contexte de concurrence acharnée entre les entreprises. Alors, comment faire ?

L’entreprise doit tout d’abord identifier, isoler ses jeux de données au sein de son lac de données (Data Lake). Ici, c’est encore le calme plat, l’heure de l’analyse et de la réflexion pour voir comment ces jeux de données peuvent être traités. Au sein de ce lac, toutes les données, structurées ou non, y sont regroupées et accessibles, et peuvent être enrichies tout au long du déroulement du projet. Quant à l’exploitation de données, elle est impossible sans un certain nombre de technologies (Spark, Talend, Avro, Atlas, Hadoop, Cassandra et bien d’autres encore) afin d’assurer l’extraction et l’importation de données, leur traitement, leur gouvernance ou encore leur protection.

Mais, ici s’impose un premier changement de paradigme car le Data Lake est une vaste étendue de données statiques à laquelle il s’agit de donner vie. Pour cela, le Data Hub est l’un des éléments clés de tout projet BigData/IA. Celui-ci est centré sur un traitement dynamique, collaboratif et innovant de la donnée. Au sein de ce Data Hub, les acteurs du projet vont pouvoir mener à bien leur expérimentation et qualification de leurs données. C’est à cet endroit qu’ils explorent, traitent, et confrontent les jeux de données aux algorithmes. C’est aussi le moment où tout se joue car au-delà des éléments techniques et technologiques, c’est à cet instant qu’il faut aligner le projet avec la vision de l’entreprise, définir une stratégie claire et adoptée par toutes ses parties prenantes. C’est enfin le timing idéal pour constituer l’équipe et associer les ressources humaines suffisantes à la réussite du projet.

Le DevOps, socle incontournable des projets BigData ?

Le socle fonctionnel, l’équipe sont constitués. Dès lors, chaque entreprise peut dynamiser son projet en y appliquant l’approche DevOps. Pourquoi me direz-vous ? Pour gagner en agilité, permettre une collaboration efficace, aligner les objectifs de chaque métier pour les rendre communs et faciliter la mise en production.

L’approche DevOps est une méthodologie rassemblant les différentes pratiques et processus fondamentaux qui permettent d’accélérer le Go to Market. Elle se base sur les principes « Lean » et « Agile », rassemble responsables opérationnels et développeurs. Les pratiques DevOps unifient tous les acteurs du projet. Concrètement, l’approche DevOps permet l’automation et le suivi de chacune des étapes de la création d’un logiciel, de son développement à son déploiement, mais aussi de son administration. L’objectif premier de cette approche DevOps est de délivrer un logiciel en continu et donc modifiable, qui permet à la fois de prendre en compte les retours clients, mais aussi de saisir plus d’opportunités commerciales. Les principaux avantages de ces pratiques sont aussi la collaboration de différentes équipes qui amène à un déploiement accéléré et donc à des coûts réduits.

Cependant, même si le DevOps offre automatisation, agilité et efficacité, son intérêt est limité lorsqu’il s’agit de prendre en charge et créer des applications ou logiciels qui utilisent massivement les données pour leur bon fonctionnement.

L’essor du DataOps, pour une approche centrée sur la donnée vs l’application

Les pratiques DevOps restent donc liées à l’informatique mais les nouvelles considérations liées aux données ont amené avec elles le besoin d’en élargir les frontières. Puisque ces pratiques permettent une boucle de feedbacks et davantage d’itérations, il s’est donc avéré nécessaire de l’adapter au développement d’applications de traitement de données.

L’approche DataOps recentre le projet et sa finalité sur la donnée. Elle est pertinente pour la création d’application gourmandes en données. Elle fait collaborer les équipes de développement (architecture, logique applicative), opérationnelles (déploiement et supervision), sécurité et gouvernance, les data scientists et data engineers (modèle data science et machine learning) et ingénieurs (préparation des données).

Le DevOps leur offre l’agilité, les data scientists peuvent créer des modèles qui sont soumis à des itérations avant d’être déployés dans l’application en phase de création par le développeur. C’est justement de l’exploitation des données massives vouées à la logique applicative qu’émerge le besoin du DataOps. En effet, cette approche DataOps, bien qu’émergente, est le graal de tout projet BigData embarquant de l’IA. Elle facilite la création, la gestion, le déploiement et la supervision des applications car en phase de développement, elle se concentre sur les données vs l’application en question, met en valeur la data science et machine learning.

Nous assistons donc à un déclin du modèle CRISP au profit du développement du DevOps dans la Data Science. S’il s’agissait donc seulement au début d’un ensemble de best practices, c’est maintenant une véritable approche qui s’applique dans les équipes Data & Analytics et qu’on appelle le DataOps. Ce concept suit la même logique que celui des pratiques DevOps, mais adapté à la data et s’appliquant tout au long des étapes du cycle de la donnée.

Pour tirer tous les bénéfices des approches combinées DevOps et DataOps, il est important de disposer d’un relai technologique fondamental : la Data Fabric.

Elle se définit comme l’écosystème qui permet la gestion des données, leur extraction jusqu’à leur consommation, en passant par leur traitement. Contrairement à la plateforme de DataScience, qui peut d’ailleurs être intégrée à la Data Fabric, elle facilite et accélère la mise en production des projets. Toutes les technologies y sont assemblées, tous les métiers (data engineer, data scientists, data analysts, data stewards, IT/Ops) peuvent y accéder facilement, collaborer.  Ils profitent de sa compatibilité qui leur permet de travailler sur n’importe quel langage (R, Python, HDFS, Impala, Hive, Drill, Spark, Sqoop, Elasticsearch, PostgreSQL, Talend, Java, Scala, Jupyter, Docker, Zeppelin, Mongo DB et MySQL). Elle permet une adaptabilité complète en supportant les dernières versions, mais aussi les moins récentes. la Data Fabric se charge ensuite d’assurer une certaine cohésion entre les différents outils utilisés.

Le DataOps, catalyseur du succès des projets Big Data

A l’ère de la transformation numérique, les entreprises sont dans l’urgence et l’obligation de revoir leur approche de la donnée. En mettant du Devops dans la Data Science, la Data Fabric permet de tirer profit de ses données et rend possible la prise rapide de décisions ciblées par l’exploitation, le tri et l’analyse des données en fonction des métiers. Chacun y trouve donc son compte.

Selon IDC, plus de la moitié des entreprises françaises qui ont intégré des pratiques DevOps dans un projet les ont par la suite généralisées à l’ensemble de leurs développements informatiques. Ces pratiques continuent donc de s’imposer et selon les prédictions de Gartner, parmi les 1 000 premières entreprises du célèbre magazine Fortune, 80% les auront adoptées d’ici l’année prochaine. Mais si leur généralisation ne fait maintenant plus de doute, qu’en est-il du DataOps ? Toujours selon Gartner, adopter cette approche est l’une des seules solutions pour amener les projets BigData en production.