Metadados do objeto

Nesta página, você encontrará informações sobre os campos de metadados que são armazenados junto com objetos no Cloud Storage. Para mais informações, consulte Como ver e editar metadados de objetos.

Introdução

Os objetos armazenados no Cloud Storage têm metadados associados a eles. Os metadados identificam propriedades do objeto e especificam como ele deve ser processado quando for acessado. Os metadados são como pares de chave/valor. Por exemplo, a classe de armazenamento de um objeto é representada pela entrada de metadados storageClass:REGIONAL. O valor de storageClass é a chave dos metadados, que está associada a todos os objetos. REGIONAL especifica o valor desse objeto específico, que varia de acordo com cada objeto.

A mutabilidade dos metadados varia: alguns podem ser editados a qualquer momento, outros só podem ser definidos no momento em que o objeto é criado e alguns metadados podem apenas ser visualizados. Por exemplo, é possível editar o valor dos metadados Cache-Control a qualquer momento, mas só é possível atribuir os metadados storageClass quando o objeto é criado ou reescrito, e não é possível editar diretamente o valor dos metadados generation, mesmo que o valor de generation mude quando o objeto é substituído.

Metadados editáveis

Existem duas categorias de metadados que os usuários podem alterar para objetos:

  • Metadados de chave fixa: metadados que têm chaves definidas, mas permitem a especificação de um valor.

  • Metadados personalizados: metadados que são adicionados com a especificação de uma chave e um valor associados a ela.

Ao editar os metadados, evite caracteres não-ASCII, porque eles não são permitidos em cabeçalhos HTTP, que são usados pela API XML. Ao usar essa API, também há um limite de 16 KB para o tamanho combinado do URL de solicitação e dos cabeçalhos HTTP. Por isso, leve esse limite em consideração ao definir o tamanho total dos seus metadados.

Metadados de chave fixa

É possível editar metadados a seguir para objetos. Porém você precisa ter permissões suficientes para fazer isso.

Metadados de controle de acesso

O Cloud Storage usa o gerenciamento de identidade e acesso (IAM, na sigla em inglês) e as listas de controle de acesso (ACLs, na sigla em inglês) para controlar o acesso a objetos. Use esses links para saber mais sobre esses métodos de controle de acesso e metadados associados.

Cache-Control

Os metadados de Cache-Control especificam dois aspectos diferentes de como os dados são transmitidos do Cloud Storage: se eles podem ser armazenados em cache e se podem ser transformados.

Como armazenar dados em cache

Com os metadados Cache-Control, controle se caches da Internet e do navegador podem armazenar seus objetos em cache e por quanto tempo podem fazer isso. Definir o valor de Cache-Control como no-cache significa que o objeto não pode ser armazenado em cache. Definir o valor como max-age=[TIME_IN_SECONDS] significa que o objeto pode ser armazenado em cache por um período de tempo especificado.

Cache-Control aplica-se apenas a objetos de acesso público porque não é possível armazenar dados particulares em cache. A menos que o contrário seja especificado, a configuração Cache-Control para objetos de acesso público é de 3600 segundos.

Se você permite o armazenamento em cache, talvez você veja versões anteriores de objetos no momento do download mesmo depois de fazer o upload de um objeto de substituição mais recente. Isso acontece porque os objetos mais antigos permanecem no cache por um período de tempo. Além disso, como os objetos podem ser armazenados em cache em vários locais na Internet, não há como forçar um objeto armazenado em cache a expirar globalmente. Se você quiser impedir o armazenamento em cache de objetos de leitura pública, configure Cache-Control:private no objeto.

Como transformar dados

Com os metadados Cache-Control, também é possível transmitir objetos durante o armazenamento sem a necessidade de aplicar transformações aos dados, como a remoção da codificação de conteúdo gzip de clientes incompatíveis. Para transmitir um objeto assim como ele é, defina Cache-Control:no-transform.

Content-Disposition

Os metadados Content-Disposition especificam informações de apresentação sobre os dados que estão sendo transmitidos. A configuração de Content-Disposition permite que você controle o estilo de apresentação do conteúdo. Por exemplo, determine se um anexo deve ser exibido automaticamente ou se o usuário precisa realizar alguma ação para abri-lo. Consulte https://tools.ietf.org/html/rfc6266 (em inglês) para acessar a especificação de Content-Disposition.

Content-Encoding

Os metadados de Content-Encoding podem ser usados para indicar que um objeto está compactado, enquanto ainda mantêm o tipo de Content-Type subjacente do objeto. Por exemplo, um arquivo de texto que é compactado em formato gzip pode ter o fato de que é um arquivo de texto indicado em Content-Type e o fato de que ele é gzip compactado indicado em Content-Encoding. Verifique se os arquivos estão realmente comprimidos usando a Content-Encoding especificada antes de carregá-los. Se não fizer isso um comportamento inesperado pode ocorrer quando você tentar fazer o download dos objetos. Para mais informações, consulte a página de transcodificação.

Para conteúdo que pode ser compactado, como texto, usar o Content-Encoding: gzip economiza custos de rede e de armazenamento, além de melhorar o desempenho da veiculação de conteúdo. No entanto, para conteúdo que já está compactado de maneira intrínseca, como arquivos e muitos formatos de mídia, aplicar outro nível de compactação e marcá-lo nos metadados Content-Encoding normalmente é prejudicial ao tamanho e ao desempenho do objeto e, por isso, deve ser evitado.

Content-Language

Os metadados de Content-Language indicam o(s) idioma(s) a que o objeto está destinado. Consulte os códigos de idioma ISO 639-1 para ver os valores compatíveis com esses metadados.

Content-Type

O metadado mais comumente definido é Content-Type, também conhecido como tipo MIME. Ele permite que os navegadores processem o objeto corretamente. Todos os objetos têm um valor especificado nos metadados Content-Type, mas esse valor não precisa corresponder ao tipo subjacente do objeto. Por exemplo, se o Content-Type não for especificado pela pessoa que fez o envio e não puder ser determinado, ele será definido como application/octet-stream ou application/x-www-form-urlencoded, dependendo de como você enviou o objeto. Consulte a página Tipos de mídia IANA para ver uma lista de tipos MIME válidos.

Metadados personalizados

Os metadados personalizados são aqueles que você pode adicionar e remover. Para criar metadados personalizados, é preciso especificar um valor e uma chave. Depois de criar um par key:value de metadados personalizados, é possível excluir a chave ou alterar o valor.

A página de visualização e edição de metadados inclui informações sobre a configuração de metadados personalizados. O uso de metadados personalizados incorre em custos de armazenamento e rede.

Metadados não editáveis

Alguns metadados não podem ser editados diretamente. Eles são definidos no momento da criação ou regravação do objeto. Como parte da criação ou regravação do objeto, é possível definir alguns desses metadados como a classe de armazenamento do objeto ou as chaves de criptografia fornecidas pelo cliente. Outros metadados, como o número de geração do objeto ou a hora da criação, são adicionados automaticamente e só podem ser visualizados.

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Precisa de ajuda? Acesse nossa página de suporte.