Pourquoi existe-t-il une divergence entre les métriques de stockage et de taille entre la console Amazon S3 et Amazon CloudWatch ?

Dernière mise à jour : 03/12/2021

Je constate un écart entre le chiffre « Calculer la taille totale » dans la console Amazon Simple Storage Service (Amazon S3) et les métriques de stockage quotidiennes Amazon CloudWatch. Pourquoi y a-t-il une divergence dans les métriques rapportées par les deux sources ?

Brève description

En cas de divergence entre vos métriques de stockage CloudWatch et Calculer la taille totale dans la console Amazon S3, vérifiez si les conditions suivantes sont remplies :

  • La gestion des versions des objets est activée.
    Remarque : la fonctionnalité de gestion des versions d'objet d'Amazon S3 conserve plusieurs versions d'un objet dans votre compartiment. Par défaut, la gestion des versions des objets Amazon S3 est désactivée sur les compartiments, et vous devez explicitement activer la fonctionnalité.
  • Des chargements partitionnés incomplets existent.
    Remarque : les chargements partitionnés incomplets ne sont pas visibles dans la console Amazon S3, mais sont calculés dans le cadre du stockage par les métriques CloudWatch.

Pour identifier la cause de l'écart dans les rapports, vérifiez si vous avez activé la gestion des versions des objets et recherchez les chargements partitionnés dans votre compartiment. Ces deux facteurs peuvent entraîner une augmentation de la valeur de la taille de compartiment calculée par CloudWatch. Pour plus d'informations, veuillez consulter la section Métriques de stockage quotidiennes Amazon S3 CloudWatch pour les compartiments.

Conseil : si vous avez des chargements partitionnés incomplets dans Amazon S3, envisagez de créer une règle de configuration du cycle de vie. Cette règle de configuration du cycle de vie peut automatiquement nettoyer toutes les pièces incomplètes, réduisant ainsi le coût de stockage des données. Notez que les règles de cycle de vie fonctionnent de manière asynchrone, de sorte qu'il peut y avoir un retard dans l'opération. Toutefois, dès que les objets sont marqués pour suppression, le stockage ne vous est plus facturé (même si l'objet n'est pas encore supprimé).

En outre, les métriques de surveillance Amazon S3 sont enregistrées une fois par jour et peuvent donc ne pas afficher les informations les plus récentes. En attendant, CloudWatch surveille vos ressources et applications AWS en temps réel.

Résolution

Métriques de stockage quotidiennes dans CloudWatch

Dans CloudWatch, la métrique BucketSizeBytes capture tous les types de stockage Amazon S3 et Amazon S3 Glacier, les versions d'objet et tous les chargements partitionnés incomplets. Cette valeur est calculée en additionnant toutes les tailles d'objet, les métadonnées de votre compartiment (objets actuels et non actuels) et toutes les tailles de chargements partitionnés incomplets. Par exemple, la métrique BucketSizeBytes calcule la quantité de données (en octets) stockées dans un compartiment Amazon S3 dans toutes les classes de stockage d'objets suivantes :

  • S3 Standard
  • Hiérarchisation intelligente S3
  • S3 Standard - IA
  • S3 unizone – Accès peu fréquent
  • Stockage S3 à redondance réduite
  • S3 Glacier Deep Archive
  • S3 Glacier

En outre, la métrique NumberOfObjects de CloudWatch contient le nombre total d'objets stockés dans un compartiment pour toutes les classes de stockage. Cette valeur compte tous les objets du compartiment (actuels et non actuels), ainsi que le nombre total d'articles pour les chargements partitionnés incomplets. La métrique NumberOfObjects calcule également le nombre total d'objets pour toutes les versions des objets de votre compartiment. Par exemple, si vous avez deux versions du même objet, les deux versions sont comptées comme deux objets distincts. Pour plus d'informations, veuillez consulter la section Métriques et dimensions.

« Calculer la taille totale » dans la console Amazon S3

Pour calculer la taille de votre compartiment à partir de la console Amazon S3, vous pouvez utiliser l'action Calculer la taille totale. Amazon S3 calcule ensuite la taille de stockage de votre compartiment. Toutefois, notez que les chargements partitionnés et les versions précédentes ou non actuelles ne sont pas calculés dans la taille totale du compartiment. Amazon S3 calcule uniquement le nombre total d'objets pour la version actuelle ou la plus récente de chaque objet stocké dans le compartiment. Par exemple, s'il existe deux versions d'un objet dans votre compartiment, le calculateur de stockage d'Amazon S3 les compte comme un seul objet. Par conséquent, le nombre calculé dans la console Amazon S3 est inférieur à celui rapporté par CloudWatch.

Chargements partitionnés incomplets

Pour consulter la liste des chargements partitionnés incomplets, exécutez la commande list-multipart-uploads :

aws s3api list-multipart-uploads --bucket <bucket-example>

Ensuite, répertoriez tous les objets du chargement partitionné, à l'aide de la commande list-parts et de votre valeur UploadId :

aws s3api list-parts --bucket <bucket-example> --key large_test_file --upload-id <examplevalue>

Créer une règle de cycle de vie

Pour supprimer automatiquement les chargements partitionnés, vous pouvez créer une règle de configuration du cycle de vie. Procédez comme suit :

1.    Ouvrez la console Amazon S3.

2.    Choisissez l'onglet Gestion.

3.    Choisissez Créer une nouvelle politique.

4.    Ajoutez le nom de la politique.

5.    Choisissez Supprimer les marqueurs de suppression expirés ou les chargements partitionnés incomplets.

6.    (Facultatif) Si votre compartiment n'est pas versionné, choisissez Supprimer les chargements partitionnés incomplets.

Gestion des versions des objets

Pour consulter et auditer votre compartiment Amazon S3 pour différentes versions d'objets, utilisez la liste d'inventaire Amazon S3. Un fichier de liste d'inventaire Amazon S3 contient une liste des objets du compartiment source et des métadonnées pour chaque objet. Le fichier de liste d'inventaire capture des métadonnées telles que le nom du compartiment, la taille de l'objet, la classe de stockage et l'ID de version.


Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?