Upgrade Azure Blob Storage s využitím možností Azure Data Lake Storage Gen2

Tento článek vám pomůže povolit hierarchický obor názvů a odemknout funkce, jako je zabezpečení na úrovni souborů a adresářů a rychlejší operace. Tyto funkce jsou široce využívány úlohami analýzy velkých objemů dat a souhrnně se označují jako Azure Data Lake Storage Gen2. Mezi nejoblíbenější funkce patří:

  • Vyšší propustnost, vstupně-výstupní operace za sekundu (IOPS) a limity kapacity úložiště.

  • Rychlejší operace (například operace přejmenování), protože můžete pracovat s identifikátory URI jednotlivých uzlů.

  • Efektivní dotazovací stroj, který přenáší pouze data potřebná k provedení dané operace.

  • Zabezpečení na úrovni kontejneru, adresáře a souboru.

Další informace o nich najdete v tématu Úvod do Azure Data Lake Storage Gen2.

Tento článek vám pomůže vyhodnotit dopad na úlohy, aplikace, náklady, integraci služeb, nástroje, funkce a dokumentaci. Nezapomeňte si tyto dopady pečlivě projít. Až budete připraveni upgradovat účet, projděte si tuto podrobnou příručku: Upgrade Azure Blob Storage s Azure Data Lake Storage Gen2 funkcemi.

Důležité

Upgrade je jednosměrný. Po provedení upgradu už nelze účet vrátit zpět. Doporučujeme ověřit upgrade v neprodukčním prostředí.

Dopad na dostupnost

Nezapomeňte naplánovat nějaký výpadek ve vašem účtu, než se proces upgradu dokončí. Operace zápisu jsou při upgradu vašeho účtu zakázané. Operace čtení nejsou zakázané, ale důrazně doporučujeme pozastavit operace čtení, protože tyto operace můžou proces upgradu stabilizovat.

Dopad na úlohy a aplikace

Rozhraní Blob API pracují s účty, které mají hierarchický obor názvů, takže většina aplikací, které s vaším účtem komunikují pomocí těchto rozhraní API, dál funguje bez úprav.

Úplný seznam problémů a jejich alternativní řešení najdete v tématu Známé problémy s rozhraními API služby Blob Storage.

Všechny úlohy Hadoop, které používají ovladač windows Azure Storage Blob Driver (WASB), musí být upraveny tak, aby používaly ovladač AbFS (Azure Blob File System). Na rozdíl od ovladače WASB, který provádí požadavky na koncový bod služby Blob Service, bude ovladač ABFS provádět požadavky na koncový bod Data Lake Storage vašeho účtu.

koncový bod Data Lake Storage

Váš upgradovaný účet bude mít koncový bod služby Data Lake Storage. Adresu URL tohoto koncového bodu najdete v Azure Portal otevřením stránky Vlastnosti vašeho účtu.

Kategorie Pro obecné účely v2

Abyste mohli tento koncový bod používat, nemusíte upravovat stávající aplikace a úlohy. Víceprotokolový přístup v Data Lake Storage umožňuje používat k interakci s daty koncový bod služby Blob Service nebo koncový bod služby Data Lake Storage.

Služby a nástroje Azure (například AzCopy) můžou k interakci s daty ve vašem účtu úložiště používat koncový bod úložiště Data Lake. Tento nový koncový bod budete také muset použít pro všechny operace, které provedete pomocí sad SDK Data Lake Storage Gen2, příkazů PowerShellu nebo příkazů Azure CLI.

Adresáře

Účet úložiště Blob, který nemá hierarchický obor názvů, uspořádá soubory v plochém paradigmatu, nikoli v hierarchickém paradigmatu. Objekty blob jsou uspořádané do virtuálních adresářů, aby napodobovaly strukturu složek. Virtuální adresář tvoří součást názvu objektu blob a je označen znakem oddělovače. Vzhledem k tomu, že virtuální adresář je součástí názvu objektu blob, ve skutečnosti neexistuje jako nezávislý objekt.

Váš nový účet má hierarchický obor názvů. To znamená, že adresáře nejsou virtuální. Jedná se o betonové nezávislé objekty, se kterými můžete pracovat přímo. Adresář může existovat bez jakýchkoli souborů. Když odstraníte adresář, odeberou se všechny soubory v daném adresáři. Před zmizením adresáře už nemusíte odstraňovat jednotlivé objekty blob.

Metadata objektů blob

