Qualquer forma de ativar o Amazon S3 Versioning para objetos existentes?

3

Todas as informações que li no AWS S3 Object Versioning especificamente mencionam isso:

Objects stored in your bucket before you set the versioning state have a version ID of null. When you enable versioning, existing objects in your bucket do not change. What changes is how Amazon S3 handles the objects in future requests. The topics in this section explain various object operations in a versioning-enabled bucket.

fonte

Atualmente, tenho cerca de 2 TB (370K objetos) de dados em um intervalo. Meu entendimento é que, se eu ativar o controle de versão agora, os objetos futuros serão versionados. Minha pergunta: e os objetos existentes? Estou preso sem que eles sejam não-versionados ou há uma maneira de versioná-los sem baixar / recarregá-los? Eu não encontrei nenhuma informação enquanto fazia o Google Fu, então queria fazer ping no coletivo aqui.

Obrigado.

    
por Valien 24.03.2016 / 21:52

2 respostas

6

Desculpe, mas você está preso.

O controle de versão deve estar ativado para acessar as versões anteriores.

Com a versão desativada ou com a versão suspensa , você não pode recuperar changelogs de qualquer tipo. O arquivo é simplesmente sobrescrito.

If a null version already exists in a bucket, the null version is overwritten, as shown in the following figure.

version diagram

Não ter nenhuma versão ativada sempre segue a mesma política. Mas parece mais com isso:

EmqueoobjetocomoIDdeversãonullsimplesmentecontinuasendosobrescrito.SeaAWStivesseconfiguradoasversõesporpadrão,provavelmenteficariamsemespaço.

Atualização:ositensquejáestãonointervaloiniciarãoimediatamenteocontroledeversãoquandovocêativá-lo.

  • @ michael-sqlbot
por 24.03.2016 / 22:38
4

Quando você ativa o controle de versão no intervalo, os objetos existentes não recebem um ID de versão. Em vez disso, eles terão um ID de versão de null . Quaisquer versões anteriores não são "restauradas automaticamente".

Além disso, os objetos existentes serão versionados normalmente no futuro.

Novos objetos adicionados ou alterados no bloco receberão um ID de versão exclusivo.

Depois que a versão estiver ativada, se você listar todas as versões de um objeto, perceberá que a última versão (mais antiga) terá uma ID de versão null , se essa versão original existia antes da versão ser ativada.

    
por 24.03.2016 / 22:42