Sobre a exclusão de objetos

Excluir objetos que não são mais necessários ajuda a reduzir os custos de armazenamento, obedecer aos requisitos de retenção de dados e manter os buckets organizados. Dependendo das suas necessidades de escala e automação, é possível escolher entre vários métodos para excluir objetos manualmente, de forma programática ou usando políticas automatizadas.

Nesta página, descrevemos os métodos disponíveis para excluir objetos dos seus buckets e ajudamos você a escolher um método adequado para sua tarefa.

Para saber como excluir objetos, consulte Excluir objetos.

Exclusão de um único objeto

A exclusão de objeto único oferece controle preciso sobre dados específicos. Normalmente, você exclui objetos únicos quando precisa fazer atualizações imediatas e direcionadas nos dados do bucket. Confira alguns motivos comuns para excluir objetos individuais:

  • Correção de erros: remoção de um arquivo enviado por engano ou que contém dados incorretos.

  • Limpeza: remoção manual de arquivos ou registros temporários após a conclusão de uma tarefa.

  • Lógica do aplicativo: remoção automática de um arquivo quando você realiza uma ação em um aplicativo, como excluir uma foto do perfil.

  • Segurança e compliance: exclusão de objetos como parte da remoção de informações sensíveis.

Ferramentas para excluir um único objeto

Para excluir um único objeto do bucket, use uma das seguintes ferramentas. Cada ferramenta envia uma solicitação DELETE individual por objeto.

Ferramenta Descrição
Google Cloud console Exclui um objeto usando o console Google Cloud .
CLI do Google Cloud Exclui um objeto usando o comando gcloud storage rm.
Bibliotecas de cliente Exclui um objeto de maneira programática usando uma linguagem compatível, como C++, C#, Go, Java, Node.js, PHP, Python ou Ruby.
APIs REST Exclui um objeto usando as APIs REST JSON e XML.

Exclusão de objetos em massa

Os métodos de exclusão em massa são projetados para operações de alta eficiência em grandes conjuntos de dados. Use a exclusão em massa para gerenciar os custos de armazenamento e automatizar a higiene de dados em todos os buckets. Confira alguns motivos comuns para excluir vários objetos:

  • Otimização de custos: remoção de grandes conjuntos de dados, como registros antigos ou artefatos de build temporários, que não são mais necessários para as operações.

  • Automação de compliance: aplicação automática de políticas de retenção de dados excluindo objetos após um período específico, por exemplo, 30 dias.

  • Migração ou desativação de buckets: limpar milhões ou bilhões de objetos ao migrar dados ou encerrar um projeto.

  • Limpeza do pipeline de dados: remoção de arquivos de processamento intermediários depois que um relatório ou conjunto de dados final é gerado.

Ferramentas para excluir objetos em massa

Para excluir objetos em massa, use uma das seguintes ferramentas. Esses métodos são otimizados para maior capacidade de processamento e redução da sobrecarga em comparação com solicitações individuais.

Ferramenta Descrição
Excluir vários objetos usando a API XML

Um método programático para excluir até 1.000 objetos em uma única solicitação POST. A API XML de exclusão de vários objetos foi projetada para ser interoperável com a API do Amazon S3. Como resultado, você pode usar as ferramentas, bibliotecas e fluxos de trabalho do Amazon S3 para gerenciar objetos no Cloud Storage. A API XML é útil se você estiver migrando dados ou gerenciando recursos nas duas plataformas.

Ao usar a API XML para excluir vários objetos, o Cloud Storage gera registros de auditoria de acesso a dados. Esses registros incluem detalhes sobre a solicitação geral e exclusões de objetos individuais, desde que você ative os registros de auditoria de acesso a dados. Para mais detalhes, consulte Registros de auditoria para API XML de exclusão de vários objetos.

