Azure Storage nabízí mnoho užitečných funkcí a služeb, které usnadňují integraci do stávajících systémů. Nová řešení mohou tyto vlastnosti využít na architektonické úrovni. Znalost toho, které běžné vzory jsou nativně podporovány službou Azure Storage, může radikálně urychlit vývoj. Zde je jejich přehled.
Blob Storage / Blob Service / Containers
Shared Access Tokens
Kontejner může delegovat určitá oprávnění prostřednictvím kódu jazyka JavaScript (SAS (shared access signature) token (například). Každý token je podepsán privátním klíčem. Existují tři způsoby generování tokenu, z nichž každý poskytuje oprávnění jiným způsobem:
Oprávnění uživatele ověřeného službou Azure Active Directory na základě role.
Jednotlivá oprávnění delegovaná uživateli Azure Active Directory.
Jednotlivá oprávnění založená na jednom ze dvou klíčů účtu úložiště, který je možné ručně znovu vygenerovat.
Tyto tokeny lze snadno generovat dynamicky kódem, takže má smysl omezit jejich trvání na konkrétní čas. Když token nějakým způsobem unikne, útočník má omezený čas na provedení škodlivé akce.
Immutable Storage
Mnoho článků musí být z právních důvodů archivováno. Neměnné úložiště je digitální ekvivalent archivu dokumentů. Kontejner je možné uzamknout pomocí neměnných zásad služby Blob Storage. Uzamčené objekty blob nelze odstranit, upravit ani přesunout. Existují dva druhy zámků – Time-based retention a Legal hold. Uchovávání na základě času udržuje zámek po určitou dobu. Blokování z právních důvodů je přiřazená značka, která uzamkne kontejner nebo objekt blob.
Metadata
Objekt blob může obsahovat další páry klíč-hodnota dat. Typickým příkladem je Content-Type
, který se používá jako HTTP hlavička. Nicméně i vlastní metadata jsou obsažena v hlavičkách HTTP s předponou X
. Je to velmi užitečné v mnoha scénářích, protože JavaScript má schopnost číst tato metadata.
Index Tags
Značky indexu objektů blob poskytují integrovanou funkci pro výpis objektů blob podle vlastních atributů. Značku objektu blob lze nastavit během nahrávání nebo po něm. Každý objekt blob může mít až 10 značek indexu. Další ceny vycházejí z měsíčního průměrného počtu značek indexu v účtu úložiště.
Hierarchical Namespace
Každé úložiště (pro obecné účely v2) je možné upgradovat na úložiště Data Lake Gen2. Tato migrace nám umožňuje využít hierarchický obor názvů. Přesněji řečeno, přináší nám:
- Efektivní dotazování na podsložky.
- Mnohem rychlejší přejmenování nebo přesun blobů.
- Atomické operace s ovladačem ABFS přes koncový bod DFS.
- Granulární zabezpečení kompatibilní s POSIX.
Soft Delete
Kontejnery nebo objekty blob nemusí být vždy trvale odstraněny. Je možné nastavit období, které zpozdí skutečné smazání. Během této doby jsou tyto položky skryté a lze je obnovit. Po uplynutí této doby dojde k automatickému trvalému odstranění.
Access Tier
Aby bylo možné dosáhnout úspor nákladů, je možné data distribuovat mezi různé účty úložiště s konkrétní úrovní přístupu, která nejlépe odpovídá povaze dat. Azure v současné době nabízí čtyři druhy úrovní:
- Hot tier – nejvyšší náklady na úložiště, nejnižší náklady na přístup.
- Cool tier – asi o 30 % levnější než hot tier, ale operace zápisu nebo čtení jsou dražší. Pokud odstraníte objekt blob před dosažením jeho stáří 30 dnů, musíte zaplatit early deletion fee.
- Cold tier – přibližně o 80 % levnější než hot tier, ale operace zápisu jsou dvakrát dražší než cool tier. early deletion fee se použije do 90 dnů.
- Archive tier – přibližně o 95 % levnější než hot tier, ale zpoždění mezi požadavkem na data a doručením je v hodinách. Ustanovení early deletion fee se použije, pokud odstraníte objekt blob před tím, než dosáhne jeho stáří 180 dnů. Načtení archivovaného objektu blob může trvat až 15 hodin. Pokud si za prioritní operaci trochu připlatíte, může to trvat méně než 1 hodinu.
Blobfuse
Blobfuse umožňuje přístup k datům objektů blob bloku ve vašem účtu úložiště prostřednictvím systému souborů Linux. Jedná se o ovladač virtuálního souborového systému pro distribuce Ubuntu, Debian, SUSE, CentOS, Oracle Linux a RHEL.
Inventář
Přehledy inventáře jsou nástrojem, který vám umožní získat přehled o všech vašich datech v rámci účtu úložiště. Reporty jsou vytvářeny periodicky – denně nebo týdně. Jsou ve formátu CSV a jsou automaticky ukládány do konkrétního kontejneru.
Snímky
Snímek je kopie objektu blob pořízená v určitém časovém okamžiku pouze pro čtení. Snapshoty, na rozdíl od verzí, jsou vytvářeny ručně. Snímky objektů blob v archivní úrovni se nepodporují.
Verze
Azure Storage může automaticky uložit předchozí verzi při každé změně (nebo odstranění) objektu blob. Předchozí verze je možné zobrazit prostřednictvím sady SDK (nebo webu Azure Portal). Starší verze mohou být uloženy v jiné přístupové vrstvě, než je aktuální (propagovaná) verze.
Úkol: Odstranění starých objektů blob
Tato funkce, která je aktuálně ve verzi Preview, může zjednodušit mnoho cloudových řešení a ušetřit mnoho řádků kódu. Odstraní všechny objekty blob v konkrétním kontejneru starší než dané období.
Řízení životního cyklu
Objekty blob, které nebyly po určitou dobu změněny, je možné automaticky odstranit nebo přesunout do studeného úložiště nebo archivního úložiště. Pravidlo se vztahuje na celé úložiště nebo na konkrétní podmnožinu (s výjimkou doplňovacích objektů blob) na základě názvu nebo metadat objektu blob.
Table Storage / Table Service
Rozhraní API pro tabulky Cosmos DB
Azure Cosmos DB je přístupná stejným způsobem jako tradiční Table Storage (s novější sadou Azure Table SDK). Entita ve službě Azure Storage může mít velikost až 1 MB. Entita ve službě Azure Cosmos DB může mít velikost až 2 MB.
Queue Storage
Nekonečný interval TTL
Maximální životnost zprávy byla vždy 7 dní. Nyní je možné přihlásit se k odběru nesmrtelné zprávy, která nikdy nevyprší.
File Shares / File Service / Azure Files
Large File Shares
Maximální velikost souboru je 5 TB. Pokud aktivujete možnost large file shares, tento limit se zvýší na 100 TB. Tato akce je však nevratná. Vedlejším vedlejším účinkem je, že toto úložiště nemůže být geo-redundant, takže je omezeno na jednu oblast.
Soft Delete
Pokud je mapovaná síťová jednotka připojená prostřednictvím protokolu SMB, je možné odstraněné soubory obnovit prostřednictvím webu Azure Portal (nebo skriptu PowerShell). Maximální doba uchovávání je 365 dní. Obnovitelné odstranění pro NFS nebo SFTP podporuje Azure Data Lake Storage.
Premium Performance
Základní účty úložiště jsou fyzicky na pevných discích. Účty Premium jsou umístěny na discích SSD, které poskytují mnohem vyšší IOPS a mnohem nižší latenci. Účet služby Premium Storage může hostovat sdílenou složku úrovně Premium. Ve srovnání se standardní úrovní má levnější transakční náklady. IOPS a propustnost jsou založeny na zřízené velikosti. Na druhou stranu sdílená složka Premium nepodporuje žádnou formu geografické redundance.
Zásady přístupu k úložišti
Pokud autorizujete přístup k úložišti, tabulce nebo frontě pomocí Azure Active Directory, můžete přiřadit určité role zaregistrovaným objektům zabezpečení (uživatelům, skupinám nebo aplikačním službám). Role povoluje nebo zakazuje konkrétní akce:
- Storage – read, add, create, write, delete, list.
- Table – read, add, update, delete.
- Queue – read, add, update, process.