Exemplos de configuração para a gestão do ciclo de vida de objetos

Vista geral Configuração

Esta página mostra exemplos de configurações para a gestão do ciclo de vida de objetos. Quando define uma configuração do ciclo de vida num contentor, os objetos atuais e futuros no contentor que cumprem as condições que definir têm a ação especificada realizada nos mesmos.

Elimine versões de objetos mais antigas

A configuração do ciclo de vida seguinte define duas regras. Tenha em atenção que estas regras só são aplicáveis quando usa o controlo de versões de objetos no contentor:

  1. Elimine versões não atuais de objetos se existirem 2 versões mais recentes do objeto no contentor. Os objetos sujeitos a esta regra são eliminados permanentemente e não podem ser recuperados.

  2. Eliminar versões não atuais de objetos após ficarem não atuais durante 7 dias. Os objetos sujeitos a esta regra são eliminados permanentemente e não podem ser recuperados.

O efeito combinado destas duas regras em contentores que usam a versão de objetos é que os objetos ativos têm um período durante o qual podem ser recuperados se forem substituídos ou eliminados: esse objeto permanece no contentor num estado não atual durante sete dias ou até existirem 2 versões mais recentes do objeto no contentor.

Consola

Estas definições usam as instruções encontradas na secção defina uma configuração.

  1. Para eliminar versões não atuais de objetos se existir uma versão mais recente:

    1. Selecione a ação Eliminar objeto.
    2. Selecione a condição Estado em direto e selecione o botão de opção Não atual.
    3. Selecione a condição Número de versões mais recentes e introduza um valor de 2.
  2. Para eliminar versões não atuais de objetos após ficarem não atuais durante 7 dias:

    1. Selecione a ação Eliminar objeto.
    2. Selecione a condição Dias desde que se tornou não atual e introduza um valor de 7.

Linha de comandos

A seguinte configuração do ciclo de vida pode ser aplicada a um contentor ativando a gestão do ciclo de vida.

{
  "lifecycle": {
    "rule": [
      {
        "action": {"type": "Delete"},
        "condition": {
          "numNewerVersions": 2,
          "isLive": false
        }
      },
      {
        "action": {"type": "Delete"},
        "condition": {
          "daysSinceNoncurrentTime": 7
        }
      }
    ]
  }
}

Para o formato generalizado de um ficheiro de configuração do ciclo de vida, consulte a representação de recursos de contentores para JSON.

APIs REST

API JSON

A seguinte configuração do ciclo de vida pode ser aplicada a um contentor ativando a gestão do ciclo de vida.

{
  "lifecycle": {
    "rule": [
      {
        "action": {"type": "Delete"},
        "condition": {
          "numNewerVersions": 2,
          "isLive": false
        }
      },
      {
        "action": {"type": "Delete"},
        "condition": {
          "daysSinceNoncurrentTime": 7
        }
      }
    ]
  }
}

Para o formato generalizado de um ficheiro de configuração do ciclo de vida, consulte a representação de recursos de contentores para JSON.

API XML

A seguinte configuração do ciclo de vida pode ser aplicada a um contentor ativando a gestão do ciclo de vida.

<?xml version="1.0" encoding="UTF-8" ?>
<LifecycleConfiguration>
    <Rule>
        <Action>
            <Delete/>
        </Action>
        <Condition>
            <IsLive>false</IsLive>
            <NumberOfNewerVersions>2</Age>
        </Condition>
    </Rule>
    <Rule>
        <Action>
            <Delete/>
        </Action>
        <Condition>
            <DaysSinceNoncurrentTime>7</DaysSinceNoncurrentTime>
        </Condition>
    </Rule>
</LifecycleConfiguration>

Para ver o formato generalizado de um ficheiro de configuração do ciclo de vida, consulte o formato de configuração do ciclo de vida para XML.

Modificações da configuração

Consoante os seus objetivos, existem várias modificações que pode fazer a esta configuração de exemplo:

  • Se quiser que os objetos dinâmicos tenham uma duração total limitada, crie uma regra adicional que use a ação Delete, uma condição isLive definida como true e uma condição age.

  • Se quiser proteger os seus dados contra a eliminação acidental, mas não contra a substituição acidental, defina o número de versões mais recentes como 1, o que também reduz os custos de armazenamento, porque retém menos versões de um objeto.

  • Se os seus dados estiverem armazenados como Nearline storage, Coldline storage ou Archive storage, adicione uma condição age ou use um valor superior para daysSinceNoncurrentTime para evitar taxas de eliminação antecipada. Tenha em atenção que, mesmo com estas alterações, pode incorrer em taxas de eliminação antecipada, consoante a frequência com que substitui e elimina os seus objetos.

Altere a classe de armazenamento de um objeto

A seguinte configuração do ciclo de vida define duas regras:

  1. Altere a classe de armazenamento de um objeto para armazenamento Nearline se a sua antiguidade for superior a 365 dias (um ano), a sua classe de armazenamento atual for armazenamento Standard e o seu nome terminar em .jpg ou .png.
  2. Altere a classe de armazenamento de um objeto para Coldline Storage se a respetiva antiguidade for superior a 1095 dias (três anos), a classe de armazenamento atual for Nearline Storage e o respetivo nome terminar em .jpg ou .png.

Consola

