N’utilisez pas S3 pour les sauvegardes!

Vous trouverez ci-dessous un récapitulatif des problèmes liés au stockage compatible Amazon S3 et S3 en général. Bien que S3 serve à rendre les fichiers disponibles en ligne, sa réutilisation en tant que stockage de sauvegarde n’est pas aussi efficace.

Le plus gros problème d’abord : c’est juste le stockage

Lorsque vous avez affaire à des sauvegardes pour vos serveurs Windows, par exemple, vous êtes préoccupé par la possibilité de sauvegarder et de restaurer efficacement le serveur. Vous voulez avoir la garantie qu’en cas de problème, il y a quelqu’un qui peut vous aider. Vous aimeriez avoir quelqu’un disponible pour examiner vos sauvegardes et vos paramètres de sauvegarde afin de vous assurer que tout va bien.

Lorsque vous traitez avec des fournisseurs de stockage S3, tels qu’Amazon S3, ils ne font que vous fournir une plate-forme de stockage. Vous ne bénéficiez d’aucune assistance technique. Et même si vous l’avez fait, c’est coûteux et généralisé, pas axé sur la solution de sauvegarde de serveur que vous mettez en œuvre pour votre client ou votre entreprise.

L’achat d’une solution complète de sauvegarde de serveur dans le cloud est différent, car quoi qu’il arrive, vous disposez d’un support technique pour vous assurer que tout est correctement configuré, fonctionne correctement et restaure comme il se doit. Quel que soit le stockage que vous utilisez, lorsqu’il fait partie de la solution globale, vous obtenez l’aide dont vous avez besoin quand vous en avez besoin. Chaque fois que vous avez des fournisseurs distincts, les choses se compliquent et vous n’obtiendrez pas automatiquement l’assistance technique compétente dont vous pourriez avoir besoin à ce moment-là.

Dépens

Bien que S3 offre une tarification évolutive et avec paiement à l’utilisation, les coûts peuvent s’accumuler, en particulier pour le stockage à grande échelle ou le transfert de données. Les utilisateurs doivent gérer avec soin leurs modèles de stockage et d’accès afin d’optimiser les coûts.

Cohérence des données

S3 fournit une forte cohérence de lecture après écriture pour tous les objets, mais cette cohérence peut ne pas être immédiate dans certaines situations. Dans certains cas, lors d’une mise à jour de compartiment, certains objets peuvent présenter une cohérence éventuelle plutôt qu’une cohérence immédiate.

Performances limitées pour les petits objets

S3 n’est peut-être pas la meilleure option pour les applications qui nécessitent un accès à très faible latence à de petits objets, car la surcharge liée à l’établissement de connexions et à l’authentification peut être relativement élevée pour les petites requêtes.

Capacités d’indexation et de recherche limitées

S3 est conçu pour faciliter le stockage et la récupération d’objets, mais ne dispose pas de fonctions avancées de recherche et d’indexation. Les utilisateurs qui ont besoin d’effectuer des requêtes complexes sur leurs données peuvent avoir besoin d’intégrer des services ou des outils supplémentaires.

Surcharge de gestion des versions

Bien que la gestion des versions soit une fonctionnalité de S3, elle peut entraîner une augmentation des coûts de stockage et de la complexité. Le stockage de plusieurs versions d’un même objet peut s’accumuler au fil du temps et entraîner des dépenses plus élevées.

Gestion limitée du cycle de vie

Bien que S3 fournisse des stratégies de cycle de vie pour la gestion des objets, il n’est peut-être pas aussi riche en fonctionnalités que certaines solutions de gestion des données dédiées. Des exigences plus avancées en matière de cycle de vie des données peuvent nécessiter des outils ou des services supplémentaires.

Complexité de la configuration de la sécurité

Bien que S3 offre des fonctionnalités de sécurité robustes, les options de configuration peuvent être complexes. Les utilisateurs doivent gérer soigneusement les contrôles d’accès, les politiques de compartiment et d’autres paramètres de sécurité pour assurer une protection adéquate de leurs données. sinon, leurs sauvegardes peuvent être visibles par le monde entier à leur insu.

Pas de sémantique native du système de fichiers

S3 est un service de stockage d’objets et ne fournit pas de sémantique native du système de fichiers. Cela peut être un inconvénient pour les applications qui nécessitent des opérations au niveau des fichiers et des fonctionnalités de système de fichiers traditionnelles, telles que les services de sauvegarde.

Coûts de transfert de données

