Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Comment Amazon S3 gère les conflits dans les configurations du cycle de vie
En général, le cycle de vie Amazon S3 optimise les coûts. Par exemple, si deux stratégies d'expiration se chevauchent, la stratégie d'expiration la plus courte est appliquée pour que des données ne soient pas stockées plus longtemps que prévu. De même, si deux stratégies de transition se chevauchent, le cycle de vie S3 effectue la transition de vos objets vers la classe de stockage au coût le plus bas.
Dans les deux cas, le cycle de vie S3 tente de choisir ce qui est le moins cher pour vous. La classe de stockage S3 Intelligent-Tiering (Hiérarchisation intelligente) constitue une exception à cette règle générale. S3 Lifecycle privilégie S3 Intelligent-Tiering par rapport à n'importe quelle classe de stockage, à l'exception des classes de stockage S3 Glacier et S3 Glacier Deep Archive.
Lorsqu'une configuration S3 Lifecycle comporte plusieurs règles, un objet peut devenir éligible à plusieurs actions du cycle de vie S3 le même jour. Dans de tels cas, Amazon S3 suit les règles générales suivantes :
-
La suppression permanente a priorité sur la transition.
-
La transition a priorité sur la création de marqueurs de suppression.
-
Lorsqu'un objet est éligible à la fois à une transition S3 Glacier Flexible Retrieval et à une transition S3 Standard-IA (ou S3 One Zone-IA), Amazon S3 choisit la transition S3 Glacier Flexible Retrieval.
Exemples de filtres qui se chevauchent et d'actions de cycle de vie conflictuelles
Vous pouvez définir une configuration de cycle de vie S3 dans laquelle vous spécifiez des préfixes ou des actions se chevauchant. Les exemples suivants illustrent comment Amazon S3 résout les conflits potentiels.
Exemple 1 : Chevauchement de préfixes (aucun conflit)
L'exemple de configuration suivant comporte deux règles qui indiquent des préfixes qui se chevauchent comme suit :
-
La première règle spécifie un filtre vide, indiquant tous les objets du compartiment.
-
La deuxième règle spécifie un préfixe de nom de clé (
logs/
), indiquant uniquement un sous-ensemble d'objets.
La règle 1 demande à Amazon S3 de supprimer tous les objets un an après leur création. La règle 2 demande à Amazon S3 d'effectuer la transition d'un sous-ensemble d'objets vers la classe de stockage S3 standard – Accès peu fréquent 30 jours après la création.
<LifecycleConfiguration> <Rule> <ID>Rule 1</ID> <Filter> </Filter> <Status>Enabled</Status> <Expiration> <Days>365</Days> </Expiration> </Rule> <Rule> <ID>Rule 2</ID> <Filter> <Prefix>logs/</Prefix> </Filter> <Status>Enabled</Status> <Transition> <StorageClass>STANDARD_IA<StorageClass> <Days>30</Days> </Transition> </Rule> </LifecycleConfiguration>
Comme il n'y a pas de conflit dans ce cas, Amazon S3 effectue la transition des objets avec le préfixe logs/
vers la classe de stockage S3 standard – Accès peu fréquent 30 jours après leur création. Les objets sont ensuite supprimés un an après leur création.
Exemple 2 : Actions de cycle de vie contradictoires
Dans cet exemple de configuration, il existe deux règles qui indiquent à Amazon S3 d'effectuer en même temps deux actions différentes sur le même ensemble d'objets pendant la durée de vie des objets :
-
Les deux règles spécifient le même préfixe de nom de clé et les deux règles s'appliquent par conséquent au même ensemble d'objets.
-
Les deux règles spécifient les mêmes 365 jours après la création de l'objet lorsque les règles s'appliquent.
-
Une règle indique à Amazon S3 d'effectuer la transition d'objets vers la classe de stockage S3 standard – Accès peu fréquent et une autre règle veut qu'Amazon S3 fasse expirer les objets en même temps.
<LifecycleConfiguration> <Rule> <ID>Rule 1</ID> <Filter> <Prefix>logs/</Prefix> </Filter> <Status>Enabled</Status> <Expiration> <Days>365</Days> </Expiration> </Rule> <Rule> <ID>Rule 2</ID> <Filter> <Prefix>logs/</Prefix> </Filter> <Status>Enabled</Status> <Transition> <StorageClass>STANDARD_IA<StorageClass> <Days>365</Days> </Transition> </Rule> </LifecycleConfiguration>
Dans ce cas, étant donné que vous voulez que les objets expirent (soient supprimés), il est inutile de modifier la classe de stockage. Par conséquent, Amazon S3 choisit l'action d'expiration sur ces objets.
Exemple 3 : Chevauchement de préfixes entraînant des actions de cycle de vie contradictoires
Dans cet exemple, la configuration comporte deux règles qui indiquent des préfixes qui se chevauchent comme suit :
-
La règle 1 spécifie un préfixe vide (indiquant tous les objets).
-
La règle 2 spécifie un préfixe de nom de clé (
logs/
) qui identifie un sous-ensemble de tous les objets.
Pour le sous-ensemble d'objets avec le préfixe de nom de clé logs/
, les actions de cycle de vie S3 dans les deux règles s'appliquent. Une règle indique à Amazon S3 d'effectuer la transition des objets 10 jours après leur création et une autre règle indique à Amazon S3 d'effectuer la transition des objets 365 jours après leur création.
<LifecycleConfiguration> <Rule> <ID>Rule 1</ID> <Filter> <Prefix></Prefix> </Filter> <Status>Enabled</Status> <Transition> <StorageClass>STANDARD_IA<StorageClass> <Days>10</Days> </Transition> </Rule> <Rule> <ID>Rule 2</ID> <Filter> <Prefix>logs/</Prefix> </Filter> <Status>Enabled</Status> <Transition> <StorageClass>STANDARD_IA<StorageClass> <Days>365</Days> </Transition> </Rule> </LifecycleConfiguration>
Dans ce cas, Amazon S3 choisit d'effectuer leur transition 10 jours après leur création.
Exemple 4 : Filtrage basé sur des balises et actions du cycle de vie contradictoires générées
Supposons que vous avez la configuration de cycle de vie S3 suivante qui a deux règles, chacune spécifiant un filtre de balise :
-
La règle 1 spécifie un filtre basé sur une balise (
tag1/value1
). Cette règle indique à Amazon S3 d'effectuer la transition des objets vers la classe de stockage S3 Glacier Flexible Retrieval 365 jours après leur création. -
La règle 2 spécifie un filtre basé sur une balise (
tag2/value2
). Cette règle indique à Amazon S3 de faire expirer les objets 14 jours après leur création.
La configuration de cycle de vie S3 est illustrée dans l'exemple suivant.
<LifecycleConfiguration> <Rule> <ID>Rule 1</ID> <Filter> <Tag> <Key>tag1</Key> <Value>value1</Value> </Tag> </Filter> <Status>Enabled</Status> <Transition> <StorageClass>GLACIER<StorageClass> <Days>365</Days> </Transition> </Rule> <Rule> <ID>Rule 2</ID> <Filter> <Tag> <Key>tag2</Key> <Value>value2</Value> </Tag> </Filter> <Status>Enabled</Status> <Expiration> <Days>14</Days> </Expiration> </Rule> </LifecycleConfiguration>
Si un objet possède les deux balises, Amazon S3 doit décider de la règle à suivre. Dans ce cas, Amazon S3 fait expirer l'objet 14 jours après sa création. L'objet est supprimé et, par conséquent, l'action de transition ne s'applique pas.