Uppgradera Azure Blob Storage med Azure Data Lake Storage Gen2 funktioner

Den här artikeln hjälper dig att aktivera en hierarkisk namnrymd och upplåsningsfunktioner som säkerhet på fil- och katalognivå och snabbare åtgärder. Dessa funktioner används ofta av arbetsbelastningar för stordataanalys och kallas gemensamt för Azure Data Lake Storage Gen2. De mest populära funktionerna är:

  • Högre dataflöde, indata-/utdataåtgärder per sekund (IOPS) och lagringskapacitetsgränser.

  • Snabbare åtgärder (till exempel byt namn på åtgärder) eftersom du kan använda enskilda nod-URI:er.

  • Effektiv frågemotor som endast överför de data som krävs för att utföra en viss åtgärd.

  • Säkerhet på container-, katalog- och filnivå.

Mer information om dem finns i Introduktion till Azure Data Lake Storage Gen2.

Den här artikeln hjälper dig att utvärdera påverkan på arbetsbelastningar, program, kostnader, tjänstintegreringar, verktyg, funktioner och dokumentation. Se till att granska dessa effekter noggrant. När du är redo att uppgradera ett konto kan du läsa den här stegvisa guiden: Uppgradera Azure Blob Storage med Azure Data Lake Storage Gen2 funktioner.

Viktigt

Uppgraderingar sker bara åt ena hållet. Det går inte att återställa ditt konto när du väl har utfört uppgraderingen. Vi rekommenderar att du verifierar uppgraderingen i en icke-produktionsmiljö.

Påverkan på tillgängligheten

Se till att planera för viss stilleståndstid i ditt konto medan uppgraderingsprocessen slutförs. Skrivåtgärder inaktiveras medan ditt konto uppgraderas. Läsåtgärder är inte inaktiverade, men vi rekommenderar starkt att du inaktiverar läsåtgärder eftersom dessa åtgärder kan destabilisera uppgraderingsprocessen.

Påverkan på arbetsbelastningar och program

Blob-API:er fungerar med konton som har en hierarkisk namnrymd, så de flesta program som interagerar med ditt konto med hjälp av dessa API:er fortsätter att fungera utan ändringar.

En fullständig lista över problem och lösningar finns i Kända problem med Blob Storage-API:er.

Alla Hadoop-arbetsbelastningar som använder DRIVrutinen för Windows Azure Storage Blob Driver (WASB) måste ändras för att använda ABFS-drivrutinen (Azure Blob File System). Till skillnad från DEN WASB-drivrutin som gör begäranden till Blob Service-slutpunkten kommer ABFS-drivrutinen att göra begäranden till Data Lake Storage slutpunkten för ditt konto.

Data Lake Storage slutpunkt

Ditt uppgraderade konto har en Data Lake-lagringsslutpunkt. Du hittar URL:en för den här slutpunkten i Azure Portal genom att öppna sidan Egenskaper för ditt konto.

Kategorin Generell användning v2

Du behöver inte ändra dina befintliga program och arbetsbelastningar för att använda den slutpunkten. Multiprotocol-åtkomst i Data Lake Storage gör det möjligt för dig att använda blobtjänstslutpunkten eller Data Lake-lagringsslutpunkten för att interagera med dina data.

Azure-tjänster och -verktyg (till exempel AzCopy) kan använda Data Lake-lagringsslutpunkten för att interagera med data i ditt lagringskonto. Du måste också använda den här nya slutpunkten för alla åtgärder som du utför med hjälp av Data Lake Storage Gen2 SDK:er, PowerShell-kommandon eller Azure CLI-kommandon.

Kataloger

Ett Blob Storage-konto som inte har ett hierarkiskt namnområde organiserar filer i ett platt paradigm i stället för ett hierarkiskt paradigm. Blobar är ordnade i virtuella kataloger för att efterlikna en mappstruktur. En virtuell katalog utgör en del av blobens namn och anges med avgränsartecknet. Eftersom en virtuell katalog är en del av blobnamnet finns den inte som ett oberoende objekt.

Det nya kontot har ett hierarkiskt namnområde. Det innebär att kataloger inte är virtuella. De är konkreta, oberoende objekt som du kan arbeta på direkt. En katalog kan finnas utan att innehålla några filer. När du tar bort en katalog tas alla filer i katalogen bort. Du behöver inte längre ta bort varje enskild blob innan katalogen försvinner.

Blob-metadata

Före migreringen associeras blobmetadata med blobnamnet tillsammans med hela dess virtuella sökväg. Efter migreringen associeras metadata endast med bloben. Den virtuella sökvägen till bloben blir en samling kataloger. Metadata för en blob tillämpas inte på någon av dessa kataloger.

Placera åtgärder

När du laddar upp en blob och den sökväg som du anger innehåller en katalog som inte finns, skapar åtgärden den katalogen och lägger sedan till bloben i den. Det här beteendet är logiskt i kontexten för en hierarkisk mappstruktur. I ett Blob Storage-konto som inte har ett hierarkiskt namnområde skapar åtgärden inte en katalog. I stället läggs katalognamnet till i blobens namn.

Lista åtgärder

En listblobåtgärd returnerar både kataloger och filer. Var och en listas separat. Kataloger visas i listan som blobar med noll längd. I ett Blob Storage-konto som inte har ett hierarkiskt namnområde returnerar en listblobbåtgärd endast blobbar och inte kataloger. Om du använder åtgärden Data Lake Storage Gen2 Sökväg – lista visas kataloger som katalogposter och inte som blobar med noll längd.