Les coûts de transfert de données peuvent être un facteur important, en particulier lors du déplacement de gros volumes de données vers et depuis S3, en particulier entre différentes régions AWS. Cela inclut à la fois le transfert de données au sein d’AWS et le transfert de données vers et depuis Internet. Les coûts de transfert de données s’accumulent rapidement lorsque vous effectuez une opération de vérification ou de restauration de sauvegarde sur vos sauvegardes.

Cohérence globale

S3 est conçu pour être un service distribué à l’échelle mondiale, ce qui est avantageux pour la haute disponibilité. Cependant, il peut être difficile d’obtenir une cohérence globale dans un système distribué, ce qui peut avoir un impact sur les applications qui nécessitent une forte cohérence entre les régions.

Pas de fonctionnalité de recherche native

S3 ne fournit pas de fonctionnalités de recherche intégrées. Cela peut être un problème lorsque vous devez rechercher des fichiers spécifiques afin de les restaurer.

Prise en charge limitée des transactions

S3 n’est pas une base de données traditionnelle et ne fournit pas de support transactionnel comme une base de données relationnelle. Si votre application nécessite des transactions ACID, S3 n’est peut-être pas le meilleur choix pour certains types de stockage de données.

Complexité du contrôle d’accès

Bien que S3 offre un mécanisme de contrôle d’accès, la gestion d’un contrôle d’accès précis pour un grand nombre d’utilisateurs et de ressources peut devenir complexe. Les stratégies IAM, les stratégies de compartiment et les listes de contrôle d’accès (ACL) nécessitent une configuration minutieuse et ne sont pas compatibles avec NTFS dans Windows, par exemple.

Latence

Bien qu’Amazon S3 soit conçu pour une haute disponibilité, l’accès à faible latence peut ne pas convenir à certaines applications en temps réel. Si votre application nécessite un accès aux données à très faible latence, vous devrez peut-être envisager d’autres solutions.

Prise en charge limitée du verrouillage des fichiers

S3 ne prend pas en charge les mécanismes de verrouillage des fichiers, ce qui peut être essentiel pour les applications qui nécessitent un accès exclusif aux fichiers afin d’éviter les conflits dans les mises à jour simultanées. Cela peut être un problème lorsque le même compartiment est utilisé par plusieurs sauvegardes de serveur.

Cohérence éventuelle pour les objets écrasés

Bien que S3 offre une forte cohérence pour la création de nouveaux objets, le remplacement d’un objet existant peut entraîner une cohérence éventuelle. Cela pourrait potentiellement conduire à des scénarios où différents clients voient différentes versions du même objet pendant une brève période.

Courbe d’apprentissage

Comprendre l’ensemble des fonctionnalités, des configurations de sécurité et des meilleures pratiques pour une utilisation efficace de S3 peut nécessiter du temps et des efforts. Cette courbe d’apprentissage peut être un facteur à prendre en compte pour les équipes qui découvrent AWS ou le stockage cloud en général.

Prise en charge limitée des modifications rétroactives

Une fois qu’un objet est stocké dans S3, il peut être difficile de modifier rétroactivement la classe de stockage ou les paramètres de chiffrement. Cela peut entraîner des complexités si vous devez mettre à jour ces paramètres pour un grand volume d’objets existants. Cela entraîne également l’ajout de frais au compte chaque fois qu’un objet doit être modifié.

Impact des politiques de cycle de vie sur les performances

Bien que S3 fournisse des politiques de cycle de vie pour la gestion automatique des données (par exemple, le déplacement d’objets vers Glacier pour archivage), ces stratégies peuvent avoir des implications en termes de performances lors de l’exécution, en particulier pour les opérations à grande échelle.

Coûts des demandes d’API

S3 facture les requêtes d’API, et les coûts s’accumulent, en particulier avec les requêtes à haute fréquence ou de petite taille. Comprendre les modèles d’accès de votre application et optimiser l’utilisation des API est crucial pour contrôler les coûts, mais les coûts ne peuvent pas vraiment être contrôlés à 100 %.

Gestion limitée du chiffrement natif

Bien que S3 prenne en charge le chiffrement côté serveur, la gestion et la rotation des clés de chiffrement peuvent nécessiter des solutions supplémentaires ou une intégration avec AWS Key Management Service (KMS), ce qui ajoute de la complexité à la gestion du cycle de vie des clés.

Contraintes de nommage des compartiments

