Optimiser les coûts en automatisant les niveaux d’accès au stockage Blob AzureOptimize costs by automating Azure Blob Storage access tiers

Les jeux de données ont des cycles de vie différents.Data sets have unique lifecycles. Tôt dans le cycle de vie, les utilisateurs accèdent souvent à certaines données.Early in the lifecycle, people access some data often. Mais à mesure que les données vieillissent, le nombre d’accès diminue considérablement.But the need for access drops drastically as the data ages. Certaines données restent inactives dans le cloud et sont rarement sollicitées une fois stockées.Some data stays idle in the cloud and is rarely accessed once stored. Certaines expirent plusieurs jours ou mois après leur création, tandis que d’autres jeux de données sont lus et modifiés de manière active tout au long de leur vie.Some data expires days or months after creation, while other data sets are actively read and modified throughout their lifetimes. La gestion du cycle de vie du stockage Blob Azure offre une stratégie complète basée sur des règles pour les comptes de stockage Blob et GPv2.Azure Blob Storage lifecycle management offers a rich, rule-based policy for GPv2 and blob storage accounts. Utilisez la stratégie pour effectuer la transition de vos données vers les niveaux d’accès appropriés ou pour faire en sorte qu’elles expirent à la fin de leur cycle de vie.Use the policy to transition your data to the appropriate access tiers or expire at the end of the data's lifecycle.

La gestion du cycle de vie vous permet de :The lifecycle management policy lets you:

  • Transférer des objets blob du niveau froid au niveau chaud dès qu’ils sont consultés pour optimiser les performancesTransition blobs from cool to hot immediately if accessed to optimize for performance
  • Transférer les objets blob, les versions d’objets blob et les instantanés d’objets blob vers un niveau de stockage plus froid (des niveaux chaud à froid, chaud à archive ou froid à archive) s’ils ne sont pas consultés ni modifiés pendant une certaine période afin d’optimiser le coûtTransition blobs, blob versions, and blob snapshots to a cooler storage tier (hot to cool, hot to archive, or cool to archive) if not accessed or modified for a period of time to optimize for cost
  • Supprimer les objets blob, les versions d’objets blob et les instantanés d’objets blob à la fin de leur cycle de vieDelete blobs, blob versions, and blob snapshots at the end of their lifecycles
  • Définir des règles à exécuter une fois par jour au niveau du compte de stockage.Define rules to be run once per day at the storage account level
  • Appliquer des règles à des conteneurs ou à un sous-ensemble d’objets blob (en utilisant des préfixes de noms ou des balises d’index d’objets blob en tant que filtres)Apply rules to containers or a subset of blobs (using name prefixes or blob index tags as filters)

Considérez un scénario où des données sont sollicitées fréquemment durant les premières étapes du cycle de vie, mais seulement occasionnellement après deux semaines.Consider a scenario where data gets frequent access during the early stages of the lifecycle, but only occasionally after two weeks. Au-delà du premier mois, le jeu de données est rarement sollicité.Beyond the first month, the data set is rarely accessed. Dans ce scénario, le stockage chaud est préférable durant les premiers temps.In this scenario, hot storage is best during the early stages. Un stockage froid est plus approprié pour un accès occasionnel.Cool storage is most appropriate for occasional access. L’option Stockage archive est la meilleure une fois que les données ont plus d’un mois.Archive storage is the best tier option after the data ages over a month. En ajustant les niveaux de stockage en fonction de l’ancienneté des données, vous pouvez concevoir les options de stockage les moins coûteuses par rapport à vos besoins.By adjusting storage tiers in respect to the age of data, you can design the least expensive storage options for your needs. Pour effectuer cette transition, les règles de stratégie de gestion du cycle de vie permettent de déplacer les données vieillissantes vers des niveaux plus froids.To achieve this transition, lifecycle management policy rules are available to move aging data to cooler tiers.

Notes

Les fonctionnalités décrites dans cet article sont désormais disponibles pour les comptes dotés d'un espace de noms hiérarchique.The features described in this article are now available to accounts that have a hierarchical namespace. Pour savoir quelles sont les limitations, consultez l’article Fonctionnalités de stockage blob disponibles dans Azure Data Lake Storage Gen2.To review limitations, see the Blob storage features available in Azure Data Lake Storage Gen2 article.

Notes

Si vous avez besoin que les données restent lisibles, par exemple, quand elles sont utilisées par StorSimple, ne définissez pas de stratégie pour déplacer des objets blob vers le niveau Archive.If you need data to stay readable, for example, when used by StorSimple, do not set a policy to move blobs to the Archive tier.

