Pojmenování kontejnerů, objektů blob a metadat a odkazování na tyto kontejnery

Toto téma popisuje pojmenování kontejnerů, objektů blob, metadat a snímků a odkazování na tyto kontejnery. Účet úložiště může obsahovat nula nebo více kontejnerů. Kontejner obsahuje vlastnosti, metadata a nula nebo více objektů blob. Objekt blob je každá jedna entita, která se skládá z binárních dat, vlastností a metadat.

Názvy prostředků

Identifikátor URI, který odkazuje na kontejner nebo objekt blob, musí být jedinečný. Vzhledem k tomu, že každý název účtu je jedinečný, mohou mít dva účty kontejnery se stejným názvem. V rámci daného účtu úložiště ale každý kontejner musí mít jedinečný název. Každý objekt blob v daném kontejneru musí mít také jedinečný název v rámci tohoto kontejneru.

Pokud se pokusíte vytvořit kontejner nebo objekt blob s názvem, který porušuje pravidla pojmenování, požadavek selže se stavový kódem 400 (Chybný požadavek).

Důležité

Názvy objektů blob a kontejnerů se předá Blob service v rámci adresy URL. Některé znaky musí být zakódované v procentech, aby se v adrese URL objevily pomocí UTF-8 (upřednostňované) nebo MBCS. K tomuto kódování dochází automaticky při použití Azure Storage klientských knihoven. Existují však určité znaky, které v cestách URL nejsou platné ani při kódování. Tyto znaky se nesmí zobrazovat v názvech objektů blob ani kontejnerů. Body kódu, jako je \uE000, i když jsou platné v názvech souborů NTFS, nejsou platné znaky Unicode, takže je nelze použít. Kromě toho nejsou povolené ani některé znaky ASCII nebo Unicode, jako jsou řídicí znaky (0x00 až 0x1F, \u0081 atd.). Pravidla řídící řetězce unicode v HTTP/1.1 najdete v RFC 2616, oddíl 2.2: Základní pravidla a RFC 3987.

Názvy kontejnerů

Název kontejneru musí být platný název DNS, který odpovídá následujícím pravidlům pro pojmenování:

  • Názvy kontejnerů musí začínět nebo končovat písmenem nebo číslicí a mohou obsahovat pouze písmena, číslice a pomlčky (-).

  • Bezprostředně před a za každým znakem pomlčky (-) se musí nacházet písmeno nebo číslice. Názvy kontejnerů nesmí obsahovat po sobě jdoucí pomlčky.

  • Název kontejneru musí být psaný malými písmeny.

  • Názvy kontejnerů musí mít délku 3 až 63 znaků.

Názvy objektů blob

Název objektu blob musí odpovídat následujícím pravidlům pojmenování:

  • Název objektu blob může obsahovat libovolnou kombinaci znaků.

  • Název objektu blob musí být alespoň jeden znak dlouhý a nesmí být delší než 1 024 znaků pro objekty blob v Azure Storage.

    Emulátor Azure Storage podporuje názvy objektů blob dlouhé až 256 znaků. Další informace najdete v tématu Použití emulátoru úložiště Azure pro vývoj a testování.

  • V názvech objektů blob se rozlišují malá a velká písmena.

  • Vyhrazené znaky v adresách URL musí být správně uzavřené do uvozovek.

  • Počet segmentů cesty, ze kterých se název objektu blob skládá, nesmí překročit 254. Segment cesty je řetězec mezi po sobě jdoucími znaky oddělovače (např. lomítko '/'), které odpovídá názvu virtuálního adresáře.

Poznámka

Vyhněte se názvům objektů blob, které končí tečkou (.), lomítkem (/) nebo posloupností či kombinací těchto dvou objektů. Žádné segmenty cest by neměly končovat tečkou (.).

Schéma Blob service založené na schématu plochého úložiště, nikoli na hierarchickém schématu. Můžete ale zadat znak nebo oddělovač řetězců v názvu objektu blob a vytvořit tak virtuální hierarchii. Například následující seznam obsahuje platné a jedinečné názvy objektů blob. Všimněte si, že řetězec může být platný jako název objektu blob i jako název virtuálního adresáře ve stejném kontejneru:

  • /a

  • /a.txt

  • /a/b

  • /a/b.txt

Při vytváření výčtu objektů blob můžete využít znak oddělovače.

Názvy metadat

Metadata pro prostředek kontejneru nebo objektu blob se ukládají jako páry název-hodnota přidružené k prostředku. Názvy metadat musí splňovat pravidla pojmenování pro identifikátory jazyka C#.

Všimněte si, že názvy metadat zachovávají velká a malá písmena, se kterým byly vytvořeny, ale při nastavení nebo čtení se malá a velká písmena nerozlišovat. Pokud jsou pro prostředek odeslány dvě nebo více hlaviček metadat se stejným názvem, Blob service stavový kód 400 (Chybný požadavek).

Syntaxe identifikátoru URI prostředku

Každý prostředek má odpovídající základní identifikátor URI, který odkazuje na samotný prostředek.

Pro účet úložiště obsahuje základní identifikátor URI pouze název účtu:

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

Základní identifikátor URI kontejneru obsahuje název účtu a název kontejneru:

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

Základní identifikátor URI objektu blob obsahuje název účtu, název kontejneru a název objektu blob:

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

Účet úložiště může mít kořenový kontejner, výchozí kontejner, který je možné z identifikátoru URI vynechat. Na objekt blob v kořenovém kontejneru je možné odkazovat bez pojmenování kontejneru nebo na kořenový kontejner se může explicitně odkazovat pomocí jeho názvu ( $root ). Další informace najdete v tématu Práce s kořenovým kontejnerem. Následující identifikátory URI odkazují na objekt blob v kořenovém kontejneru:

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

Snímky objektů blob

Snímek je verze objektu blob uložených jen pro čtení, která byla v době vytvoření snímku. Snímky můžete použít k vytvoření zálohy nebo kontrolního bodu objektu blob. Název objektu blob snímku obsahuje základní identifikátor URI objektu blob plus hodnotu data a času, která označuje, kdy byl snímek vytvořen.

Předpokládejme například, že objekt blob má následující identifikátor URI:

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

Identifikátor URI pro snímek tohoto objektu blob se vytvoří takto:

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

Viz také