A API XML de exclusão de vários objetos tem as seguintes limitações:

  • Ignorar o modo de governança: o Cloud Storage não permite ignorar o modo de governança durante exclusões, ao contrário do Amazon S3, que permite a exclusão de objetos bloqueados por governança especificando o cabeçalho x-amz-bypass-governance-retention. O Cloud Storage aplica políticas de retenção de objetos para ajudar na imutabilidade dos dados.
  • Marcadores de exclusão: os marcadores de exclusão do Amazon S3 não são compatíveis com o Cloud Storage para exclusões de um ou vários objetos. Para restaurar um objeto não atual no Cloud Storage, é necessário usar solicitações PUT para copiar a versão necessária para o objeto ativo.
  • Exclusões condicionais: a API de exclusão de vários objetos do Cloud Storage não oferece suporte a exclusões condicionais com base em ETag, Last-Modified ou Size. As solicitações que incluem esses parâmetros resultam em um erro 400. Para operações condicionais no Cloud Storage, use cabeçalhos como x-goog-if-generation-match ou x-goog-if-metageneration-match.
Google Cloud console O console Google Cloud é uma opção recomendada ao excluir até um milhão de objetos. Depois de iniciar uma solicitação de exclusão, o processo ocorre em segundo plano. Para verificar o status da exclusão em massa, clique no botão Notificações () no cabeçalho do console Google Cloud .
Operações em lote de armazenamento

Um serviço totalmente gerenciado que realiza exclusões com base em um arquivo de manifesto. Adequado para excluir até bilhões de objetos com rastreamento e novas tentativas integrados.

Recomendamos usar operações em lote de armazenamento se você quiser fazer o seguinte:

  • Excluir milhões ou bilhões de objetos.
  • Aumente a confiabilidade com rastreamento, novas tentativas e tratamento de erros integrados.
  • Reduz o overhead do lado do cliente em comparação com a criação de scripts de chamadas de API individuais.
gcloud storage rm --recursive Um comando da Google Cloud CLI para excluir todos os objetos que compartilham um prefixo comum. Adequado para tarefas em massa de pequena a média escala usando a CLI.
Gerenciamento do ciclo de vida de objetos Um recurso do lado do servidor que exclui objetos automaticamente com base em regras definidas por você, como idade do objeto ou classe de armazenamento. Para excluir objetos em massa no seu bucket, defina uma regra de configuração de ciclo de vida no bucket em que a condição tenha Age definido como 0 dias e a ação definida como delete. Depois de definir a regra, o Cloud Storage realiza a exclusão em massa de forma assíncrona.
Solicitações em lote Ao usar determinadas bibliotecas de cliente ou a API JSON diretamente, é possível agrupar em lote suas solicitações de exclusão para reduzir o número de conexões HTTP necessárias.

Escolher um método de exclusão

A ferramenta para excluir objetos depende de quantos objetos você precisa excluir e por quê. Use as orientações a seguir para escolher um método para seu caso de uso:

  • Se você precisar excluir um ou apenas alguns objetos específicos, use o consoleGoogle Cloud , gcloud storage rm ou chamadas de API únicas usando bibliotecas de cliente ou APIs REST. Para mais detalhes, consulte Excluir um único objeto.
  • Se você precisar excluir até 1.000 objetos em uma única solicitação de API, use a API XML de exclusão de vários objetos, a CLI do Amazon S3 ou uma biblioteca de cliente compatível com o S3, como o Boto3. Para mais detalhes, consulte Excluir objetos em massa.
  • Se você estiver excluindo muitos objetos que compartilham um prefixo de nome comum, use o comando gcloud storage rm --recursive. Para mais detalhes, consulte Excluir objetos em massa usando a Google Cloud CLI.
  • Se você precisar excluir milhões ou bilhões de objetos, use as operações em lote do Storage para exclusões confiáveis em grande escala.
  • Se você precisar excluir objetos automaticamente quando eles atenderem a determinados critérios, use o Gerenciamento do ciclo de vida de objetos.

A seguir