Disponibilité et tarificationAvailability and pricing

La fonctionnalité de gestion du cycle de vie est disponible dans toutes les régions Azure pour les comptes v2 universels (GPv2), les comptes de stockage Blob, les comptes de stockage Blob de blocs Premium et les comptes Azure Data Lake Storage Gen2.The lifecycle management feature is available in all Azure regions for General Purpose v2 (GPv2) accounts, blob storage accounts, Premium Block Blob storage accounts, and Azure Data Lake Storage Gen2 accounts. Dans le portail Azure, vous pouvez mettre à niveau un compte de stockage universel (GPv1) existant en compte GPv2.In the Azure portal, you can upgrade an existing General Purpose (GPv1) account to a GPv2 account. Pour plus d’informations sur les comptes de stockage, consultez Vue d’ensemble des comptes de stockage Azure.For more information about storage accounts, see Azure storage account overview.

La fonctionnalité de gestion du cycle de vie est gratuite.The lifecycle management feature is free of charge. Les clients sont facturés au coût de fonctionnement normal pour les appels d’API Définir le niveau d’objet blob.Customers are charged the regular operation cost for the Set Blob Tier API calls. L’opération de suppression est gratuite.Delete operation is free. Pour plus d’informations sur les prix, consultez Tarification Objets blob de blocs.For more information about pricing, see Block Blob pricing.

Ajouter ou supprimer une stratégieAdd or remove a policy

Vous pouvez ajouter, modifier ou supprimer une stratégie à l’aide de l’une des méthodes suivantes :You can add, edit, or remove a policy by using any of the following methods:

Une stratégie peut être lue ou écrite dans son intégralité.A policy can be read or written in full. Les mises à jour partielles ne sont pas prises en charge.Partial updates are not supported.

Notes

Si vous activez les règles de pare-feu de votre compte de stockage, les requêtes de gestion du cycle de vie peuvent être bloquées.If you enable firewall rules for your storage account, lifecycle management requests may be blocked. Vous pouvez débloquer ces requêtes en fournissant des exceptions pour les services Microsoft approuvés.You can unblock these requests by providing exceptions for trusted Microsoft services. Pour plus d’informations, consultez la section Exceptions dans Configurer des pare-feu et des réseaux virtuels.For more information, see the Exceptions section in Configure firewalls and virtual networks.

Cet article explique comment gérer une stratégie en utilisant le portail et des méthodes PowerShell.This article shows how to manage policy by using the portal and PowerShell methods.

Il existe deux façons d’ajouter une stratégie à l’aide du Portail Microsoft Azure.There are two ways to add a policy through the Azure portal.

Mode Liste du Portail Microsoft AzureAzure portal List view

  1. Connectez-vous au portail Azure.Sign in to the Azure portal.

  2. Dans le Portail Azure, recherchez et sélectionnez votre compte de stockage.In the Azure portal, search for and select your storage account.

  3. Sous Service Blob, sélectionnez Gestion du cycle de vie pour afficher ou modifier vos règles.Under Blob service, select Lifecycle Management to view or change your rules.

  4. Sélectionnez l’onglet Mode Liste.Select the List View tab.

  5. Sélectionnez Ajouter une règle et nommez votre règle dans le formulaire Détails.Select Add a rule and name your rule on the Details form. Vous pouvez également définir les l’Étendue de la règle, le Type d’objet blob et le Sous-type d’objet blob.You can also set the Rule scope, Blob type, and Blob subtype values. L’exemple suivant définit l’étendue pour filtrer les objets blob.The following example sets the scope to filter blobs. Cela entraîne l’ajout de l’onglet Jeu de filtres.This causes the Filter set tab to be added.

    Gestion du cycle de vie - Ajouter une page Détails de la règle dans le Portail Azure

  6. Sélectionnez Objets blob de base pour définir les conditions de votre règle.Select Base blobs to set the conditions for your rule. Dans l’exemple suivant, les objets BLOB sont déplacés vers le stockage froid s’ils n’ont pas été modifiés depuis 30 jours.In the following example, blobs are moved to cool storage if they haven't been modified for 30 days.

    Page Gestion de cycle de vie des objets blob de base du Portail Microsoft Azure

    L’option Dernier accès est disponible en préversion dans les régions suivantes :The Last accessed option is available in preview in the following regions:

    • France CentreFrance Central
    • Est du CanadaCanada East
    • Centre du CanadaCanada Central

    Important

    La dernière préversion du suivi de l’heure d’accès concerne uniquement l’utilisation en dehors de la production.The last access time tracking preview is for non-production use only. Les contrats SLA (contrats de niveau de service) de production ne sont actuellement pas disponibles.Production service-level agreements (SLAs) are not currently available.

    Pour utiliser l’option Dernier accès, sélectionnez Duivi d’accès activé sur la page Gestion du cycle de vie du Portail Azure.In order to use the Last accessed option, select Access tracking enabled on the Lifecycle Management page in the Azure portal. Pour plus d’informations sur l’option Dernier accès, consultez Déplacer des données en fonction de la date du dernier accès (préversion).For more information about the Last accessed option, see Move data based on last accessed date (preview).

  7. Si vous avez sélectionné Limiter les objets blob avec des filtres dans la page Détails, sélectionnez Jeu de filtres pour ajouter un filtre facultatif.If you selected Limit blobs with filters on the Details page, select Filter set to add an optional filter. L’exemple suivant filtre sur les objets blob dans le conteneur mylifecyclecontainer qui commencent par « log ».The following example filters on blobs in the mylifecyclecontainer container that begin with "log".

    Page Lifecycle management action set (Jeu de filtres de gestion du cycle de vie) du Portail Microsoft Azure

  8. Sélectionnez Ajouter pour ajouter la stratégie.Select Add to add the new policy.

