Transfira objetos para a memória

Esta página mostra-lhe como transferir objetos dos seus contentores do Cloud Storage para a memória através das bibliotecas cliente do Cloud Storage. A transferência para a memória é útil quando quer evitar gravações desnecessárias no armazenamento persistente. Para ver instruções sobre como transferir objetos diretamente para a memória persistente, consulte o artigo Transferir objetos para a memória persistente. Para uma vista geral conceptual de como funcionam as transferências no Cloud Storage, consulte o artigo Carregamentos e transferências.

Funções necessárias

Para receber as autorizações necessárias para transferir objetos para a memória, peça ao seu administrador para lhe conceder a função de visitante de objetos de armazenamento (roles/storage.objectViewer) no contentor.

Esta função contém a autorização necessária para transferir objetos. Para ver a autorização exata necessária, expanda a secção Autorizações necessárias:

Autorizações necessárias

  • storage.objects.get

Também pode conseguir esta autorização com outras funções predefinidas ou funções personalizadas.

Para ver instruções sobre como conceder funções em contentores, consulte o artigo Defina e faça a gestão de políticas de IAM em contentores.

Transfira um objeto para a memória

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.

namespace gcs = ::google::cloud::storage;
[](gcs::Client client, std::string const& bucket_name,
   std::string const& object_name) {
  gcs::ObjectReadStream stream = client.ReadObject(bucket_name, object_name);
  std::string buffer{std::istreambuf_iterator<char>(stream),
                     std::istreambuf_iterator<char>()};
  if (stream.bad()) throw google::cloud::Status(stream.status());

  std::cout << "The object has " << buffer.size() << " characters\n";
}

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.


using Google.Cloud.Storage.V1;
using System;
using System.IO;

public class DownloadObjectIntoMemorySample
{
    public Stream DownloadObjectIntoMemory(
        string bucketName = "unique-bucket-name",
        string objectName = "file-name")
    {
        var storage = StorageClient.