Les noms de compartiment S3 sont uniques à l’échelle mondiale et, une fois qu’un nom est choisi, il ne peut pas être modifié. Cette contrainte peut s’avérer difficile dans les scénarios où les conventions de nommage doivent être révisées ou lorsqu’il s’agit d’un grand nombre d’équipes gérant leurs propres compartiments.

Limites de taille d’objet

Bien que S3 prenne en charge des objets de très grande taille, il existe une limitation de la taille maximale d’une seule opération PUT (5 Go pour les téléchargements PUT standard et 5 To pour les chargements partitionnés). Cela peut être pris en compte pour les applications traitant des fichiers extrêmement volumineux, telles que les solutions de sauvegarde.

Défis liés à l’intégration de tiers

Certaines applications ou certains outils tiers peuvent ne pas s’intégrer de manière transparente à S3, et des solutions de contournement ou un développement personnalisé peuvent être nécessaires pour faciliter l’interopérabilité. Par exemple, la synchronisation de votre dossier de sauvegarde avec un autre site n’est pas si simple lorsqu’il s’agit de S3.

Vitesse de transfert de données et bande passante

Bien que S3 offre une haute disponibilité, la vitesse à laquelle les données peuvent être transférées vers et depuis S3 est soumise à des limitations de bande passante réseau. Les transferts de données à grande échelle peuvent nécessiter une planification minutieuse afin d’optimiser les performances.

Coûts de sortie des données

Bien que le chargement de données vers S3 soit souvent gratuit ou relativement peu coûteux, la récupération et le transfert de données de S3 vers Internet ou d’autres régions AWS peuvent entraîner des coûts supplémentaires. Il s’agit d’une considération importante pour les applications avec des modèles d’accès fréquents aux données. De plus, l’étranglement de la vitesse est couramment utilisé pour ralentir la sortie à certains moments.

Dépendance vis-à-vis de la connectivité Internet

L’accès à S3 dépend de la connectivité Internet. Si votre application est hébergée dans un environnement où la connectivité Internet est limitée ou peu fiable, cela peut avoir un impact sur la fiabilité et la disponibilité de vos sauvegardes.

Complexité de la réplication entre régions

Bien que S3 prenne en charge la réplication entre régions pour la redondance des données et la récupération d’urgence, la gestion et la configuration de la réplication entre régions peuvent s’avérer complexes. De plus, les coûts de transfert de données entre les régions peuvent s’accumuler.

Coûts d’accélération du transfert S3

Bien que S3 Transfer Acceleration puisse accélérer les chargements vers S3 en utilisant les emplacements périphériques distribués dans le monde entier d’Amazon CloudFront, il s’accompagne de coûts supplémentaires. Les utilisateurs doivent peser les avantages par rapport aux dépenses associées.

Contrôle d’accès limité et précis pour la gestion des versions

Bien que S3 prenne en charge la gestion des versions, la gestion des contrôles d’accès pour des versions spécifiques d’un objet peut s’avérer difficile. Le contrôle d’accès précis pour les versions individuelles peut nécessiter des rôles IAM ou des stratégies de compartiment supplémentaires.

Limites de taille des métadonnées

Les métadonnées associées à chaque objet S3 sont limitées en taille. Si votre application nécessite des métadonnées étendues pour chaque objet, vous devrez peut-être envisager d’autres solutions de stockage ou des bases de données externes pour gérer les métadonnées.

Coûts de stockage de la gestion des versions

L’activation de la gestion des versions augmente les coûts de stockage, car chaque version d’un objet est stockée séparément. Cela peut entraîner des coûts de stockage plus élevés que prévu si la gestion des versions est activée pour un grand nombre d’objets avec des mises à jour fréquentes.

Surcharge de suppression d’objets

La suppression d’un grand nombre d’objets d’un compartiment S3 peut prendre du temps et le processus peut être soumis à certaines limitations de débit. Cela peut être une considération pour les applications avec un taux de rotation élevé des objets.

Capacités de journalisation à accès limité

Bien que S3 fournisse des journaux d’accès qui capturent des informations sur les demandes adressées à un compartiment, la granularité de ces journaux peut ne pas être suffisante pour répondre à certaines exigences avancées en matière d’audit et de surveillance.

Gestion des versions pour tous les objets d’un compartiment

Une fois que le contrôle de version est activé pour un compartiment, il s’applique à tous les objets de ce compartiment. Ce manque de granularité peut être un facteur à prendre en compte pour les applications qui nécessitent une gestion des versions uniquement pour des sous-ensembles de données spécifiques.