Mode Code du Portail Microsoft AzureAzure portal Code view

  1. Connectez-vous au portail Azure.Sign in to the Azure portal.

  2. Dans le Portail Azure, recherchez et sélectionnez votre compte de stockage.In the Azure portal, search for and select your storage account.

  3. Sous Service Blob, sélectionnez Gestion du cycle de vie pour afficher ou modifier votre stratégie.Under Blob service, select Lifecycle Management to view or change your policy.

  4. Le code JSON suivant est un exemple de stratégie que vous pouvez coller dans l’onglet Mode Code.The following JSON is an example of a policy that can be pasted into the Code View tab.

    {
      "rules": [
        {
          "enabled": true,
          "name": "move-to-cool",
          "type": "Lifecycle",
          "definition": {
            "actions": {
              "baseBlob": {
                "tierToCool": {
                  "daysAfterModificationGreaterThan": 30
                }
              }
            },
            "filters": {
              "blobTypes": [
                "blockBlob"
              ],
              "prefixMatch": [
                "mylifecyclecontainer/log"
              ]
            }
          }
        }
      ]
    }
    
  5. Sélectionnez Enregistrer.Select Save.

  6. Pour plus d’informations sur cet exemple de JSON, voir les sections Stratégie et Règles.For more information about this JSON example, see the Policy and Rules sections.

StratégiePolicy

Une stratégie de gestion du cycle de vie est un ensemble de règles dans un document JSON :A lifecycle management policy is a collection of rules in a JSON document:

{
  "rules": [
    {
      "name": "rule1",
      "enabled": true,
      "type": "Lifecycle",
      "definition": {...}
    },
    {
      "name": "rule2",
      "type": "Lifecycle",
      "definition": {...}
    }
  ]
}

Une stratégie est un ensemble de règles :A policy is a collection of rules:

Nom du paramètreParameter name Type de paramètreParameter type NotesNotes
rules Un ensemble d’objets de règleAn array of rule objects Une stratégie requiert au moins une règle.At least one rule is required in a policy. Vous pouvez définir jusqu’à 100 règles dans une stratégie.You can define up to 100 rules in a policy.

Chaque règle au sein de la stratégie a plusieurs paramètres :Each rule within the policy has several parameters:

Nom du paramètreParameter name Type de paramètreParameter type NotesNotes ObligatoireRequired
name StringString Un nom de règle peut compter jusqu’à 256 caractères alphanumériques.A rule name can include up to 256 alphanumeric characters. Les noms de règle respectent la casse.Rule name is case-sensitive. Ils doivent être uniques dans la stratégie.It must be unique within a policy. TrueTrue
enabled BooleanBoolean Valeur booléenne facultative pour permettre la désactivation temporaire d’une règle.An optional boolean to allow a rule to be temporary disabled. La valeur par défaut est true.Default value is true if it's not set. FalseFalse
type Une valeur enumAn enum value Le type valide actuel est Lifecycle.The current valid type is Lifecycle. TrueTrue
definition Un objet qui définit la règle du cycle de vieAn object that defines the lifecycle rule Chaque définition se compose d’un jeu de filtres et d’un jeu d’actions.Each definition is made up of a filter set and an action set. TrueTrue

RèglesRules