Listordningen är också annorlunda. Kataloger och filer visas i detaljerad sökordning . Ett Blob Storage-konto som inte har ett hierarkiskt namnområde listar blobar i lexikalisk ordning.

Åtgärder för att byta namn på blobar

Det är mycket effektivare att byta namn på en blob eftersom klientprogram kan byta namn på en blob i en enda åtgärd. I konton som inte har ett hierarkiskt namnområde måste verktyg och program kopiera en blob och sedan ta bort källbloben.

Anteckning

När du byter namn på en blob uppdateras inte blobens senaste ändringstid. Det beror på att innehållet i bloben är oförändrat.

Påverkan på kostnader

Det kostar ingenting att utföra uppgraderingen. När du har uppgraderat ändras inte kostnaden för att lagra dina data, men kostnaden för en transaktion ändras. Använd dessa sidor för att utvärdera kostnaderna.

Du kan också använda alternativet Lagringskonton i Priskalkylatorn för Azure för att beräkna effekten av kostnaderna efter en uppgradering.

Förutom prisändringar bör du överväga de kostnadsbesparingar som är kopplade till Data Lake Storage Gen2 funktioner. Den totala ägandekostnaden minskar vanligtvis på grund av högre dataflöde och optimerade åtgärder. Med högre dataflöde kan du överföra mer data på kortare tid. Ett hierarkiskt namnområde förbättrar effektiviteten för åtgärder.

Påverkan på tjänstintegreringar

De flesta Azure-tjänstintegreringar fortsätter att fungera när du har aktiverat dessa funktioner, men vissa av dem finns kvar i förhandsversionen eller stöds inte ännu. Se Azure-tjänster som stöder Azure Data Lake Storage Gen2 för att förstå det aktuella stödet för Azure-tjänstintegreringar med Data Lake Storage Gen2.

Påverkan på verktyg, funktioner och dokumentation

När du har uppgraderat ändras hur du interagerar med vissa funktioner. I det här avsnittet beskrivs dessa ändringar.

Stöd för Blob Storage-funktionen

De flesta bloblagringsfunktionerna fortsätter att fungera när du har aktiverat dessa funktioner, men vissa av dem finns kvar i förhandsversionen eller stöds inte ännu.

Se Blob Storage-funktioner som är tillgängliga i Azure Data Lake Storage Gen2 för att förstå det aktuella stödet för Blob Storage-funktioner med Data Lake Storage Gen2.

Diagnostikloggar

Om du aktiverar loggning av lagringsanalys har du nu möjlighet att använda loggformatet version 2.0.

Du behöver inte använda den här nya versionen. Alla åtgärder som tillämpas på Data Lake Storage-slutpunkten registreras dock endast i version 2.0-loggar. Vissa tjänster och verktyg som du använder (till exempel AzCopy) använder den slutpunkten för att utföra åtgärder på ditt konto. Överväg att använda loggformatet version 2.0 för att säkerställa att du samlar in logginformation från all aktivitet.

Livscykelhantering i Azure

Den förklarar effektivt att principer för att flytta eller ta bort alla blobar i en katalog inte tar bort själva katalogen förrän alla blobar i den tas bort och katalogen tas bort nästa dag.

Event Grid

Det nya kontot har två slutpunkter: Data Lake Storage-slutpunkten och Blob Service-slutpunkten. Tjänster, verktyg och program kan använda endera slutpunkten för att arbeta med dina data. Därför kan ett händelsesvar som returneras av Event Grid visa någon av dessa två slutpunkter i url-fältet som beskriver den berörda bloben.

Följande JSON visar URL:en för en blob som visas i händelsesvaret när en blob skapas med hjälp av blobtjänstslutpunkten.

{
  "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"
}

Följande JSON visar URL:en för en blob som visas i händelsesvaret när en blob skapas med hjälp av Data Lake Storage-slutpunkten.

{
  "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"
}

Om dina program använder Event Grid kan du behöva ändra dessa program för att ta hänsyn till detta.

Storage Explorer

Följande knappar visas ännu inte i menyfliksområdet för Azure Storage Explorer:

Button (Knapp) Anledning
Kopiera URL Har inte implementerats ännu
Hantera ögonblicksbilder Har inte implementerats ännu
Ångra borttagning Beror på bloblagringsfunktioner som ännu inte stöds med Data Lake Storage Gen2

Följande knappar fungerar annorlunda i det nya kontot.

Button (Knapp) Blob Storage-beteende Data Lake Storage Gen2 beteende
Mapp Mappen är virtuell och försvinner om du inte lägger till filer i den. Mappen finns även utan att några filer har lagts till i den.
Byt namn Resulterar i en kopia och sedan en borttagning av källbloben Byter namn på samma blob. Mycket effektivare.

Dokumentation

Du hittar vägledning för hur du använder Data Lake Storage Gen2 funktioner här: Introduktion till Azure Data Lake Storage Gen2.

Ingenting har ändrats när det gäller var du hittar vägledningen för alla befintliga Blob Storage-funktioner. Den vägledningen finns här: Introduktion till Azure Blob Storage.

När du flyttar mellan innehållsuppsättningar ser du några mindre terminologiskillnader. Innehåll som finns i Data Lake Storage Gen2 innehåll kan till exempel använda termen fil- och filsystem i stället för blob och container. Termerna fil - och filsystem är djupt rotade i stordataanalysens värld där Data Lake Storage har haft en lång historik. Innehållet innehåller dessa termer för att hålla det relatabelt för dessa målgrupper. De här termerna beskriver inte separata saker.

Nästa steg

När du är redo att uppgradera ditt lagringskonto så att det innehåller Data Lake Storage Gen2 funktioner kan du läsa den här stegvisa guiden.