Před migrací jsou metadata objektu blob přidružená k názvu objektu blob spolu s celou jeho virtuální cestou. Po migraci jsou metadata přidružená jenom k objektu blob. Virtuální cesta k objektu blob se stane kolekcí adresářů. Metadata objektu blob se nepoužijí na žádný z těchto adresářů.

Operace vložení

Když nahrajete objekt blob a zadaná cesta obsahuje adresář, který neexistuje, operace tento adresář vytvoří a pak do něj přidá objekt blob. Toto chování je logické v kontextu hierarchické struktury složek. V účtu blob storage, který nemá hierarchický obor názvů, operace nevytvoří adresář. Místo toho se název adresáře přidá do názvu objektu blob.

Operace se seznamem

Operace vypsat objekty blob vrátí adresáře i soubory. Každý z nich je uvedený samostatně. Adresáře se v seznamu zobrazují jako objekty blob nulové délky. V účtu blob storage, který nemá hierarchický obor názvů, vrátí operace Výpis objektů blob pouze objekty blob, nikoli adresáře. Pokud použijete operaci Data Lake Storage Gen2 Cesta – Výpis, adresáře se zobrazí jako položky adresáře, a ne jako objekty blob nulové délky.

Pořadí seznamu se také liší. Adresáře a soubory se zobrazují v pořadí hloubkového vyhledávání . Účet úložiště objektů blob, který nemá hierarchický obor názvů, uvádí objekty blob v lexicografickém pořadí.

Operace přejmenování objektů blob

Přejmenování objektu blob je mnohem efektivnější, protože klientské aplikace můžou přejmenovat objekt blob během jedné operace. V účtech, které nemají hierarchický obor názvů, musí nástroje a aplikace zkopírovat objekt blob a pak odstranit zdrojový objekt blob.

Poznámka

Při přejmenování objektu blob se čas poslední změny objektu blob neaktualizuje. Je to proto, že obsah objektu blob se nemění.

Dopad na náklady

Provedení upgradu není nijak nákladné. Po upgradu se náklady na uložení dat nezmění, ale změní se náklady na transakci. Na těchto stránkách můžete porovnat náklady.

K odhadu dopadu nákladů po upgradu můžete také použít možnost Účty úložiště v cenové kalkulačce Azure .

Kromě změn cen zvažte úspory nákladů spojené s možnostmi Data Lake Storage Gen2. Celkový součet nákladů na vlastnictví obvykle klesá kvůli vyšší propustnosti a optimalizovaným operacím. Vyšší propustnost umožňuje přenášet více dat za kratší dobu. Hierarchický obor názvů zlepšuje efektivitu operací.

Dopad na integrace služeb

I když většina integrací služeb Azure bude i po povolení těchto funkcí dál fungovat, některé z nich zůstanou ve verzi Preview nebo ještě nejsou podporované. Informace o aktuální podpoře integrace služeb Azure s Data Lake Storage Gen2 najdete v tématu Služby Azure, které podporují Azure Data Lake Storage Gen2.

Dopad na nástroje, funkce a dokumentaci

Po upgradu se změní způsob, jakým s některými funkcemi pracujete. Tato část popisuje tyto změny.

Podpora funkcí Blob Storage

I když většina funkcí úložiště objektů blob bude fungovat i po povolení těchto funkcí, některé z nich zůstanou ve verzi Preview nebo se ještě nepodporují.

Informace o aktuální podpoře funkcí služby Blob Storage s Data Lake Storage Gen2 najdete v tématu Funkce služby Blob Storage dostupné v Azure Data Lake Storage Gen2.

Diagnostické protokoly

Pokud povolíte protokolování analýzy úložiště, máte teď možnost použít formát protokolu verze 2.0.

Tuto novou verzi nemusíte používat. Všechny operace, které se použijí na koncový bod služby Data Lake Storage, se ale zaznamenávají jenom v protokolech verze 2.0. Některé služby a nástroje, které používáte (například AzCopy), budou tento koncový bod používat k provádění operací s vaším účtem. Pokud chcete zajistit, abyste zachytáli informace protokolování ze všech aktivit, zvažte použití formátu protokolu verze 2.0.

Správa životního cyklu Azure

Efektivně vysvětluje, že zásady pro přesun nebo odstranění všech objektů blob v adresáři neodstraní samotný adresář, dokud se neodeberou všechny objekty blob v něm a adresář se odebere následující den.

Event Grid

Váš nový účet má dva koncové body: koncový bod úložiště Data Lake a koncový bod služby Blob Service. Služby, nástroje a aplikace můžou k práci s vašimi daty používat oba koncové body. V důsledku toho může odpověď na událost vrácenou službou Event Grid zobrazit některý z těchto dvou koncových bodů v poli url , které popisuje ovlivněný objekt blob.