Chaque définition de règle se compose d’un jeu de filtres et d’un jeu d’actions.Each rule definition includes a filter set and an action set. Le jeu de filtres limite les actions de règle à un certain ensemble d’objets dans un conteneur ou des noms d’objets.The filter set limits rule actions to a certain set of objects within a container or objects names. L’ensemble d’actions applique les actions de niveau ou de suppression à l’ensemble d’objets filtré.The action set applies the tier or delete actions to the filtered set of objects.

Exemple de règleSample rule

L’exemple de règle suivant filtre le compte pour exécuter les actions sur des objets existant à l’intérieur de container1 et commençant par foo.The following sample rule filters the account to run the actions on objects that exist inside container1 and start with foo.

Notes

  • La gestion du cycle de vie prend en charge les types objets blob de bloc et d’ajout.Lifecycle management supports block blob and append blob types.
  • La gestion du cycle de vie n’affecte pas les conteneurs système comme $logs et $web.Lifecycle management does not affect system containers like $logs and $web.
  • Niveau objet blob sur accès froid 30 jours après la dernière modificationTier blob to cool tier 30 days after last modification
  • Niveau objet blob sur accès archive 90 jours après la dernière modificationTier blob to archive tier 90 days after last modification
  • Supprimer l’objet blob 2 555 jours (sept ans) après la dernière modificationDelete blob 2,555 days (seven years) after last modification
  • Supprimer les versions précédentes des objets blob 90 jours après leur créationDelete previous blob versions 90 days after creation
{
  "rules": [
    {
      "enabled": true,
      "name": "rulefoo",
      "type": "Lifecycle",
      "definition": {
        "actions": {
          "version": {
            "delete": {
              "daysAfterCreationGreaterThan": 90
            }
          },
          "baseBlob": {
            "tierToCool": {
              "daysAfterModificationGreaterThan": 30
            },
            "tierToArchive": {
              "daysAfterModificationGreaterThan": 90
            },
            "delete": {
              "daysAfterModificationGreaterThan": 2555
            }
          }
        },
        "filters": {
          "blobTypes": [
            "blockBlob"
          ],
          "prefixMatch": [
            "container1/foo"
          ]
        }
      }
    }
  ]
}

Filtres de règleRule filters

Les filtres limitent les actions des règles à un sous-ensemble d’objets blob dans le compte de stockage.Filters limit rule actions to a subset of blobs within the storage account. Si plusieurs filtres sont définis, une opération logique AND est exécutée sur tous les filtres.If more than one filter is defined, a logical AND runs on all filters.

Les filtres sont les suivants :Filters include:

Nom du filtreFilter name Type de filtreFilter type NotesNotes Est obligatoireIs Required
blobTypesblobTypes Un ensemble de valeurs enum prédéfinies.An array of predefined enum values. La version actuelle prend en charge blockBlob et appendBlob.The current release supports blockBlob and appendBlob. Seule la suppression est prise en charge pour appendBlob, le niveau défini n’est pas pris en charge.Only delete is supported for appendBlob, set tier is not supported. OuiYes
prefixMatchprefixMatch Un ensemble de chaînes pour les préfixes à mettre en correspondance.An array of strings for prefixes to be matched. Chaque règle peut définir jusqu’à 10 préfixes.Each rule can define up to 10 prefixes. Une chaîne de préfixe doit commencer par un nom de conteneur.A prefix string must start with a container name. Par exemple, si vous souhaitez faire correspondre tous les objets blob sous https://myaccount.blob.core.windows.net/container1/foo/... pour une règle, prefixMatch est container1/foo.For example, if you want to match all blobs under https://myaccount.blob.core.windows.net/container1/foo/... for a rule, the prefixMatch is container1/foo. Si vous ne définissez pas prefixMatch, la règle s’applique à tous les objets blob au sein du compte de stockage.If you don't define prefixMatch, the rule applies to all blobs within the storage account. NonNo
blobIndexMatchblobIndexMatch Un ensemble de valeurs de dictionnaire constitué d’une clé de balise d’index d’objets blob et de conditions de valeur à mettre en correspondance.An array of dictionary values consisting of Blob Index tag key and value conditions to be matched. Chaque règle peut définir jusqu’à 10 conditions de balise d’index d’objets blob.Each rule can define up to 10 Blob Index tag condition. Par exemple, si vous souhaitez mettre en correspondre tous les objets blob avec Project = Contoso sous https://myaccount.blob.core.windows.net/ pour une règle, le blobIndexMatch est {"name": "Project","op": "==","value": "Contoso"}.For example, if you want to match all blobs with Project = Contoso under https://myaccount.blob.core.windows.net/ for a rule, the blobIndexMatch is {"name": "Project","op": "==","value": "Contoso"}. Si vous ne définissez pas blobIndexMatch, la règle s’applique à tous les objets blob au sein du compte de stockage.If you don't define blobIndexMatch, the rule applies to all blobs within the storage account. NonNo