Coûts d’extraction des données pour Glacier et Glacier Deep Archive

Si vous utilisez S3 Glacier ou Glacier Deep Archive pour l’archivage à long terme, la récupération des données de ces classes de stockage peut entraîner des coûts supplémentaires et des délais de récupération importants lorsque vous devez restaurer vos sauvegardes.

Limitation du débit sur les appels d’API S3

S3 impose des limites de débit sur certaines opérations d’API, et le dépassement de ces limites peut entraîner une limitation temporaire. La compréhension de ces limites est cruciale pour les applications avec des taux de requêtes élevés, ce qui est courant pendant les processus de sauvegarde.

Journalisation limitée pour les modifications de données

Bien que S3 fournisse des journaux d’accès pour le suivi des demandes adressées à un compartiment, il se peut qu’il ne capture pas d’informations précises sur les modifications apportées au contenu d’un objet. Le suivi détaillé des modifications peut nécessiter des solutions de journalisation personnalisées supplémentaires.

Surcharge de chargement partitionné

Bien que les chargements partitionnés soient utiles pour les transferts d’objets volumineux, la gestion du processus de chargement partitionné entraîne des frais supplémentaires supplémentaires. Les chargements partitionnés abandonnés ou incomplets peuvent entraîner des coûts de stockage et doivent être régulièrement examinés et nettoyés.

Compromis sur l’accélération du transfert de données

S3 Transfer Acceleration peut améliorer les vitesses de téléchargement, mais cela entraîne des coûts supplémentaires. Les utilisateurs doivent évaluer si les gains de performances justifient les dépenses supplémentaires pour leurs cas d’utilisation spécifiques.

Implications de la gestion des versions de compartiment

L’activation de la gestion des versions pour un compartiment affecte non seulement les coûts de stockage, mais également la façon dont les données sont gérées. Cela peut avoir un impact sur la façon dont les objets sont supprimés, et les développeurs doivent être conscients des implications pour leur logique d’application spécifique.

Sélection et compression S3

Lors de l’utilisation de S3 Select sur des objets compressés, le type et le format de compression doivent être compatibles avec S3 Select. Certains formats de compression peuvent ne pas être pris en charge, et la sélection de données à partir de certains types d’objets compressés peut entraîner des coûts de traitement supplémentaires.

Point de terminaison d’accélération du transfert de données

L’utilisation de S3 Transfer Acceleration nécessite l’accès à un point de terminaison spécifique (par exemple, .s3-accelerate.amazonaws.com). Ce point de terminaison peut ne pas être géographiquement optimisé pour tous les utilisateurs, et certains utilisateurs peuvent rencontrer des performances plus lentes.

Gestion des versions de compartiment et interaction d’accélération de transfert S3

L’activation à la fois de la gestion des versions et de l’accélération du transfert sur un compartiment peut entraîner une augmentation des coûts et avoir un impact sur les performances et le comportement de vos applications. Il est important de comprendre les interactions entre ces fonctionnalités.

Variabilité des performances

Les performances de S3 peuvent varier en fonction de facteurs tels que l’emplacement géographique du compartiment, la taille des objets et les modèles d’accès. Il est important de comprendre ces variations pour les applications ayant des exigences de performance spécifiques.

Limitations du verrouillage d’objet

Bien que S3 fournisse Object Lock pour la conservation des données et la protection contre la suppression d’objets, il présente certaines limitations. Le verrouillage d’objet peut être appliqué au niveau du compartiment ou de l’objet, et la modification ou la suppression du verrouillage peut être soumise à des restrictions.

Comprendre les coûts de transfert S3

Outre les coûts de transfert de données, les utilisateurs doivent être conscients des coûts associés à l’accélération du transfert S3 et à la réplication entre régions, car ils peuvent contribuer aux dépenses globales.

L’alternative : la solution de sauvegarde dans le cloud BackupChain

Au lieu d’acheter du stockage auprès d’un fournisseur S3, envisagez d’utiliser le service BackupChain Cloud Backup à la place. Vous bénéficiez d’un logiciel de sauvegarde sous licence perpétuelle avec le stockage cloud dont vous avez besoin. Outre l’aspect technique, vous bénéficiez également d’une assistance technique compétente qui vous aidera à configurer, surveiller et restaurer vos sauvegardes et sera disponible chaque fois que vous aurez besoin d’aide. Jetez un coup d’œil à BackupChain dès aujourd’hui et essayez-le vous-même :

Plus de tutoriels sur la sauvegarde