Questão O comando do AWS Client S3 mv está lento


Eu estou usando o aws cli para mover os arquivos no S3 no mesmo balde. Até onde eu sei, o AWS S3 não mantém a estrutura de pastas. Ele armazena o caminho inteiro como chave para o arquivo e o exibe na estrutura de pastas no console.

Agora minha pergunta é se eu quero mover o arquivo, é basicamente renomear a chave do arquivo. No entanto, o comando a seguir mostrará a transferência.

aws s3 mv s3://bucket1/stage1/part1/$i/stage1.prime s3://bucket1/stage1/$i/part1/stage1.prime

O terminal irá produzir

Completed 2.1 GiB/4.2 GiB (86.4 MiB/s) with 1 file(s) remaining

1


origem


Tecnicamente, renomear ("mover") um objeto realmente copia o objeto para a nova chave, em seguida, exclui o objeto antigo, mas a ação de cópia deve ser interna ao S3. Você pode usar --debug e capturar os pedidos enviados? Se você ver x-amz-copy-source-range cabeçalhos, o cli pode estar fazendo apenas uma cópia multipart interna para s3 e apenas relatando o status dessas ações internas de cópia para fins de relatório de andamento. Acredito aws s3 mv ... --debug 2> >(tee somelogfilename.txt >&2) deve capturar essa depuração em um arquivo para facilitar a revisão. - Michael - sqlbot


Respostas: