Esta página mostra como transferir objetos dos seus contentores no Cloud Storage para o armazenamento persistente. Também pode transferir objetos para a memória.
Funções necessárias
Para receber as autorizações necessárias para transferir objetos, peça ao seu administrador para lhe conceder a função de visitante de objetos de armazenamento (roles/storage.objectViewer
) no contentor. Se planeia usar a
Google Cloud consola, peça ao seu administrador que lhe conceda a função de administrador do armazenamento
(roles/storage.admin
) no contentor.
Estas funções contêm as autorizações necessárias para transferir objetos. Para ver as autorizações exatas necessárias, expanda a secção Autorizações necessárias:
Autorizações necessárias
storage.buckets.list
- Esta autorização só é necessária para usar a consola Google Cloud para realizar as tarefas nesta página.
storage.objects.get
storage.objects.list
- Esta autorização só é necessária para usar a consola Google Cloud para realizar as tarefas nesta página.
Também pode conseguir estas autorizações com outras funções predefinidas ou funções personalizadas.
Para obter instruções sobre como conceder funções em contentores, consulte o artigo Use o IAM com contentores.
Transfira um objeto de um contentor
Conclua as instruções seguintes para transferir um objeto de um contentor:
Consola
- Na Google Cloud consola, aceda à página Recipientes do Cloud Storage.
Na lista de contentores, clique no nome do contentor que contém o objeto que quer transferir.
É aberta a página Detalhes do contentor, com o separador Objetos selecionado.
Navegue para o objeto, que pode estar localizado numa pasta.
Clique no ícone Transferir associado ao objeto.
As definições do navegador controlam a localização de transferência do objeto.
Para saber como obter informações detalhadas sobre erros relativos a operações do Cloud Storage falhadas na Google Cloud consola, consulte a secção Resolução de problemas.
Linha de comandos
Use o comando gcloud storage cp
:
gcloud storage cp gs://BUCKET_NAME/OBJECT_NAME SAVE_TO_LOCATION
Onde:
BUCKET_NAME
é o nome do contentor que contém o objeto que está a transferir. Por exemplo,my-bucket
.OBJECT_NAME
é o nome do objeto que está a transferir. Por exemplo,pets/dog.png
.SAVE_TO_LOCATION
é o caminho local onde está a guardar o objeto. Por exemplo,Desktop/Images
.
Se for bem-sucedido, a resposta é semelhante ao exemplo seguinte:
Completed files 1/1 | 164.3kiB/164.3kiB
Se a transferência for interrompida antes da conclusão, execute o mesmo comando cp
para retomar a transferência a partir do ponto em que ficou.
Bibliotecas cliente
C++
Para mais informações, consulte a documentação de referência da API C++ do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
C#
Para mais informações, consulte a documentação de referência da API C# do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
Go
Para mais informações, consulte a documentação de referência da API Go do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
Java
Para mais informações, consulte a documentação de referência da API Java do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
O exemplo seguinte transfere um objeto individual:
O exemplo seguinte transfere vários objetos através de vários processos:
O exemplo seguinte transfere todos os objetos com um prefixo comum através de vários processos:
Node.js
Para mais informações, consulte a documentação de referência da API Node.js do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
O exemplo seguinte transfere um objeto individual:
O exemplo seguinte transfere vários objetos através de vários processos:
O exemplo seguinte transfere todos os objetos com um prefixo comum através de vários processos:
PHP
Para mais informações, consulte a documentação de referência da API PHP do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
Python
Para mais informações, consulte a documentação de referência da API Python do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
O exemplo seguinte transfere um objeto individual:
O exemplo seguinte transfere vários objetos através de vários processos:
O exemplo seguinte transfere todos os objetos num contentor através de vários processos:
Ruby
Para mais informações, consulte a documentação de referência da API Ruby do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
APIs REST
API JSON
Ter a CLI gcloud instalada e inicializada, o que lhe permite gerar um token de acesso para o cabeçalho
Authorization
.Use
cURL
para chamar a API JSON com um pedido deGET
objeto:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -o "SAVE_TO_LOCATION" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?alt=media"
Onde:
SAVE_TO_LOCATION
é o caminho para a localização onde quer guardar o objeto. Por exemplo,Desktop/dog.png
.BUCKET_NAME
é o nome do contentor que contém o objeto que está a transferir. Por exemplo,my-bucket
.OBJECT_NAME
é o nome codificado por URL do objeto que está a transferir. Por exemplo,pets/dog.png
, URL codificado comopets%2Fdog.png
.
API XML
Ter a CLI gcloud instalada e inicializada, o que lhe permite gerar um token de acesso para o cabeçalho
Authorization
.Use
cURL
para chamar a API XML com um pedido deGET
objeto:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -o "SAVE_TO_LOCATION" \ "https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME"
Onde:
SAVE_TO_LOCATION
é o caminho para a localização onde quer guardar o objeto. Por exemplo,Desktop/dog.png
.BUCKET_NAME
é o nome do contentor que contém o objeto que está a transferir. Por exemplo,my-bucket
.OBJECT_NAME
é o nome codificado por URL do objeto que está a transferir. Por exemplo,pets/dog.png
, URL codificado comopets%2Fdog.png
.
Para transferir de forma mais eficiente todos os objetos num contentor ou subdiretório, use o comando gcloud storage cp
ou uma biblioteca de cliente:
gcloud storage cp --recursive gs://BUCKET_NAME/FOLDER_NAME .
Transfira uma parte de um objeto
Se a transferência for interrompida, pode retomá-la a partir do ponto em que ficou pedindo apenas a parte do objeto que falta. Conclua as instruções seguintes para transferir uma parte de um objeto.
Consola
A consola Google Cloud não suporta o download de partes de um objeto. Em alternativa, use a CLI gcloud.
Linha de comandos
A CLI do Google Cloud tenta automaticamente retomar as transferências interrompidas,
exceto quando realiza transferências de streaming. Se a transferência for
interrompida, um ficheiro temporário parcialmente transferido fica visível na
hierarquia de destino. Execute o mesmo comando cp
para retomar a transferência no ponto em que ficou.
Quando a transferência estiver concluída, o ficheiro temporário é eliminado e substituído pelo conteúdo transferido. Os ficheiros temporários são armazenados numa localização configurável, que, por predefinição, se encontra no diretório principal do utilizador em .config/gcloud/surface_data/storage/tracker_files
. Pode alterar ou ver a localização onde os ficheiros temporários são armazenados executando gcloud config get storage/tracker_files_directory
.
Bibliotecas cliente
C++
Para mais informações, consulte a documentação de referência da API C++ do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
C#
Para mais informações, consulte a documentação de referência da API C# do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
Go
Para mais informações, consulte a documentação de referência da API Go do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
Java
Para mais informações, consulte a documentação de referência da API Java do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
Node.js
Para mais informações, consulte a documentação de referência da API Node.js do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
PHP
Para mais informações, consulte a documentação de referência da API PHP do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
Python
Para mais informações, consulte a documentação de referência da API Python do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
Ruby
Para mais informações, consulte a documentação de referência da API Ruby do Cloud Storage.
Para se autenticar no Cloud Storage, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.
APIs REST
API JSON
Use o cabeçalho Range
no seu pedido para transferir uma parte de um objeto.
Ter a CLI gcloud instalada e inicializada, o que lhe permite gerar um token de acesso para o cabeçalho
Authorization
.Use
cURL
para chamar a API JSON com um pedido deGET
objeto:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Range: bytes=FIRST_BYTE-LAST_BYTE" \ -o "SAVE_TO_LOCATION" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?alt=media"
Onde:
FIRST_BYTE
é o primeiro byte no intervalo de bytes que quer transferir. Por exemplo,1000
.LAST_BYTE
é o último byte no intervalo de bytes que quer transferir. Por exemplo,1999
.SAVE_TO_LOCATION
é o caminho para a localização onde quer guardar o objeto. Por exemplo,Desktop/dog.png
.BUCKET_NAME
é o nome do contentor que contém o objeto que está a transferir. Por exemplo,my-bucket
.OBJECT_NAME
é o nome codificado por URL do objeto que está a transferir. Por exemplo,pets/dog.png
, URL codificado comopets%2Fdog.png
.
API XML
Use o cabeçalho Range
no seu pedido para transferir uma parte de um objeto.
Ter a CLI gcloud instalada e inicializada, o que lhe permite gerar um token de acesso para o cabeçalho
Authorization
.Use
cURL
para chamar a API XML com um pedido deGET
objeto:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Range: bytes=FIRST_BYTE-LAST_BYTE" \ -o "SAVE_TO_LOCATION" \ "https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME"
Onde:
FIRST_BYTE
é o primeiro byte no intervalo de bytes que quer transferir. Por exemplo,1000
.LAST_BYTE
é o último byte no intervalo de bytes que quer transferir. Por exemplo,1999
.SAVE_TO_LOCATION
é o caminho para a localização onde quer guardar o objeto. Por exemplo,$HOME/Desktop/dog.png
.BUCKET_NAME
é o nome do contentor que contém o objeto que está a transferir. Por exemplo,my-bucket
.OBJECT_NAME
é o nome codificado por URL do objeto que está a transferir. Por exemplo,pets/dog.png
, URL codificado comopets%2Fdog.png
.
O que se segue?
- Leia a vista geral conceptual do carregamento e da transferência, incluindo estratégias de transferência avançadas.
- Transfira dados de fornecedores de nuvem ou outras origens online, como listas de URLs.
- Transfira objetos para a sua instância do Compute Engine.
- Saiba como pode faturar encargos de acesso ao Cloud Storage aos requerentes.
- Saiba como o Cloud Storage pode servir ficheiros comprimidos com gzip num estado não comprimido.
Experimente
Se está a usar o Google Cloud pela primeira vez, crie uma conta para avaliar o desempenho do Cloud Storage em cenários reais. Os novos clientes também recebem 300 USD em créditos gratuitos para executar, testar e implementar cargas de trabalho.
Experimentar o Cloud Storage gratuitamente