Notes

L’index d’objets blob, actuellement en préversion publique, est disponible dans les régions Canada Centre, Canada Est, France Centre et France Sud.Blob Index is in public preview, and is available in the Canada Central, Canada East, France Central, and France South regions. Pour en savoir plus sur cette fonctionnalité ainsi que sur les problèmes et limitations connus, consultez Gérer et rechercher des données sur le Stockage Blob Azure avec un index d’objets blob (préversion).To learn more about this feature along with known issues and limitations, see Manage and find data on Azure Blob Storage with Blob Index (Preview).

Actions de règleRule actions

Des actions sont appliquées aux objets blob filtrés lorsque la condition d’exécution est remplie.Actions are applied to the filtered blobs when the run condition is met.

La gestion du cycle de vie prend en charge la hiérarchisation et la suppression des objets blob, des versions d’objets blob précédentes et des instantanés d’objets blob.Lifecycle management supports tiering and deletion of blobs, previous blob versions, and blob snapshots. Définissez au moins une action pour chaque règle sur les objets blob de base, les versions d’objets blob précédentes ou les instantanés d’objets blob.Define at least one action for each rule on base blobs, previous blob versions, or blob snapshots.

ActionAction Objet blob de baseBase Blob InstantanéSnapshot VersionVersion
tierToCooltierToCool Prise en charge pour blockBlobSupported for blockBlob Prise en chargeSupported Prise en chargeSupported
enableAutoTierToHotFromCoolenableAutoTierToHotFromCool Prise en charge pour blockBlobSupported for blockBlob Non pris en chargeNot supported Non pris en chargeNot supported
tierToArchivetierToArchive Prise en charge pour blockBlobSupported for blockBlob Prise en chargeSupported Prise en chargeSupported
supprimerdelete Pris en charge pour blockBlob et appendBlobSupported for blockBlob and appendBlob Prise en chargeSupported Prise en chargeSupported

Notes

Si vous définissez plusieurs actions sur le même objet blob, la gestion du cycle de vie applique l’action la moins coûteuse à l’objet blob.If you define more than one action on the same blob, lifecycle management applies the least expensive action to the blob. Par exemple, l’action delete est moins coûteuse que l’action tierToArchive.For example, action delete is cheaper than action tierToArchive. L’action tierToArchive est moins coûteuse que l’action tierToCool.Action tierToArchive is cheaper than action tierToCool.

Les conditions d’exécution sont basées sur l’âge.The run conditions are based on age. Les objets blob de base utilisent l’heure de dernière modification, les versions d’objets blob utilisent l’heure de création de la version et les instantanés d’objets blob utilisent l’heure de création des instantanés pour suivre l’ancienneté.Base blobs use the last modified time, blob versions use the version creation time, and blob snapshots use the snapshot creation time to track age.

Condition d’exécution d’actionAction run condition Valeur de la conditionCondition value DescriptionDescription
daysAfterModificationGreaterThandaysAfterModificationGreaterThan Nombre entier indiquant l’âge en joursInteger value indicating the age in days Condition pour les actions des objets blob de baseThe condition for base blob actions
daysAfterCreationGreaterThandaysAfterCreationGreaterThan Nombre entier indiquant l’âge en joursInteger value indicating the age in days Condition pour les actions de versions d’objets blob et d’instantanés d’objets blobThe condition for blob version and blob snapshot actions
daysAfterLastAccessTimeGreaterThandaysAfterLastAccessTimeGreaterThan Nombre entier indiquant l’âge en joursInteger value indicating the age in days (préversion) La condition pour les actions de base de l’objet blob lorsque l’heure du dernier accès est activée(preview) The condition for base blob actions when last accessed time is enabled

ExemplesExamples

Les exemples suivants expliquent comment résoudre des scénarios courants avec les règles de stratégie du cycle de vie.The following examples demonstrate how to address common scenarios with lifecycle policy rules.

Déplacer les données vieillissantes vers un niveau plus froidMove aging data to a cooler tier

Cet exemple montre comment déplacer des objets blob de blocs ayant le préfixe container1/foo ou container2/bar.This example shows how to transition block blobs prefixed with container1/foo or container2/bar. La stratégie déplace les objets blob qui n’ont pas été modifiés depuis plus de 30 jours vers le stockage froid et les objets blob non modifiés depuis 90 jours vers le niveau archive :The policy transitions blobs that haven't been modified in over 30 days to cool storage, and blobs not modified in 90 days to the archive tier:

{
  "rules": [
    {
      "name": "agingRule",
      "enabled": true,
      "type": "Lifecycle",
      "definition": {
        "filters": {
          "blobTypes": [ "blockBlob" ],
          "prefixMatch": [ "container1/foo", "container2/bar" ]
        },
        "actions": {
          "baseBlob": {
            "tierToCool": { "daysAfterModificationGreaterThan": 30 },
            "tierToArchive": { "daysAfterModificationGreaterThan": 90 }
          }
        }
      }
    }
  ]
}

Déplacer les données en fonction de la date du dernier accès (préversion)Move data based on last accessed date (preview)

Vous pouvez activer le suivi de l’heure du dernier accès pour conserver un enregistrement de la dernière lecture ou écriture de votre objet blob.You can enable last access time tracking to keep a record of when your blob is last read or written. Vous pouvez utiliser l’heure de dernier accès comme filtre pour gérer la hiérarchisation et la rétention de vos données d’objet blob.You can use last access time as a filter to manage tiering and retention of your blob data.

L’option Dernier accès est disponible en préversion dans les régions suivantes :The Last accessed option is available in preview in the following regions:

  • France CentreFrance Central
  • Est du CanadaCanada East
  • Centre du CanadaCanada Central

Important

La dernière préversion du suivi de l’heure d’accès concerne uniquement l’utilisation en dehors de la production.The last access time tracking preview is for non-production use only. Les contrats SLA (contrats de niveau de service) de production ne sont actuellement pas disponibles.Production service-level agreements (SLAs) are not currently available.

Pour utiliser l’option Dernier accès, sélectionnez Duivi d’accès activé sur la page Gestion du cycle de vie du Portail Azure.In order to use the Last accessed option, select Access tracking enabled on the Lifecycle Management page in the Azure portal.

Fonctionnement du suivi de l’heure du dernier accèsHow last access time tracking works

Lorsque le suivi de l’heure du dernier accès est activé, la propriété d’objet blob appelée LastAccessTime est mise à jour lors de la lecture ou de l’écriture d’un objet blob.When last access time tracking is enabled, the blob property called LastAccessTime is updated when a blob is read or written. Une opération Obtenir un objet blob est considérée comme une opération d’accès.A Get Blob operation is considered an access operation. Obtenir les propriétés d’objets blob, Obtenir des métadonnées d’objets blob et Obtenir des étiquettes d’objet blob ne sont pas des opérations d’accès et ne mettent donc pas à jour l’heure du dernier accès.Get Blob Properties, Get Blob Metadata, and Get Blob Tags are not access operations, and therefore don't update the last access time.

Pour réduire l’impact sur la latence d’accès en lecture, seule la première lecture des dernières 24 heures met à jour l’heure du dernier accès.To minimize the impact on read access latency, only the first read of the last 24 hours updates the last access time. Les lectures suivantes dans la même période de 24 heures ne mettent pas à jour l’heure du dernier accès.Subsequent reads in the same 24-hour period do not update the last access time. Si un objet blob est modifié entre des lectures, l’heure du dernier accès est la plus récente des deux valeurs.If a blob is modified between reads, the last access time is the more recent of the two values.

Dans l’exemple suivant, les objets BLOB sont déplacés vers le stockage froid s’ils n’ont pas fait l’objet d’accès depuis 30 jours.In the following example, blobs are moved to cool storage if they haven't been accessed for 30 days. La propriété enableAutoTierToHotFromCool est une valeur booléenne qui indique si un objet blob doit être automatiquement hiérarchisé de froid à chaud s’il fait l’objet d’un accès à nouveau après avoir été hiérarchisé en froid.The enableAutoTierToHotFromCool property is a Boolean value that indicates if a blob should automatically be tiered from cool back to hot if it is accessed again after being tiered to cool.

{
  "enabled": true,
  "name": "last-accessed-thirty-days-ago",
  "type": "Lifecycle",
  "definition": {
    "actions": {
      "baseBlob": {
        "enableAutoTierToHotFromCool": true,
        "tierToCool": {
          "daysAfterLastAccessTimeGreaterThan": 30
        }
      }
    },
    "filters": {
      "blobTypes": [
        "blockBlob"
      ],
      "prefixMatch": [
        "mylifecyclecontainer/log"
      ]
    }
  }
}

Prise en charge du compte de stockageStorage account support

