Ce guide vous aide à évaluer les besoins en stockage de votre charge de travail cloud, à comprendre les options de stockage disponibles dans Google Cloudet à concevoir une stratégie de stockage offrant une valeur technique et commerciale optimale.
Pour savoir comment sélectionner des services de stockage pour les charges de travail d'IA et de ML, consultez Présentation des services de stockage pour les charges de travail d'IA et de ML dans AI Hypercomputer.
Présentation du processus de conception
En tant qu'architecte cloud, lorsque vous planifiez le stockage d'une charge de travail cloud, vous devez d'abord tenir compte des caractéristiques fonctionnelles de la charge de travail, des contraintes de sécurité, des exigences de résilience, des attentes en termes de performances et des objectifs de coûts. Ensuite, vous devez examiner les services et fonctionnalités de stockage disponibles dansGoogle Cloud. Alors, en fonction de vos besoins et des options disponibles, vous sélectionnez les services de stockage et les fonctionnalités dont vous avez besoin. Le schéma suivant illustre ce processus de conception en trois phases :
Définir vos exigences
Utilisez les questionnaires de cette section pour définir les exigences de stockage de clés de la charge de travail que vous souhaitez déployer dans Google Cloud.
Consignes pour la définition des exigences de stockage
Lorsque vous répondez aux questionnaires, tenez compte des éléments suivants :
Définissez les exigences de manière précise
Par exemple, si votre application nécessite un stockage de fichiers basé sur le système NFS (Network File System), identifiez la version NFS requise.
Tenez compte des exigences futures
Par exemple, votre déploiement actuel peut desservir les utilisateurs des pays d'Asie, mais vous envisagez peut-être de développer votre activité sur d'autres continents. Dans ce cas, prenez en considération les exigences réglementaires liées au stockage pour les nouveaux territoires d'activité.
Tenez compte des opportunités et exigences spécifiques au cloud
Tirez parti des opportunités spécifiques au cloud.
Par exemple, pour optimiser le coût de stockage des données hébergées dans Cloud Storage, vous pouvez contrôler la durée de stockage à l'aide de règles de conservation des données et de configurations de cycle de vie.
Tenez compte des exigences spécifiques au cloud.
Par exemple, les données sur site peuvent exister dans un seul centre de données, et vous devrez peut-être répliquer les données migrées dans deuxGoogle Cloud emplacements pour la redondance.
Questionnaires
Les questionnaires suivants ne constituent pas des checklists exhaustives pour la planification. Utilisez-les comme point de départ pour analyser systématiquement toutes les exigences de stockage de la charge de travail que vous souhaitez déployer sur Google Cloud.
Évaluer les caractéristiques de votre charge de travail
Quel type de données devez-vous stocker ?
Exemples
- Contenu de site Web statique
- Sauvegardes et archives pour la reprise après sinistre
- Journaux d'audit pour la conformité
- Objets de données volumineux téléchargés directement par les utilisateurs
- Données transactionnelles
- Données non structurées et hétérogènes
De quelle capacité avez-vous besoin ? Tenez compte de vos exigences actuelles et futures.
La capacité doit-elle évoluer automatiquement avec l'utilisation ?
Quelles sont les conditions d'accès ? Par exemple, les données doivent-elles être accessibles en dehors de Google Cloud ?
Quels sont les modèles de lecture/écriture attendus ?
Exemples
- Écritures et lectures fréquentes
- Écritures fréquentes, mais lectures occasionnelles
- Écritures et lectures occasionnelles
- Écritures occasionnelles, mais lectures fréquentes
La charge de travail nécessite-t-elle un accès basé sur les fichiers, en utilisant NFS par exemple ?
Plusieurs clients doivent-ils être en mesure de lire ou d'écrire des données simultanément ?
Identifier les contraintes de sécurité
Quelles sont vos exigences en termes de chiffrement des données ? Par exemple, avez-vous besoin d'utiliser des clés que vous contrôlez ?
Existe-t-il des exigences de résidence des données ?
Définir les exigences en termes de résilience des données
- Votre charge de travail nécessite-t-elle une mise en cache à faible latence ou un espace de travail ?
- Avez-vous besoin de répliquer les données dans le cloud pour la redondance ?
- Avez-vous besoin d'une cohérence stricte en lecture/écriture pour les ensembles de données répliqués ?
Définir les attentes en termes de performances
Quel est le taux d'E/S requis ?
De quels niveaux de débit en lecture et en écriture votre application a-t-elle besoin ?
Quels sont les environnements pour lesquels vous avez besoin de stockage ? Pour une charge de travail donnée, vous avez peut-être besoin d'une solution de stockage hautes performances pour l'environnement de production, mais vous pouvez choisir une option moins performante pour les environnements hors production.
Examiner les options de stockage
Google Cloud propose des services de stockage pour tous les principaux formats de stockage : blocs, fichiers et objets. Examinez et évaluez les fonctionnalités, les options de conception et les avantages relatifs des services disponibles pour chaque format de stockage.
Présentation
Stockage de blocs
Les données que vous hébergez dans un stockage de blocs sont divisées en fragments, chacun étant stocké sous la forme d'un bloc distinct avec une adresse unique. Les applications accèdent aux données en référençant les adresses de bloc appropriées. Le stockage de blocs est optimisé pour les charges de travail à IOPS élevées, telles que le traitement de transactions. Il est semblable aux systèmes de réseau de stockage (SAN) sur site et de stockage directement associés (DAS).
Les options de stockage de blocs dans Google Cloud font partie du service Compute Engine.
| Option | Présentation |
|---|---|
| Persistent Disk | Des disques durs (HDD) et des disques durs SSD dédiés, pour les applications d'entreprise et de base de données déployées sur des VM Compute Engine et des clusters Google Kubernetes Engine (GKE). |
| Google Cloud Hyperdisk | Stockage réseau rapide et redondant pour les VM Compute Engine et les clusters GKE, avec une capacité pouvant être augmentée de manière dynamique et des performances configurables. |
| SSD local | Service de stockage de blocs éphémère associé localement pour les applications hautes performances. |
Stockage de fichiers
Les données sont organisées et représentées dans une hiérarchie de fichiers stockés dans des dossiers, de la même manière que le stockage en réseau (NAS) sur site. Les systèmes de fichiers peuvent être installés sur des clients à l'aide de protocoles tels que NFS et Server Message Block (SMB). Les applications accèdent aux données à l'aide du nom de fichier et du chemin d'accès du répertoire correspondants.
Google Cloud propose une gamme de solutions entièrement gérées pour le stockage de fichiers.
| Solution | Présentation |
|---|---|
| Filestore |
Stockage basé sur des fichiers à l'aide de serveurs de fichiers NFS pour les VM Compute Engine et les clusters GKE. |
| Google Cloud Managed Lustre |
Système de fichiers parallèle à faible latence pour l'IA, le calcul hautes performances (HPC) et les applications gourmandes en données. |
| Google Cloud NetApp Volumes | Stockage basé sur des fichiers à l'aide des protocoles NFS, SMB ou de stockage de blocs. |
Stockage d'objets
Les données sont stockées en tant qu'objets dans une hiérarchie plate de buckets. Chaque objet se voit attribuer un ID unique. Des métadonnées peuvent être attribuées aux objets par le système et définies par l'utilisateur pour vous aider à organiser et à gérer les données. Les applications accèdent aux données à l'aide des API REST ou des bibliothèques clientes en référençant les ID d'objet.
Cloud Storage fournit un stockage d'objets économique, extrêmement durable et hautement évolutif pour divers types de données. Les données que vous stockez dans Cloud Storage sont accessibles partout, au sein et hors de Google Cloud. La redondance facultative entre les régions offre une haute disponibilité et une grande fiabilité. Vous pouvez sélectionner une classe de stockage adaptée à vos exigences de conservation des données et de fréquence d'accès.
Analyse comparative
Le tableau suivant liste les principales fonctionnalités des services de stockage dansGoogle Cloud.
| Persistent Disk | Hyperdisk | SSD local | Filestore | Managed Lustre | NetApp Volumes | Cloud Storage | |
|---|---|---|---|---|---|---|---|
| Limite de capacité |
64 Tio par disque et 257 Tio par VM. Dernières spécifications : Documentation sur les disques persistants |
64 Tio par disque, 512 Tio par VM et 5 Pio par pool de stockage. Les exapools sont des pools Hyperdisk de plus grande capacité. Dernières spécifications : Documentation Hyperdisk |
375 Gio par disque et 12 000 Gio par VM. Les disques Titanium SSD acceptent jusqu'à 6 Tio par disque et 84 000 Gio par VM. Dernières spécifications : Documentation sur les SSD locaux |
100 Tio par instance, selon le niveau de service. | 80,1 PiB par instance, selon le niveau de performances. |
20 Pio par pool de stockage et 20 Pio par volume. Dernières spécifications : Documentation NetApp Volumes |
5 Tio par objet, sans limite par bucket (sauf pour les Rapid Buckets). Dernières spécifications : Documentation Cloud Storage |
|
Scaling |
|
|
Non évolutif | Scaling à la hausse et à la baisse (niveaux zonal et régional) | Effectuer un scaling à la hausse | Scaling à la hausse et à la baisse | Scaling automatique en fonction de l'utilisation |
| Partage |
Compatible | Compatible | Non partageable | Peut être installé sur plusieurs VM Compute Engine, clients distants et clusters GKE | Peut être installé sur plusieurs VM Compute Engine et clusters GKE | Peut être installé sur plusieurs VM Compute Engine, clients distants et clusters GKE |
|
| Options des clés de chiffrement |
|
|
Google-owned and Google-managed encryption keys |
|
|
|
|
| Persistance |
Durée de vie du disque | Durée de vie du disque | Éphémère (les données sont perdues lorsque la VM est arrêtée ou supprimée) | Durée de vie de l'instance Filestore | Durée de vie de l'instance Managed Lustre | Durée de vie du volume | Durée de vie du bucket |
| Qui peut en bénéficier ? |
|
|
Zonal |
|
Zonal |
|
|
| Performances |
Scaling linéaire avec la taille du disque et le nombre de processeurs | Stockage persistant à scaling dynamique | Stockage temporaire hautes performances | Zonal et régional : performances personnalisées | Mise à l'échelle en fonction du niveau de performances sélectionné. | Performances évolutives Les attentes dépendent du niveau de service. |
|
| Gestion |
Formater et installer manuellement | Formater et installer manuellement | Formater, mettre en bande et monter manuellement | Entièrement géré | Entièrement géré | Entièrement géré | Entièrement géré |
Le tableau suivant répertorie les types de charge de travail pour lesquels chaque option de stockage Google Cloudest appropriée :
| Option de stockage | Types de charges de travail |
|---|---|
| Hyperdisk ou Persistent Disk |
|
| SSD local |
|
| Filestore |
|
| Managed Lustre |
|
| NetApp Volumes |
|
| Cloud Storage |
|
Choisir une option de stockage
La sélection d'une option de stockage s'effectue en deux étapes :
- Choix des services de stockage dont vous avez besoin
- Choix des fonctionnalités et des options de conception requises dans un service donné
Exemples de fonctionnalités et d'options de conception spécifiques aux services
Persistent Disk
- Région et zone de déploiement
- Réplication régionale
- Type, taille et IOPS du disque (pour les disques persistants extrêmes)
- Clés de chiffrement : Google-owned and Google-managed encryption keysou gérées par le client
- Programmation des instantanés
Hyperdisk
- Région et zone de déploiement
- Type, taille, IOPS ou débit provisionnés du disque
- Clés de chiffrement : Google-owned and Google-managed encryption keysou gérées par le client
- Réplication : synchrone ou asynchrone
- Programmation des instantanés
Filestore
- Région et zone de déploiement
- Niveau d'instance
- Capacité
- Plage d'adresses IP : allouée automatiquement ou personnalisée
- Contrôle des accès
Managed Lustre
- Zone de déploiement
- Niveau de capacité et de performances
- Clés de chiffrement : Google-owned and Google-managed encryption keysou gérées par le client
NetApp Volumes
- Région de déploiement
- Niveau de service du pool de stockage
- Capacité du pool et du volume
- Protocole de volume
- Règles d'exportation de volume
Cloud Storage
- Zone : multirégionale, birégionale, régionale unique, monozone
- Classe de stockage : Standard, Nearline, Coldline, Archive ou Rapid
- Contrôle d'accès : uniforme ou précis
- Clés de chiffrement : Google-owned and Google-managed encryption keys, gérées par le client ou fournies par le client
- Règle de conservation
Recommandations de stockage
Utilisez les recommandations suivantes comme point de départ pour choisir les services et les fonctionnalités de stockage répondant à vos besoins. Pour obtenir des conseils spécifiques aux charges de travail d'IA et de ML, consultez Présentation des services de stockage pour les charges de travail d'IA et de ML dans AI Hypercomputer.
Pour les applications d'IA, de ML et de HPC qui nécessitent un système de fichiers parallèle, utilisez Managed Lustre.
Pour les applications nécessitant un accès basé sur des fichiers, choisissez un service de stockage de fichiers qui soit adapté à vos exigences concernant le protocole d'accès, la disponibilité et les performances.
Protocole d'accès Recommandation NFS - Si vous avez besoin d'une disponibilité régionale et de hautes performances configurables, utilisez Filestore Regional ou NetApp Volumes Flex Unified.
- Si la disponibilité zonale est suffisante :
- Pour configurer les performances indépendamment de la capacité, utilisez Filestore Zonal ou NetApp Volumes Flex Unified.
- Pour des performances qui évoluent en fonction de la capacité, utilisez Filestore Zonal ou NetApp Volumes Standard, Premium ou Extreme.
Pour en savoir plus, consultez Niveaux de service Filestore et Niveaux de service NetApp Volumes.
PME Utilisez NetApp Volumes. Pour les charges de travail nécessitant un stockage principal hautes performances, utilisez Hyperdisk, un SSD local ou un disque persistant en fonction de vos besoins.
Exigence Recommandation Espace de travail ou cache rapide Utilisez des disques SSD locaux (éphémères). Stockage de blocs avec des performances et une capacité évolutives de manière indépendante Utilisez Hyperdisk, qui est le stockage de blocs durable recommandé par Google et qui est requis pour les dernières séries de machines. Choisissez un type de disque adapté à vos besoins :
- Charges de travail à usage général :
hyperdisk-balanced - Charges de travail à E/S élevées, telles que les bases de données hautes performances :
hyperdisk-extreme - Analyses évolutives, lecteurs de données pour les applications sensibles aux coûts et stockage à froid :
hyperdisk-throughput - Charges de travail de ML nécessitant un haut débit vers plusieurs VM en mode lecture seule :
hyperdisk-mlen mode lecture seule - Plusieurs VM avec accès en écriture simultané au même disque :
hyperdisk-balanced-high-availability(sur deux zones d'une même région),hyperdisk-balancedouhyperdisk-extreme(dans une même zone) en mode écriture simultanée
Pour en savoir plus, consultez À propos d'Hyperdisk.
Stockage de blocs avec une capacité évolutive pour les VM de génération antérieure Utilisez un disque persistant. Choisissez un type de disque approprié en fonction de vos besoins :
- IOPS séquentielles :
pd-standard - Charges de travail gourmandes en IOPS :
pd-extremeoupd-ssd - Équilibre entre performances et coûts :
pd-balanced
Pour en savoir plus, consultez À propos de Persistent Disk.
- Selon vos exigences de redondance, choisissez des disques zonaux ou régionaux.
Exigence Recommandation Redondance au sein d'une zone unique d'une région Utilisez un hyperdisque ou un disque persistant zonal. Redondance dans plusieurs zones d'une même région Utilisez Hyperdisk Balanced à haute disponibilité ou un disque persistant régional.
- Charges de travail à usage général :
Pour un stockage à grande échelle et disponible dans le monde entier, utilisez Cloud Storage.
En fonction de la fréquence d'accès aux données et de la durée de stockage, choisissez une classe Cloud Storage adaptée.
Exigence Recommandation La fréquence d'accès varie, ou la période de conservation des données est inconnue ou imprévisible. Utilisez la fonctionnalité Classe automatique pour transférer automatiquement les objets d'un bucket vers les classes de stockage appropriées en fonction du modèle d'accès de chaque objet. Stockage zonal pour les charges de travail qui nécessitent une latence inférieure à la milliseconde et un débit élevé, comme l'entraînement, la vérification, l'inférence et l'analyse d'IA et de ML. Utilisez un bucket Rapid avec la classe de stockage Rapid. Stockage de données soumises à des accès fréquents, y compris pour les lacs de données, les analyses à haut débit, les sites Web, les vidéos en streaming et les applications mobiles. Utilisez la classe de stockage Standard.
Pour mettre en cache des données fréquemment consultées et les diffuser à partir d'emplacements proches des clients, utilisez Cloud CDN.
Pour les charges de travail axées sur la lecture avec des modifications de données peu fréquentes et des lectures fréquentes (comme l'entraînement, l'inférence et l'analyse du ML), vous pouvez améliorer les performances de lecture et réduire les coûts de transfert de données en utilisant Rapid Cache.
Stockage à faible coût pour les données rarement consultées, qui peuvent être stockées pendant au moins 30 jours (par exemple, des sauvegardes et des contenus multimédias à longue traîne) Utilisez la classe de stockage Nearline. Stockage à faible coût pour les données rarement consultées, qui peuvent être stockées pendant au moins 90 jours (par exemple, reprise après sinistre). Utilisez la classe de stockage Coldline. Stockage le plus économique pour les données rarement consultées, qui peuvent être stockées pendant au moins 365 jours, y compris les archives réglementaires. Utilisez la classe de stockage Archive. Pour une analyse comparative détaillée, consultez la page Classes de Cloud Storage.
Options de transfert de données
Une fois que vous avez choisi les services de stockage Google Cloud appropriés, vous devez transférer vos données vers Google Cloudpour déployer et exécuter des charges de travail. Les données que vous devez transférer peuvent exister sur site ou sur d'autres plates-formes cloud.
Vous pouvez utiliser les méthodes suivantes pour transférer des données vers Google Cloud :
- Transférez des données en ligne à l'aide du service de transfert de stockage : automatisez le transfert de grandes quantités de données entre les systèmes de stockage d'objets et de fichiers, y compris Cloud Storage, Amazon S3, les services de stockage Azure et des sources de données sur site.
- Transférez des données hors connexion à l'aide de Transfer Appliance : transférez et chargez de grandes quantités de données hors connexion vers Google Cloud dans des situations où la connectivité réseau et la bande passante sont indisponibles, limitées ou coûteuses.
- Importer des données dans Cloud Storage : importez des données en ligne dans des buckets Cloud Storage à l'aide de la console Google Cloud , de Google Cloud CLI, de l'API Cloud Storage ou des bibliothèques clientes.
Lorsque vous choisissez une méthode de transfert de données, tenez compte de facteurs tels que la taille des données, les contraintes de temps, la disponibilité de la bande passante, les objectifs de coûts, ainsi que les exigences de sécurité et de conformité. Pour en savoir plus sur la planification et l'implémentation des transferts de données vers Google Cloud, consultez Options de transfert de données.
Étapes suivantes
- Estimez les coûts de stockage à l'aide du simulateur de coûtGoogle Cloud .
- Découvrez les bonnes pratiques permettant de créer une topologie cloud optimisée pour la sécurité, la résilience, le coût et les performances.
- Pour découvrir d'autres architectures de référence, schémas et bonnes pratiques, consultez le Centre d'architecture cloud.
Contributeurs
Auteur : Kumar Dhanagopal | Cross-product solution developer
Autres contributeurs :
- Brennan Doyle | Architecte de solutions
- Dean Hildebrand | Directeur technique, bureau du directeur de la technologie
- Geoffrey Noer | Responsable groupe de produits
- Jack Zhou | Rédacteur technique
- Jason Wu | Directeur de la gestion des produits
- Jeff Allen | Architecte de solutions
- Samantha He | Rédactrice technique
- Sean Derrington | Group Product Manager, Stockage