Následující kód JSON ukazuje adresu URL objektu blob, která se zobrazí v odpovědi na událost při vytvoření objektu blob pomocí koncového bodu služby Blob Service.

{
  "topic": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
  "subject": "/blobServices/default/containers/test-container/blobs/new-file.txt",
  "eventType": "Microsoft.Storage.BlobCreated",
  "eventTime": "2017-06-26T18:41:00.9584103Z",
  "id": "831e1650-001e-001b-66ab-eeb76e069631",
  "data": {
    "api": "PutBlockList",
    "clientRequestId": "6d79dbfb-0e37-4fc4-981f-442c9ca65760",
    "requestId": "831e1650-001e-001b-66ab-eeb76e000000",
    "eTag": "\"0x8D4BCC2E4835CD0\"",
    "contentType": "text/plain",
    "contentLength": 524288,
    "blobType": "BlockBlob",
    "url": "https://my-storage-account.blob.core.windows.net/testcontainer/new-file.txt",
    "sequencer": "00000000000004420000000000028963",
    "storageDiagnostics": {
      "batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
    }
  },
  "dataVersion": "",
  "metadataVersion": "1"
}

Následující kód JSON ukazuje adresu URL objektu blob, která se zobrazí v odpovědi na událost při vytvoření objektu blob pomocí koncového bodu úložiště Data Lake.

{
  "topic": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
  "subject": "/blobServices/default/containers/my-file-system/blobs/new-file.txt",
  "eventType": "Microsoft.Storage.BlobCreated",
  "eventTime": "2017-06-26T18:41:00.9584103Z",
  "id": "831e1650-001e-001b-66ab-eeb76e069631",
  "data": {
    "api": "CreateFile",
    "clientRequestId": "6d79dbfb-0e37-4fc4-981f-442c9ca65760",
    "requestId": "831e1650-001e-001b-66ab-eeb76e000000",
    "eTag": "\"0x8D4BCC2E4835CD0\"",
    "contentType": "text/plain",
    "contentLength": 0,
    "contentOffset": 0,
    "blobType": "BlockBlob",
    "url": "https://my-storage-account.dfs.core.windows.net/my-file-system/new-file.txt",
    "sequencer": "00000000000004420000000000028963",
    "storageDiagnostics": {
      "batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
    }
  },
  "dataVersion": "2",
  "metadataVersion": "1"
}

Pokud vaše aplikace používají Event Grid, možná budete muset tyto aplikace upravit, aby to bylo možné vzít v úvahu.

Průzkumník služby Storage

Na pásu karet Průzkumník služby Azure Storage se zatím nezobrazují následující tlačítka:

Tlačítko Důvod
Zkopírování adresy URL Dosud neimplementováno
Správa snímků Dosud neimplementováno
Zrušit odstranění Závisí na funkcích úložiště objektů blob, které Data Lake Storage Gen2 zatím nepodporují.

Následující tlačítka se v novém účtu chovají odlišně.

Tlačítko Chování úložiště objektů blob Data Lake Storage Gen2 chování
Složka Složka je virtuální a zmizí, pokud do ní nepřidáte soubory. Složka existuje i bez přidaných souborů.
přejmenování Výsledkem je kopie a následné odstranění zdrojového objektu blob. Přejmenuje stejný objekt blob. Mnohem efektivnější.

Dokumentace

Pokyny k používání funkcí Data Lake Storage Gen2 najdete tady: Úvod do Azure Data Lake Storage Gen2.

Nic se nezměnilo s ohledem na to, kde najdete pokyny pro všechny stávající funkce úložiště objektů blob. Tyto pokyny najdete tady: Úvod do služby Azure Blob Storage.

Při procházení mezi sadami obsahu si všimnete drobných rozdílů v terminologii. Například obsah doporučený v obsahu Data Lake Storage Gen2 může místo objektů blob a kontejneru používat termín soubor a systém souborů. Pojmy soubor a systém souborů mají hluboké kořeny ve světě analýzy velkých objemů dat, kde má Data Lake Storage dlouhou historii. Obsah obsahuje tyto termíny, aby byl pro tyto cílové skupiny srozumitelný. Tyto termíny nepopisují samostatné věci.

Další kroky

Až budete připraveni upgradovat účet úložiště tak, aby zahrnoval možnosti Data Lake Storage Gen2, projděte si tohoto podrobného průvodce.