Faça download do URL para o intervalo do GCP

Faça download do URL para o intervalo do GCP

Dado um URL que aponta para um arquivo grande, existe um atalho para colocar esse arquivo em um bucket, sem baixá-lo localmente e depois carregá-lo?

Existe uma maneira mais simples de fazer isso, além de construir uma imagem docker que execute a tarefa e executá-la no GCP de alguma forma?

Responder1

Como mencionado nolink

1: Você pode fazer isso usando o comando curl transmitindo os dados diretamente para o bucket.

curl http://speedtest.tele2.net/10GB.zip | gsutil cp -gs://YOUR_BUCKET_NAME/10GB.zip

2: Arquivos menores que 4,6 GB.

Abordagem original: funciona desde que o download seja inferior a ~ 4,6 GB. Inicie o Cloud Shell (primeiro ícone no canto superior direito após fazer login no seu projeto no GCP) e use wget para baixar o arquivo desejado. Por exemplo, para baixar o 7-Zip digite: wget https://www.7-zip.org/a/7z1805-x64.exeAgora, com o arquivo na página inicial do usuário do Cloud Shell, você pode copiá-lo para um intervalo do Google Cloud Storage usando o comando gsutil:

gsutil cp ./7z1805-x64.exe gs://your_bucket_name/

3: Arquivos maiores que 4,6 GB.

Crie um diretório na página inicial do usuário do Cloud Shellmkdir ~/mybucket

Agora monte seu bucket nesse diretório usando gcsfuse:

gcsfuse bucket_name ~/mybucket

Mude o diretório atual para o diretório do ponto de montagem: cd mybucket(se você deseja executar "df -h." para ver quanto espaço você tem nesse ponto de montagem) Agora use wget para obter o arquivo diretamente em seu bucket (exemplo usando arquivo de 10 GB off a teia):

wget https://speed.hetzner.de/10GB.bin

Para mais informações, você pode consultar odocumentaçãoem serviços de transferência de armazenamento e na criação de umLista de URLs.

Responder2

O Google Cloud Storage não oferece a capacidade de carregar um objeto de um URL.

Você deve escrever seu próprio código, usar a CLI ou um serviço gerenciado comoServiço de transferência de armazenamento

informação relacionada