Restaurar uma tabela do DynamoDB de um backup
Esta seção descreve como restaurar uma tabela de um backup usando o console do Amazon DynamoDB ou a AWS Command Line Interface (AWS CLI).
nota
Se desejar usar a AWS CLI, você precisará configurá-la primeiro. Para ter mais informações, consulte Acessar o DynamoDB.
Tópicos
O procedimento a seguir mostra como restaurar a tabela Music
usando o arquivo MusicBackup
que é criado no tutorialFazer backup de uma tabela do DynamoDB.
nota
Este procedimento supõe que a tabela Music
não existe mais antes de restaurá-la usando o arquivo MusicBackup
.
Para restaurar uma tabela de um backup
Faça login no AWS Management Console e abra o console do DynamoDB em https://console.aws.amazon.com/dynamodb/
. -
No painel de navegação, no lado esquerdo do console, selecione Backups.
-
Na lista de backups, escolha
MusicBackup
. -
Escolha Restore.
-
Insira
Music
como o novo nome da tabela. Confirme o nome do backup e outros detalhes. Em seguida, escolha Restore table (Restaurar tabela) para iniciar o processo de restauração.nota
Você pode restaurar a tabela para a mesma região da AWS ou para uma região diferente daquela na qual o backup reside. Você também pode excluir a criação de índices secundários na nova tabela restaurada. Além disso, você pode especificar um modo de criptografia diferente.
As tabelas restauradas a partir de backups são sempre criadas usando a classe de tabela do DynamoDB Standard.
A tabela que está sendo restaurada é mostrada com o status Creating (Em criação). Quando o processo de restauração for concluído, o status da tabela
Music
mudará para Active (Ativo).
Siga estas etapas para usar a AWS CLI para restaurar a tabela Music
usando o MusicBackup
que é criado no tutorial Fazer backup de uma tabela do DynamoDB.
Para restaurar uma tabela de um backup
-
Confirme o backup que você deseja restaurar usando o comando
list-backups
. Este exemplo usaMusicBackup
.aws dynamodb list-backups
Para obter outros detalhes sobre o backup, use o comando
describe-backup
. É possível obter a entradabackup-arn
da etapa anterior:aws dynamodb describe-backup \ --backup-arn arn:aws:dynamodb:us-east-1:123456789012:table/Music/backup/01489173575360-b308cd7d
-
Restaure a tabela por meio do backup. Nesse caso, o
MusicBackup
restaura a tabelaMusic
para a mesma região da AWS.aws dynamodb restore-table-from-backup \ --target-table-name Music \ --backup-arn arn:aws:dynamodb:us-east-1:123456789012:table/Music/backup/01489173575360-b308cd7d
-
Restaure a tabela do backup com configurações de tabela personalizadas. Nesse caso, o
MusicBackup
restaura a tabelaMusic
e especifica um modo de criptografia para a tabela restaurada.nota
O parâmetro
sse-specification-override
assume os mesmos valores do parâmetrosse-specification-override
usado no comandoCreateTable
. Para saber mais, consulte Gerenciar tabelas criptografadas no DynamoDB.aws dynamodb restore-table-from-backup \ --target-table-name Music \ --backup-arn arn:aws:dynamodb:us-east-1:123456789012:table/Music/backup/01581080476474-e177ebe2 \ --sse-specification-override Enabled=true,SSEType=KMS,KMSMasterKeyId=abcd1234-abcd-1234-a123-ab1234a1b234
Você pode restaurar a tabela para outra região da AWS diferente daquela na qual o backup reside.
nota
-
O parâmetro
sse-specification-override
é obrigatório para restaurações entre regiões, mas opcional para restaurações na mesma região da tabela de origem. -
Ao realizar uma restauração entre regiões na linha de comando, você deve definir a região padrão da AWS como a região de destino desejada. Para saber mais, consulte Opções de linha de comando no Guia do usuário do AWS Command Line Interface.
aws dynamodb restore-table-from-backup \ --target-table-name Music \ --backup-arn arn:aws:dynamodb:us-east-1:123456789012:table/Music/backup/01581080476474-e177ebe2 \ --sse-specification-override Enabled=true,SSEType=KMS
Você pode substituir o modo de faturamento e o throughput provisionado para a tabela restaurada.
aws dynamodb restore-table-from-backup \ --target-table-name Music \ --backup-arn arn:aws:dynamodb:us-east-1:123456789012:table/Music/backup/01489173575360-b308cd7d \ --billing-mode-override PAY_PER_REQUEST
Você pode excluir a criação de alguns ou todos os índices secundários na tabela restaurada.
nota
As restaurações poderão ser mais rápidas e econômicas se você excluir a criação de alguns ou todos os índices secundários na tabela restaurada.
aws dynamodb restore-table-from-backup \ --target-table-name Music \ --backup-arn arn:aws:dynamodb:us-east-1:123456789012:table/Music/backup/01581081403719-db9c1f91 \ --global-secondary-index-override '[]' \ --sse-specification-override Enabled=true,SSEType=KMS
nota
Os índices secundários fornecidos devem corresponder a índices existentes correspondentes. Você não pode criar novos índices no momento da restauração.
Você pode usar uma combinação de diferentes substituições. Por exemplo, você pode usar um único índice secundário global e alterar o throughput provisionado ao mesmo tempo, da seguinte forma.
aws dynamodb restore-table-from-backup \ --target-table-name Music \ --backup-arn arn:aws:dynamodb:eu-west-1:123456789012:table/Music/backup/01581082594992-303b6239 \ --billing-mode-override PROVISIONED \ --provisioned-throughput-override ReadCapacityUnits=100,WriteCapacityUnits=100 \ --global-secondary-index-override IndexName=singers-index,KeySchema=["{AttributeName=SingerName,KeyType=HASH}"],Projection="{ProjectionType=KEYS_ONLY}",ProvisionedThroughput="{ReadCapacityUnits=5,WriteCapacityUnits=5}" \ --sse-specification-override Enabled=true,SSEType=KMS
-
Para verificar a restauração, use o comando describe-table
para descrever a tabela Music
.
aws dynamodb describe-table --table-name Music
A tabela que está sendo restaurada do backup é mostrada com o status Creating (Em criação). Quando o processo de restauração for concluído, o status da tabela Music
mudará para Active (Ativo).
Importante
Enquanto a restauração estiver em andamento, não modifique nem exclua a política de função do IAM. Caso contrário, poderá haver um comportamento inesperado. Por exemplo, suponha que você tenha removido as permissões de gravação para uma tabela enquanto essa tabela estava sendo restaurada. Nesse caso, a operação RestoreTableFromBackup
subjacente não conseguiria gravar na tabela nenhum dos dados restaurados.
Assim que a operação de restauração estiver concluída, você poderá modificar ou excluir a política de função do IAM.
Políticas do IAM envolvendo restrições de IP de origem para acessar a tabela de restauração de destino devem ter a chave aws:ViaAWSService
definida como false
para garantir que as restrições se apliquem apenas a solicitações feitas diretamente por um responsável principal. Caso contrário, a restauração será cancelada.
Se o backup for criptografado com uma Chave gerenciada pela AWS ou uma chave gerenciada pelo cliente, não desabilite nem exclua a chave enquanto a restauração estiver em andamento. Caso contrário, ocorrerá falha.
Depois que a operação de restauração for concluída, você poderá alterar a chave de criptografia da tabela restaurada e desabilitar ou excluir a chave antiga.