Estas definições usam as instruções encontradas na secção defina uma configuração.

  1. Para mover os objetos para o armazenamento Nearline 365 dias após a respetiva criação:

    1. Selecione a ação Definir classe de armazenamento como Nearline.
    2. Selecione o âmbito da regra O nome do objeto corresponde ao sufixo.
    3. No campo apresentado, escreva .jpg e prima Enter. Em seguida, introduza .png e prima Enter novamente.
    4. Selecione a condição Idade e introduza um valor de 365.
    5. Selecione a condição A classe de armazenamento corresponde e escolha a opção Padrão.
  2. Para mover os objetos para o armazenamento Coldline 1095 dias após a respetiva criação:

    1. Selecione a ação Definir classe de armazenamento como Coldline.
    2. Selecione o âmbito da regra O nome do objeto corresponde ao sufixo.
    3. No campo apresentado, escreva .jpg e prima Enter. Em seguida, introduza .png e prima Enter novamente.
    4. Selecione a condição Idade e introduza um valor de 1095.
    5. Selecione a condição A classe de armazenamento corresponde a e escolha a opção Nearline.

Linha de comandos

A seguinte configuração do ciclo de vida pode ser aplicada a um contentor ativando a gestão do ciclo de vida.

{
  "lifecycle": {
    "rule": [
      {
        "action": {
          "type": "SetStorageClass",
          "storageClass": "NEARLINE"
        },
        "condition": {
          "age": 365,
          "matchesStorageClass": [
            "STANDARD"
          ],
          "matchesSuffix": [
            ".jpg",
            ".png"
          ]
        }
      },
      {
        "action": {
          "type": "SetStorageClass",
          "storageClass": "COLDLINE"
        },
        "condition": {
          "age": 1095,
          "matchesStorageClass": [
            "NEARLINE"
          ],
          "matchesSuffix": [
            ".jpg",
            ".png"
          ]
        }
      }
    ]
  }
}

Para o formato generalizado de um ficheiro de configuração do ciclo de vida, consulte a representação de recursos de contentores para JSON.

APIs REST

API JSON

A seguinte configuração do ciclo de vida pode ser aplicada a um contentor ativando a gestão do ciclo de vida.

{
  "lifecycle": {
    "rule": [
      {
        "action": {
          "type": "SetStorageClass",
          "storageClass": "NEARLINE"
        },
        "condition": {
          "age": 365,
          "matchesStorageClass": [
            "STANDARD"
          ],
          "matchesSuffix": [
            ".jpg",
            ".png"
          ]
        }
      },
      {
        "action": {
          "type": "SetStorageClass",
          "storageClass": "COLDLINE"
        },
        "condition": {
          "age": 1095,
          "matchesStorageClass": [
            "NEARLINE"
          ],
          "matchesSuffix": [
            ".jpg",
            ".png"
          ]
        }
      }
    ]
  }
}

Para o formato generalizado de um ficheiro de configuração do ciclo de vida, consulte a representação de recursos de contentores para JSON.

API XML

A seguinte configuração do ciclo de vida pode ser aplicada a um contentor ativando a gestão do ciclo de vida.

<?xml version="1.0" encoding="UTF-8" ?>
<LifecycleConfiguration>
    <Rule>
        <Action>
            <SetStorageClass>NEARLINE</SetStorageClass>
        </Action>
        <Condition>
            <Age>365</Age>
            <MatchesStorageClass>STANDARD</MatchesStorageClass>
            <MatchesSuffix>.jpg</MatchesSuffix>
            <MatchesSuffix>.png</MatchesSuffix>
        </Condition>
    </Rule>
    <Rule>
        <Action>
            <SetStorageClass>COLDLINE</SetStorageClass>
        </Action>
        <Condition>
            <Age>1095</Age>
            <MatchesStorageClass>NEARLINE</MatchesStorageClass>
            <MatchesSuffix>.jpg</MatchesSuffix>
            <MatchesSuffix>.png</MatchesSuffix>
        </Condition>
    </Rule>
</LifecycleConfiguration>

Para ver o formato generalizado de um ficheiro de configuração do ciclo de vida, consulte o formato de configuração do ciclo de vida para XML.

Remova a configuração do ciclo de vida

Quando definida num contentor, a seguinte configuração do ciclo de vida desativa a gestão do ciclo de vida removendo todas as regras:

Consola

  1. Na Google Cloud consola, aceda à página Recipientes do Cloud Storage.

    Aceda a Recipientes

  2. Na lista de contentores, clique no nome do contentor para o qual quer remover regras do ciclo de vida.

  3. Clique no separador Ciclo de vida.

  4. Clique em Eliminar tudo ou elimine regras individuais clicando no ícone de lixo associado à regra que quer eliminar.

Linha de comandos

Use o comando gcloud storage buckets update com a flag --clear-lifecycle:

gcloud storage buckets update gs://BUCKET_NAME --clear-lifecycle

Em que BUCKET_NAME é o nome do contentor cuja configuração do ciclo de vida quer remover.

APIs REST

API JSON

{
  "lifecycle": {
    "rule": []
  }
}

Para o formato generalizado de um ficheiro de configuração do ciclo de vida, consulte a representação de recursos de contentores para JSON.

API XML

<?xml version="1.0" encoding="UTF-8" ?>
<LifecycleConfiguration/>

Para ver o formato generalizado de um ficheiro de configuração do ciclo de vida, consulte o formato de configuração do ciclo de vida para XML.

O que se segue?