Le suivi de l’heure du dernier accès est disponible pour les types de comptes de stockage suivants :Last access time tracking is available for the following types of storage accounts:

  • Comptes de stockage universel v2General-purpose v2 storage accounts
  • Comptes de stockage d’objets blob de blocsBlock blob storage accounts
  • Comptes de stockage d’objets blobBlob storage accounts

Si votre compte de stockage est un compte v1 à usage général, utilisez le Portail Azure pour effectuer une mise à niveau vers un compte v2 à usage général.If your storage account is a general-purpose v1 account, use the Azure portal to upgrade to a general-purpose v2 account.

Les comptes de stockage avec espace de noms hiérarchique activé pour une utilisation avec Azure Data Lake Storage Gen2 sont désormais pris en charge.Storage accounts with a hierarchical namespace enabled for use with Azure Data Lake Storage Gen2 are now supported.

Tarification et facturationPricing and billing

Chaque mise à jour de l’heure du dernier accès est considérée comme une opération différente.Each last access time update is considered an other operation.

Archiver les données après leur ingestionArchive data after ingest

D’autres sont inactives dans le cloud dès le départ et sont peu, voire pas sollicitées une fois stockées.Some data stays idle in the cloud and is rarely, if ever, accessed once stored. La stratégie du cycle de vie suivante est configurée pour archiver les données peu après leur ingestion.The following lifecycle policy is configured to archive data shortly after it is ingested. Cet exemple déplace les objets blob de blocs du compte de stockage au sein du conteneur archivecontainer dans un niveau archive.This example transitions block blobs in the storage account within container archivecontainer into an archive tier. Le déplacement est accompli en agissant sur les objets blob 0 jour après l’heure de dernière modification :The transition is accomplished by acting on blobs 0 days after last modified time:

Notes

Il est recommandé de charger vos objets BLOB directement au niveau Archive pour gagner en efficacité.It is recommended to upload your blobs directly the archive tier to be more efficient. Vous pouvez utiliser l’en-tête x-ms-access-tier pour PutBlob ou PutBlockList avec REST 2018-11-09 et les versions ultérieures ou nos dernières bibliothèques clientes de stockage d’objets BLOB.You can use the x-ms-access-tier header for PutBlob or PutBlockList with REST version 2018-11-09 and newer or our latest blob storage client libraries.

{
  "rules": [
    {
      "name": "archiveRule",
      "enabled": true,
      "type": "Lifecycle",
      "definition": {
        "filters": {
          "blobTypes": [ "blockBlob" ],
          "prefixMatch": [ "archivecontainer" ]
        },
        "actions": {
          "baseBlob": {
              "tierToArchive": { "daysAfterModificationGreaterThan": 0 }
          }
        }
      }
    }
  ]
}

Faire expirer les données selon l’âgeExpire data based on age

Certaines données sont supposées expirer un certain nombre de jours ou de mois après leur création.Some data is expected to expire days or months after creation. Vous pouvez configurer une stratégie de gestion du cycle de vie afin de faire expirer les données en les supprimant en fonction de leur ancienneté.You can configure a lifecycle management policy to expire data by deletion based on data age. L’exemple suivant présente une stratégie qui supprime tous les objets blob de bloc datant de plus de 365 jours.The following example shows a policy that deletes all block blobs older than 365 days.

{
  "rules": [
    {
      "name": "expirationRule",
      "enabled": true,
      "type": "Lifecycle",
      "definition": {
        "filters": {
          "blobTypes": [ "blockBlob" ]
        },
        "actions": {
          "baseBlob": {
            "delete": { "daysAfterModificationGreaterThan": 365 }
          }
        }
      }
    }
  ]
}

Supprimer des données avec des balises d’index d’objets blobDelete data with Blob Index tags

Certaines données ne doivent expirer que si elles sont marquées explicitement pour suppression.Some data should only be expired if explicitly marked for deletion. Vous pouvez configurer une stratégie de gestion du cycle de vie pour faire expirer les données qui sont marquées avec des attributs clé/valeur d’index d’objets blob.You can configure a lifecycle management policy to expire data that are tagged with blob index key/value attributes. L’exemple suivant présente une stratégie qui supprime tous les objets blob de bloc balisés avec Project = Contoso.The following example shows a policy that deletes all block blobs tagged with Project = Contoso. Pour en savoir plus sur l’index d’objets blob, consultez Gérer et rechercher des données sur le Stockage Blob Azure avec un index d’objets blob (préversion).To learn more about the Blob Index, see Manage and find data on Azure Blob Storage with Blob Index (Preview).

