Naming e Referenciação de Contentores, Bolhas e MetadadosNaming and Referencing Containers, Blobs, and Metadata

Este tópico descreve o nome e a seção a contentores, bolhas, metadados e instantâneos.This topic describes naming and referring to containers, blobs, metadata, and snapshots. Uma conta de armazenamento pode conter zero ou mais contentores.A storage account can contain zero or more containers. Um recipiente contém propriedades, metadados e zero ou mais blobs.A container contains properties, metadata, and zero or more blobs. Uma bolha é qualquer entidade composta por dados binários, propriedades e metadados.A blob is any single entity comprised of binary data, properties, and metadata.

Nomes de recursosResource Names

O URI para referência a um recipiente ou uma bolha deve ser único.The URI to reference a container or a blob must be unique. Como cada nome de conta é único, duas contas podem ter contentores com o mesmo nome.Because every account name is unique, two accounts can have containers with the same name. No entanto, dentro de uma determinada conta de armazenamento, cada recipiente deve ter um nome único.However, within a given storage account, every container must have a unique name. Cada bolha dentro de um determinado recipiente também deve ter um nome único dentro desse recipiente.Every blob within a given container must also have a unique name within that container.

Se tentar criar um recipiente ou uma bolha com um nome que viole as regras de nomeação, o pedido falhará com o código de estado 400 (Mau Pedido).If you attempt to create a container or blob with a name that violates naming rules, the request will fail with status code 400 (Bad Request).

Importante

Os nomes de blob e contentores são passados para o serviço Blob dentro de um URL.Blob and container names are passed to the Blob service within a URL. Certos caracteres devem ser codificados por percentagem para aparecerem num URL, utilizando UTF-8 (preferencial) ou MBCS.Certain characters must be percent-encoded to appear in a URL, using UTF-8 (preferred) or MBCS. Esta codificação ocorre automaticamente quando utiliza as bibliotecas do cliente Azure Storage.This encoding occurs automatically when you use the Azure Storage client libraries. No entanto, existem certos caracteres que não são válidos nos caminhos de URL mesmo quando codificados.However, there are certain characters that are not valid in URL paths even when encoded. Estes caracteres não podem aparecer em nomes de bolhas ou recipientes.These characters cannot appear in blob or container names. Pontos de código como \uE000, embora válidos em nomes de ficheiros NTFS, não são caracteres Unicode válidos, pelo que não podem ser utilizados.Code points like \uE000, while valid in NTFS filenames, are not valid Unicode characters, so they cannot be used. Além disso, alguns caracteres ASCII ou Unicode, como caracteres de controlo (0x00 a 0x1F, \u0081, etc.), também não são permitidos.In addition, some ASCII or Unicode characters, like control characters (0x00 to 0x1F, \u0081, etc.), are also not allowed. Para as regras que regem as cadeias Unicode em HTTP/1.1, consulte RFC 2616, Secção 2.2: Regras Básicas e RFC 3987.For rules governing Unicode strings in HTTP/1.1, see RFC 2616, Section 2.2: Basic Rules and RFC 3987.

Nomes de contentoresContainer Names

Um nome de contentor tem de ser um nome DNS válido, cumprindo as seguintes regras de nomenclatura:A container name must be a valid DNS name, conforming to the following naming rules:

  • Os nomes dos recipientes devem começar ou terminar com uma letra ou número, e podem conter apenas letras, números e o caráter (-) do painel.Container names must start or end with a letter or number, and can contain only letters, numbers, and the dash (-) character.

  • Cada caráter de travessão (-) tem de ser imediatamente precedido e seguido por uma letra ou um número; os traços consecutivos não são permitidos em nomes de contentor.Every dash (-) character must be immediately preceded and followed by a letter or number; consecutive dashes are not permitted in container names.

  • Tenha em atenção que o nome do contentor tem de estar em minúsculas.All letters in a container name must be lowercase.

  • Os nomes de contentor devem ter entre 3 e 63 carateres.Container names must be from 3 through 63 characters long.

Nomes blobBlob Names

Uma denominação blob deve estar em conformidade com as seguintes regras de nomeação:A blob name must conforming to the following naming rules:

  • Um nome blob pode conter qualquer combinação de caracteres.A blob name can contain any combination of characters.

  • Um nome blob deve ter pelo menos um personagem de comprimento e não pode ter mais de 1.024 caracteres, para bolhas no Azure Storage.A blob name must be at least one character long and cannot be more than 1,024 characters long, for blobs in Azure Storage.

    O emulador de armazenamento Azure suporta nomes blob até 256 caracteres de comprimento.The Azure Storage emulator supports blob names up to 256 characters long. Para obter mais informações, consulte o emulador de armazenamento Azure para desenvolvimento e teste.For more information, see Use the Azure storage emulator for development and testing.

  • Os nomes das bolhas são sensíveis a casos.Blob names are case-sensitive.

  • Os carateres de URL reservados devem ser escritos corretamente.Reserved URL characters must be properly escaped.

  • O número de segmentos de linha que inclui o nome do blob não pode exceder 254.The number of path segments comprising the blob name cannot exceed 254. Um segmento de caminho é a cadeia entre caracteres delimiter consecutivos (por exemplo, o corte dianteiro '/') que corresponde ao nome de um diretório virtual.A path segment is the string between consecutive delimiter characters (e.g., the forward slash '/') that corresponds to the name of a virtual directory.

