Un arbre de décision pour optimiser le pilotage des projets data et d'analyse de données dans Google Cloud
Alicia Williams
Developer Advocate, Google Cloud
Priyanka Vergadia
Developer Advocate, Google Cloud
Contactez-nous
Si vous êtes une entreprise et que vous souhaitez vous développer, découvrez comment gagner en productivité avec Google Cloud ou contactez notre équipe commerciale.
Commencer iciGoogle Cloud propose une large gamme de services pour animer vos workloads data et d’analyse de données. Un large choix qui implique parfois de passer au crible un grand nombre d'informations afin de choisir les outils les mieux adaptés à vos cas d’usage spécifiques. De l'ingestion au traitement des données, en passant par le stockage, la gouvernance ou encore l'orchestration, chaque workload s’appuie sur un ensemble de services qui lui est propre. Afin de simplifier le processus de prise de décision, nous avons conçu une roadmap sous forme d’arbre de décision pour vous aider à chercher et sélectionner les services les plus adaptés à vos besoins spécifiques.
Dans cet article, nous vous proposons un découpage par catégorie de workloads en vous donnant à chaque fois des indications pour choisir le service Google Cloud le mieux adapté à votre besoin.
Ingestion de données
Tout projet data commence forcément par l’agrégation des données dans votre système. L’ingestion de données peut prendre la forme d’un chargement en masse (mode batch), comme dans le cadre d’une migration, ou d’un flux d’alimentation régulier d’un projet en production. Selon le type de données que vous ingérez et leur provenance, vous devrez peut-être utiliser différents services.
Pour une ingestion de données en temps réel, vous avez le choix entre deux options :
- Datastream: si vos données proviennent d'une base de données en production, optez pour Datastream. Service serverless d'ingestion en temps réel, non intrusif et fiable, Datastream capture les changements apportés à des données pour les dupliquer dans BigQuery à des fins de streaming ou d’analyse. Interfacé aux templates Dataflow et à Data Fusion, il permet de concevoir des workflows personnalisés avec des transformations de données avancées.
- Pub/Sub : si vous devez traiter et analyser vos données en temps réel au fil de l’eau, optez plutôt pour Pub/Sub. Service de messagerie entièrement managé conçu pour l'ingestion de données en temps réel, il s'intègre directement à nos services de traitement de données, y compris BigQuery.
Pour une ingestion en mode batch, vous disposez d’un large éventail d’options :
- Cloud Storage: les buckets de stockage objet constituent une solution très pratique pour importer des données dans Google Cloud. Vous pouvez utiliser l’outil en ligne de commandes gsutil pour optimiser le déplacement des données d'un client ou d'autres buckets vers un bucket Cloud Storage tout en optimisant le parallélisme.
- Storage Transfer Service (service de transfert de stockage) : si vous transférez une grande quantité de données à partir de votre site ou d'autres clouds, vous pouvez utiliser le service de transfert de stockage.
- Appliance de transfert : si vous devez transférer de grandes quantités de données sur site avec une faible bande passante, Transfer Appliance offre une option plus sûre et plus efficace grâce à un équipement physique sur lequel vous stockez vos données et que vous expédiez ensuite à Google Cloud.
- Service de transfert BigQuery : Si vous souhaitez ingérer des données provenant d'applications SaaS ou tierces dans votre entrepôt de données BigQuery, vous pouvez utiliser BigQuery Transfer Service. Il propose des connecteurs prédéfinis pour les sources de données les plus courantes, ainsi que des fonctions de planification, de surveillance et de gestion.
- Dataflow : dans sa version complète, Dataflow vous permet de gérer de manière fiable l'ingestion de gros volumes de données complexes, provenant de milliers de sources.
- Dataproc: vous pouvez également utiliser Dataproc, un service Hadoop/Spark entièrement managé et 100 % open source. Dataproc vous permet d'ingérer des données provenant de vos sites ou d'autres clouds grâce à des modèles prêts à l'emploi, personnalisables, alimentés par Dataproc Serverless.
- Data Fusion: proposant plus de 150 connecteurs, Data Fusion vous permet d'ingérer des données par lots avec une interface conviviale de type « point-and-click » (et avec une analyse sans code !).
Traitement des données
Une fois les données brutes intégrées, vous devrez probablement les traiter pour les rendre plus exploitables. Ces traitements incluent le nettoyage, le filtrage, l'agrégation et la transformation afin de rendre vos données plus accessibles, mieux organisées et plus compréhensibles. Dans ce cadre, le choix des bons outils Google Cloud dépend avant tout de l'endroit et de la manière dont vous souhaitez traiter vos données pour ensuite les stocker dans votre datalake, vos bases et autres entrepôts de données.
- Dataflow : service serverless entièrement managé, évolutif et fiable, Dataflow permet de traiter les données par lots ou en mode streaming en s’appuyant sur Apache Beam et des langages de programmation tels que Java, Python et Go.
- Dataproc : pour vos workloads Apache Hadoop/Spark, vous pouvez utiliser Dataproc pour traiter de grandes quantités de données stockées dans différents formats de fichiers, y compris des formats de table tels que Delta, Iceberg ou Hudi.
- Data Fusion: si vous préférez effectuer des traitements sans avoir à écrire une seule ligne de code, vous pouvez utiliser Data Fusion qui prend en charge une grande variété de tâches de transformation.
- BigQuery: Si votre workload peut être gérée avec un traitement ELT en SQL, vous pouvez bénéficier des avantages en termes de prix et de performances de BigQuery, notre entrepôt de données, cloud et serverless, hautement évolutif et très économique.
- Cloud Data Loss Prevention : Cloud DLP est un service entièrement managé qui vous aide à découvrir, classer et protéger les données sensibles. Dans le cadre de votre pipeline de traitement des données, il peut appliquer une anonymisation des données personnelles lors d’une migration, sur des workloads de données ainsi que sur des flux de collecte de données en temps réel.
Stockage des données
Après le traitement, vient forcément le stockage. Vous avez nécessairement besoin d’une solution qui permette de stocker vos données de manière sécurisée et efficace afin de pouvoir y accéder facilement, de les analyser et de les utiliser dans des applications telles que la BI (Business Intelligence) ou le ML (Machine Learning). Il existe de nombreuses options de stockage des données dans Google Cloud et le service spécifique que vous choisirez dépendra, là encore, du cas d’usage. Voici quelques exemples, axés sur des workloads data ou d’analytiques :
- Cloud Storage : idéal pour concevoir des datalakes, Cloud Storage propose un service de stockage objet évolutif, durable et hautement disponible. Vous pouvez l’utiliser pour stoker une grande variété de données, compris des données structurées, semi-structurées et non structurées. Les données sont stockées sur deux régions Cloud afin de garantir la redondance avec une très faible latence. Vous éviterez ainsi la réplication manuelle et Cloud Storage gère automatiquement le basculement en cas de besoin.
- BigQuery: Vous pouvez aussi stocker les données structurées ou semi-structurées (type JSON natif, champs imbriqués) dans BigQuery afin de réaliser très rapidement des analyses en langage SQL.
- Filestore : si vous travaillez sur un projet très exigeant en performances et nécessitant une très faible latence et une multitude d’accès concurrents - comme dans le cadre de workloads d’apprentissage ML ou d’analytiques nécessitant une grande quantité d’opérations d’entrée/sortie (E/S) - optez pour Filestore.
Comme vos données peuvent être stockées dans BigQuery, Cloud Storage et même d'autres Clouds, il est important de les unifier et de les rendre accessibles à l'aide de BigLake. BigLake est un moteur d'accès aux données qui vous permet d'unifier les accès, de gérer et d'analyser les données éparpillées entre vos datalakes et entrepôts de données. Outre ses excellentes performances, BigLake propose également des fonctionnalités supplémentaires de gouvernance et de sécurité (au niveau des colonnes et des lignes).
Gouvernance
Quelle que soit l’entreprise ou le projet, dès qu’on aborde le sujet data, il est essentiel de définir des lignes directrices et de meilleures pratiques pour gérer ses données afin de s'assurer qu’elles sont exactes, cohérentes, protégées et conformes aux réglementations. Une démarche de gouvernance des données peut inclure le catalogage, le lignage, la gestion de la qualité, l'identification des informations confidentielles et personnelles ou encore le contrôle de l'accès aux données.
- Dataplex excelle dans toutes ces tâches de gouvernance, centralisant la gestion de vos datalakes, datawarehouses et datamarts hébergés sur Google Cloud ou ailleurs. Dans Dataplex, vous trouverez également Data Catalog, un référentiel de métadonnées entièrement managé, que vous pouvez utiliser pour vous aider à découvrir, comprendre et enrichir vos données.
Google Cloud propose également des fonctionnalités de gouvernance embarquées dans d’autres solutions. Typiquement, BigQuery prend en charge les clés de chiffrement gérées par le client (CMEK) et la sécurité au niveau des colonnes et des lignes. Cette fonctionnalité s'étend au stockage d'objets via les tables BigLake.
Orchestration
Vous aurez également besoin d’orchestration pour combiner et gérer les différents composants de vos pipelines. Avec l’orchestration, vous définissez des pipelines, vous planifiez des tâches de traitement des données et vous surveillez vos pipelines afin de vous assurer que vos données sont traitées en temps voulu et de manière efficace.
Google Cloud propose deux services d'orchestration :
- Composer: vous pouvez écrire, planifier et surveiller vos pipelines de données avec ce service Airflow entièrement managé qui s'intègre aux solutions de traitement des données mentionnées ci-dessus.
- Dataform: si vous souhaitez construire et gérer des pipelines de données de type ETL/ELT en SQL, Dataform vous permet de développer et d’opérer des pipelines évolutifs de transformation de données au sein de BigQuery.
Consommation des données
Une fois vos flux de données mis en place, vous êtes prêts pour utiliser les données là où vous le souhaitez !
- Vous voulez effectuer des analyses SQL rapides ? Optez pour BigQuery.
- Vous voulez partager en toute sécurité des données et des informations à grande échelle sans avoir à déplacer les données ? Adoptez Analytics Hub.
- Vous voulez visualiser des données ou créer des tableaux de bord pour faire du reporting ? Looker Studio est une solution BI robuste et intuitive.
- Vous souhaitez développer des modèles ML personnalisés à partir de vos données ? Laissez Vertex AI fluidifier vos workflows ML de bout en bout.
Pour aller plus loin
De l'ingestion de données provenant de diverses sources aux traitements, en passant par le stockage, la gestion, l'orchestration et le partage des données… les projets liés aux données et à l'analyse se construisent en plusieurs étapes. Nous espérons à travers cet article vous avoir aidé à trouver la combinaison de solutions la plus adaptée à vos besoins. N’hésitez pas à mettre cet arbre de décision dans vos favoris et consultez régulièrement notre site car nous publierons régulièrement d'autres arbres de décision pour d’autres types de projets.
N’hésitez pas à nous faire savoir ce que vous pensez de cet article et de l'arbre de décision en vous rendant sur notre canal Discord Cloud Analytics! Assurez-vous au préalable d'avoir rejoint le programme Innovators et la chaine Google Developers Discord.