{
    "rules": [
        {
            "enabled": true,
            "name": "DeleteContosoData",
            "type": "Lifecycle",
            "definition": {
                "actions": {
                    "baseBlob": {
                        "delete": {
                            "daysAfterModificationGreaterThan": 0
                        }
                    }
                },
                "filters": {
                    "blobIndexMatch": [
                        {
                            "name": "Project",
                            "op": "==",
                            "value": "Contoso"
                        }
                    ],
                    "blobTypes": [
                        "blockBlob"
                    ]
                }
            }
        }
    ]
}

Gérer les versionsManage versions

Pour les données modifiées et consultées régulièrement pendant toute leur durée de vie, vous pouvez activer la gestion de versions du stockage Blob afin de gérer automatiquement les versions précédentes d’un objet.For data that is modified and accessed regularly throughout its lifetime, you can enable blob storage versioning to automatically maintain previous versions of an object. Vous pouvez créer une stratégie pour hiérarchiser ou supprimer les versions précédentes.You can create a policy to tier or delete previous versions. L’âge de la version est déterminé en regardant l’heure de création de cette dernière.The version age is determined by evaluating the version creation time. Cette règle de stratégie hiérarchise les versions précédentes du conteneur activedata qui datent de 90 jours ou plus après la création de la version vers le niveau Froid, et supprime les versions antérieures datant de 365 jours ou plus.This policy rule tiers previous versions within container activedata that are 90 days or older after version creation to cool tier, and deletes previous versions that are 365 days or older.

{
  "rules": [
    {
      "enabled": true,
      "name": "versionrule",
      "type": "Lifecycle",
      "definition": {
        "actions": {
          "version": {
            "tierToCool": {
              "daysAfterCreationGreaterThan": 90
            },
            "delete": {
              "daysAfterCreationGreaterThan": 365
            }
          }
        },
        "filters": {
          "blobTypes": [
            "blockBlob"
          ],
          "prefixMatch": [
            "activedata"
          ]
        }
      }
    }
  ]
}

Questions fréquentes (FAQ)FAQ

J’ai créé une stratégie. Pourquoi les actions ne s’exécutent-elles pas immédiatement ?I created a new policy, why do the actions not run immediately?

La plateforme exécute la stratégie de cycle de vie une fois par jour.The platform runs the lifecycle policy once a day. Une fois que vous avez configuré une stratégie, jusqu’à 24 heures peuvent s’écouler avant que certaines actions s’exécutent pour la première fois.Once you configure a policy, it can take up to 24 hours for some actions to run for the first time.

Si je mets à jour une stratégie existante, combien de temps dois-je attendre avant que les actions soient effectuées ?If I update an existing policy, how long does it take for the actions to run?

Cela peut prendre jusqu’à 24 heures avant que la stratégie mise à jour ne soit appliquée.The updated policy takes up to 24 hours to go into effect. Une fois la stratégie en vigueur, cela peut prendre jusqu’à 24 heures pour que les actions s’exécutent.Once the policy is in effect, it could take up to 24 hours for the actions to run. Par conséquent, l’exécution des actions de la stratégie peut prendre jusqu’à 48 heures.Therefore, the policy actions may take up to 48 hours to complete.

J’ai réactivé manuellement un blob archivé. Comment puis-je empêcher son renvoi temporaire au niveau Archives ?I manually rehydrated an archived blob, how do I prevent it from being moved back to the Archive tier temporarily?

Quand un objet blob est déplacé d’un niveau d’accès vers un autre, l’heure de sa dernière modification ne change pas.When a blob is moved from one access tier to another, its last modification time doesn't change. Si vous réactivez manuellement un blob archivé à un chaud, il est renvoyé au niveau archive par le moteur de gestion du cycle de vie.If you manually rehydrate an archived blob to hot tier, it would be moved back to archive tier by the lifecycle management engine. Désactivez la règle qui affecte temporairement cet objet BLOB pour empêcher son archivage.Disable the rule that affects this blob temporarily to prevent it from being archived again. Réactivez la règle lorsque le BLOB peut être renvoyé en toute sécurité au niveau archive.Re-enable the rule when the blob can be safely moved back to archive tier. Vous pouvez aussi copier le blob vers un autre emplacement s’il doit rester en permanence au niveau chaud ou froid.You may also copy the blob to another location if it needs to stay in hot or cool tier permanently.

Étapes suivantesNext steps

Découvrez comment récupérer des données après une suppression accidentelle :Learn how to recover data after accidental deletion:

Apprenez à gérer et à rechercher des données avec un index d’objets blob :Learn how to manage and find data with Blob Index: