Carregamentos de streaming

O Cloud Storage suporta o streaming de dados para um contentor sem exigir que os dados sejam primeiro guardados num ficheiro. Isto é útil quando quer carregar dados, mas não sabe o tamanho final no início do carregamento, como quando gera os dados de carregamento a partir de um processo ou quando comprime um objeto em tempo real.

Usar a validação de checksum durante o streaming

Uma vez que só é possível fornecer uma soma de verificação no pedido inicial de um carregamento, muitas vezes, não é viável usar a validação de somas de verificação do Cloud Storage durante o streaming. Recomendamos que use sempre a validação de checksum e pode fazê-lo manualmente após a conclusão de um carregamento de streaming. No entanto, a validação após a conclusão da transferência significa que quaisquer dados danificados estão acessíveis durante o tempo necessário para confirmar a danificação e removê-los.

Se precisar da validação da soma de verificação antes da conclusão do carregamento e da disponibilização dos dados, não deve usar um carregamento de streaming. Deve usar uma opção de carregamento diferente que execute a validação da soma de verificação antes de finalizar o objeto.

Funções necessárias

Para receber as autorizações necessárias para fazer streaming de carregamentos, peça ao administrador que lhe conceda uma das seguintes funções:

  • Para carregamentos que incluam um bloqueio de retenção de objetos, peça ao seu administrador para lhe conceder a função de IAM de administrador de objetos de armazenamento (roles/storage.objectAdmin) para o contentor.

  • Para todos os outros casos, peça ao administrador que lhe conceda a função de IAM de utilizador do objeto de armazenamento (roles/storage.objectUser) para o contentor.

Estas funções predefinidas contêm as autorizações necessárias para fazer stream de carregamentos para o Cloud Storage. Para ver as autorizações exatas necessárias, expanda a secção Autorizações necessárias:

Autorizações necessárias

  • storage.objects.create
  • storage.objects.delete
    • Esta autorização só é necessária para carregamentos que substituam um objeto existente.
  • storage.objects.list
    • Esta autorização só é necessária para usar a CLI Google Cloud para executar as instruções nesta página.
  • storage.objects.setRetention
    • Esta autorização só é necessária para carregamentos que incluam um bloqueio de retenção de objetos.

Também pode obter estas autorizações com outras funções predefinidas ou funções personalizadas.

Para obter informaçõ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.

Faça stream de um carregamento

Os exemplos seguintes mostram como fazer um carregamento de streaming de um processo para um objeto do Cloud Storage:

Consola

A Google Cloud consola não suporta carregamentos de streaming. Em alternativa, use a CLI gcloud.

Linha de comandos

  1. Encaminhe os dados para o comando gcloud storage cp e use um traço para o URL de origem:

    PROCESS_NAME | gcloud storage cp - gs://BUCKET_NAME/OBJECT_NAME

    Onde:

    • PROCESS_NAME é o nome do processo a partir do qual está a recolher dados. Por exemplo, collect_measurements.
    • BUCKET_NAME é o nome do contentor que contém o objeto. Por exemplo, my_app_bucket.
    • OBJECT_NAME é o nome do objeto que é criado a partir dos dados. Por exemplo, data_measurements.

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 =