Nota

Evite nomes blob que terminam com um ponto (.), um corte para a frente (/), ou uma sequência ou combinação dos dois.Avoid blob names that end with a dot (.), a forward slash (/), or a sequence or combination of the two. Nenhum segmento de caminho deve terminar com um ponto (.).No path segments should end with a dot (.).

O serviço Blob baseia-se num esquema de armazenamento plano, não num esquema hierárquico.The Blob service is based on a flat storage scheme, not a hierarchical scheme. No entanto, pode especificar um personagem ou delimiter de corda dentro de um nome blob para criar uma hierarquia virtual.However, you may specify a character or string delimiter within a blob name to create a virtual hierarchy. Por exemplo, a lista a seguir mostra nomes de blob válidos e únicos.For example, the following list shows valid and unique blob names. Note que uma cadeia pode ser válida tanto como um nome blob como como um nome de diretório virtual no mesmo recipiente:Notice that a string can be valid as both a blob name and as a virtual directory name in the same container:

  • /a/a

  • /a.txt/a.txt

  • /a/b/a/b

  • /a/b.txt/a/b.txt

Pode aproveitar o carácter delimiter ao enumerar bolhas.You can take advantage of the delimiter character when enumerating blobs.

Nomes de metadadosMetadata Names

Os metadados para um recipiente ou recurso blob são armazenados como pares de valor-nome associados ao recurso.Metadata for a container or blob resource is stored as name-value pairs associated with the resource. Os nomes dos metadados devem respeitar as regras de nomeação dos identificadores C#.Metadata names must adhere to the naming rules for C# identifiers.

Note que os nomes dos metadados preservam o caso com o qual foram criados, mas são insensíveis a casos quando definidos ou lidos.Note that metadata names preserve the case with which they were created, but are case-insensitive when set or read. Se dois ou mais cabeçalhos de metadados com o mesmo nome forem submetidos para um recurso, o código de estado do serviço Blob 400 (Mau Pedido).If two or more metadata headers with the same name are submitted for a resource, the Blob service returns status code 400 (Bad Request).

Sintaxe URI de recursoResource URI Syntax

Cada recurso tem um URI base correspondente, que se refere ao próprio recurso.Each resource has a corresponding base URI, which refers to the resource itself.

Para a conta de armazenamento, o URI base inclui apenas o nome da conta:For the storage account, the base URI includes the name of the account only:

https://myaccount.blob.core.windows.net

Para um contentor, o URI base inclui o nome da conta e o nome do contentor:For a container, the base URI includes the name of the account and the name of the container:

https://myaccount.blob.core.windows.net/mycontainer

Para uma bolha, o URI base inclui o nome da conta, o nome do recipiente e o nome da bolha:For a blob, the base URI includes the name of the account, the name of the container, and the name of the blob:

https://myaccount.blob.core.windows.net/mycontainer/myblob

Uma conta de armazenamento pode ter um recipiente de raiz, um recipiente predefinido que pode ser omitido do URI.A storage account may have a root container, a default container that can be omitted from the URI. Uma bolha no recipiente de raiz pode ser referenciada sem nomear o recipiente, ou o recipiente de raiz pode ser explicitamente referenciado pelo seu nome ( $root ).A blob in the root container can be referenced without naming the container, or the root container can be explicitly referenced by its name ($root). Consulte trabalhar com o recipiente raiz para obter mais informações.See Working with the Root Container for more information. Os seguintes URIs referem-se a uma bolha no recipiente raiz:The following URIs both refer to a blob in the root container:

https://myaccount.blob.core.windows.net/myblob  
https://myaccount.blob.core.windows.net/$root/myblob  

Blob SnapshotsBlob Snapshots

Um instantâneo é uma versão apenas de leitura de uma bolha armazenada como era no momento em que o instantâneo foi criado.A snapshot is a read-only version of a blob stored as it was at the time the snapshot was created. Pode utilizar instantâneos para criar uma cópia de segurança ou um ponto de verificação de uma bolha.You can use snapshots to create a backup or checkpoint of a blob. Um nome de bolha snapshot inclui o blob uri base mais um valor de tempo de data que indica quando o instantâneo foi criado.A snapshot blob name includes the base blob URI plus a date-time value that indicates when the snapshot was created.

Por exemplo, assuma que uma bolha tem o seguinte URI:For example, assume that a blob has the following URI:

https://myaccount.blob.core.windows.net/mycontainer/myblob

O URI para uma foto dessa bolha é formado da seguinte forma:The URI for a snapshot of that blob is formed as follows:

https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=<DateTime>

Ver tambémSee also