Neste documento, descrevemos como a realocação bucket do Cloud Storage ajuda você a realocar buckets sem servidor entre localizações geográficas. Com a realocação de bucket, é possível mover um bucket de um local para outro sem mudar o nome dele ou exigir a transferência manual de dados dentro do bucket.
Antes de iniciar o processo de realocação, planeje a realocação do bucket para minimizar as interrupções. Para instruções sobre como realizar a realocação, consulte Realocar buckets.
Vantagens
Os benefícios da realocação de buckets são os seguintes:
Migração simplificada: é possível realocar buckets com o mínimo de overhead operacional. Não é necessário usar scripts complexos ou processos de várias etapas.
Operação contínua: seus aplicativos permanecem acessíveis durante todo o processo de realocação, sem inatividade para operações de leitura e com inatividade mínima para operações de gravação.
Melhor desempenho: colocalizar os recursos do Compute Engine e do Cloud Storage na mesma região pode reduzir a latência e melhorar o desempenho.
Preservação de metadados: o processo de realocação de bucket mantém os metadados do objeto. A retenção dos metadados do objeto mantém a compatibilidade com os aplicativos e fluxos de trabalho atuais após a movimentação do bucket.
Configurações de classe de armazenamento: é possível manter as configurações atuais da classe do Cloud Storage, incluindo a classe automática. Preservar a classe de armazenamento ajuda a manter a estrutura de custos consistente após a realocação.
Casos de uso
Confira a seguir os casos de uso que você pode alcançar ao realocar seus buckets:
Reduzir o custo de transferência de dados: evite custos de transferência de dados realocando o bucket para mais perto das cargas de trabalho que acessam os dados do bucket. Por exemplo, se os dados estiverem armazenados nos Estados Unidos e forem acessados principalmente da Europa, será possível mover o bucket para um local europeu para reduzir os custos de transferência de dados.
Melhorar o desempenho: melhore a velocidade e a resposta do aplicativo movendo os dados para mais perto das cargas de trabalho do Compute Engine. Por exemplo, se o aplicativo for executado em
us-central1, mas os dados estiverem emasia-east1, será possível realocar o bucket paraus-central1para reduzir a latência.Melhorar a resiliência: proteja seus dados críticos contra interrupções regionais. Por exemplo, se os dados estiverem armazenados em uma única região, será possível realocá-los para uma birregião ou multirregião para aumentar a disponibilidade e a recuperação de desastres.
Tipos de realocação
Há dois tipos de realocação de bucket:
Realocação de bucket com inatividade de gravação: na realocação de bucket com inatividade de gravação, há um período em que não é possível realizar operações de gravação de objetos durante o processo de realocação de bucket.
Realocação de bucket sem inatividade de gravação: na realocação de bucket sem inatividade de gravação, é possível continuar realizando operações de gravação de objetos sem interrupção enquanto a realocação de bucket acontece em segundo plano.
Os locais de origem e destino do bucket determinam se uma realocação de bucket envolve inatividade de gravação. A tabela a seguir mostra como o local do bucket afeta o tempo de inatividade de gravação durante uma realocação, incluindo as diferenças entre realocações com e sem tempo de inatividade.
| Especificação | Realocação de bucket com tempo de inatividade de gravação | Realocação de buckets sem inatividade de gravação |
|---|---|---|
| Local do bucket | A realocação de um bucket entre os seguintes locais causa inatividade:
|
A realocação de um bucket entre os locais a seguir não causa inatividade se os dois locais compartilharem o mesmo código multirregional:
|
| Disponibilidade de gravação | Não é possível realizar operações de gravação durante a etapa de sincronização final. | As operações de gravação continuam sem interrupções durante a realocação. Observação: as realocações sem inatividade de gravação levam pelo menos sete dias para serem concluídas, independentemente do tamanho do bucket ou da contagem de objetos. Essa duração mínima é necessária para permitir que os uploads retomáveis em andamento sejam concluídos. Como o progresso da realocação não é linear e é imprevisível, não use o progresso inicial para estimar a duração total de realocações maiores. |
| Envolvimento do usuário | Você precisa iniciar a etapa de finalização do período de inatividade de gravação. | Nenhuma etapa de finalização explícita é necessária. |
| Impacto no desempenho | Não é possível gravar ou atualizar objetos no bucket durante a etapa final de sincronização. | A latência de leitura e gravação de objetos pode aumentar durante a realocação. |
| Cancelamento da realocação de bucket | Mais rápido do que as realocações sem inatividade de gravação. | O cancelamento não é instantâneo e pode demorar mais devido à necessidade de preencher objetos. |
| Suporte a recursos | Oferece menos suporte a recursos do que as realocações sem inatividade de gravação. Para mais informações sobre os recursos incompatíveis, consulte Recursos incompatíveis. | Existem limitações para recursos como uploads de várias partes, políticas de retenção, Firebase e appspot. Para mais informações sobre essas limitações, consulte os requisitos e as limitações de compatibilidade do bucket. |
| Duração mínima da realocação | Nenhum | Sete dias. Esse mínimo se aplica independentemente do tamanho total do bucket ou do número de objetos que ele contém. |
Entender o processo de realocação de buckets
A realocação de bucket ajuda a mover seus dados de um bucket de origem para um bucket de destino. O bucket de origem contém os dados que você quer mover, e o bucket de destino é para onde você quer mover os dados.
O diagrama a seguir mostra o fluxo do processo de realocação de bucket:
* A sincronização final só é necessária para realocações com inatividade de gravação.
A tabela a seguir lista as três etapas principais e a descrição de cada uma:
| Etapa | Descrição |
|---|---|
Realizar uma simulação | Simula o processo de realocação de bucket para identificar possíveis problemas antes que a transferência de dados real comece. |
Copia dados do bucket de origem para o bucket de destino. Os metadados do bucket são bloqueados para gravação para evitar alterações no bucket que possam afetar o processo de realocação. No entanto, é possível gravar, modificar e excluir objetos no bucket. Os fatores que influenciam a duração são os seguintes:
|
|
Inicie
a etapa de sincronização final | Depois de iniciar a sincronização final, o bucket é bloqueado para gravação. Como resultado, não é possível gravar ou atualizar objetos no bucket durante esse período, o que evita inconsistências de dados. No entanto, ainda é possível ler o bucket. Depois que todos os dados forem transferidos, verificados e o bucket estiver operacional no novo local, o bloqueio de gravação será removido automaticamente. Em seguida, você poderá retomar a gravação e a atualização de objetos no bucket. |
Limitações
Para realocar o bucket, verifique se as configurações dele permitem a realocação de buckets analisando a lista de recursos não compatíveis e requisitos de compatibilidade.
A realocação de bucket não será aceita se os buckets de origem e destino estiverem nos seguintes locais:
| Tipo de local | Locais não aceitos |
|---|---|
| Regiões |
|
Preços
Para detalhes sobre os preços associados à realocação de buckets, consulte Preços do Cloud Storage.
A seguir
- Saiba como planejar uma realocação de bucket.
- Saiba como realocar buckets.