Azure Data Lake Storage Gen2 hiërarchische naamruimte

Een belangrijk mechanisme waarmee Azure Data Lake Storage Gen2 prestaties van het bestandssysteem op objectopslagschaal en -prijzen kan leveren, is het toevoegen van een hiërarchische naamruimte. Hierdoor kan de verzameling van objecten/bestanden in een account worden ingedeeld in een hiërarchie van mappen en geneste submappen op dezelfde manier als het bestandssysteem op uw computer is georganiseerd. Als een hiërarchische naamruimte is ingeschakeld, kan een opslagaccount de schaalbaarheid en kosteneffectiviteit van objectopslag bieden, met semantiek van het bestandssysteem die bekend is bij analyse-engines en frameworks.

De voordelen van een hiërarchische naamruimte

De volgende voordelen zijn gekoppeld aan bestandssystemen die een hiërarchische naamruimte implementeren voor blobgegevens:

  • Atomische directorymanipulatie: Object slaat een adreslijsthiërarchie bij benadering op door een conventie voor het insluiten van slashes (/) in de objectnaam om padsegmenten aan te geven. Hoewel deze conventie werkt voor het ordenen van objecten, biedt de conventie geen hulp voor acties zoals het verplaatsen, hernoemen of verwijderen van mappen. Zonder echte directory's moeten toepassingen mogelijk miljoenen afzonderlijke blobs verwerken om taken op directoryniveau te kunnen uitvoeren. Een hiërarchische naamruimte verwerkt deze taken daarentegen door één vermelding (de bovenliggende map) bij te werken.

    Deze dramatische optimalisatie is met name belangrijk voor veel frameworks voor big data-analyse. Hulpprogramma's zoals Hive, Spark, enzovoort. schrijf vaak uitvoer naar tijdelijke locaties en wijzig de naam van de locatie aan het einde van de taak. Zonder een hiërarchische naamruimte kan deze naamwijziging vaak langer duren dan het analyseproces zelf. Een lagere taaklatentie is gelijk aan lagere TCO (Total Cost of Ownership) voor analyseworkloads.

  • Vertrouwde interfacestijl: Bestandssystemen zijn goed begrepen door ontwikkelaars en gebruikers. Het is niet nodig om een nieuw opslagparadigma te leren wanneer u naar de cloud overstapt, omdat de bestandssysteeminterface die wordt weergegeven door Data Lake Storage Gen2 hetzelfde paradigma is dat door computers wordt gebruikt, groot en klein.

Een van de redenen waarom objectarchieven in het verleden geen hiërarchische naamruimte ondersteunden, is dat een hiërarchische naamruimte de schaal beperkt. De Data Lake Storage Gen2 hiërarchische naamruimte wordt echter lineair geschaald en heeft geen invloed op de gegevenscapaciteit of prestaties.

Bepalen of een hiërarchische naamruimte moet worden ingeschakeld

Nadat u een hiërarchische naamruimte voor uw account hebt ingeschakeld, kunt u deze niet terugzetten naar een platte naamruimte. Overweeg daarom of het zinvol is om een hiërarchische naamruimte in te schakelen op basis van de aard van de workloads van uw objectopslag. Zie Upgraden van Azure Blob Storage met Azure Data Lake Storage Gen2 mogelijkheden om de impact van het inschakelen van een hiërarchische naamruimte op workloads, toepassingen, kosten, service-integraties, hulpprogramma's, functies en documentatie te evalueren.

Sommige workloads profiteren mogelijk niet van het inschakelen van een hiërarchische naamruimte. Voorbeelden hiervan zijn back-ups, opslag van afbeeldingen en andere toepassingen waarbij objectorganisatie afzonderlijk van de objecten zelf wordt opgeslagen (bijvoorbeeld in een afzonderlijke database).

Hoewel de ondersteuning voor Blob Storage-functies en het Azure-service-ecosysteem blijft groeien, zijn er nog steeds enkele functies en Azure-services die nog niet worden ondersteund in accounts met een hiërarchische naamruimte. Zie Bekende problemen.

Over het algemeen raden we u aan een hiërarchische naamruimte in te schakelen voor opslagworkloads die zijn ontworpen voor bestandssystemen die mappen bewerken. Dit omvat alle workloads die voornamelijk voor analyseverwerking zijn bedoeld. Gegevenssets waarvoor een hoge mate van organisatie is vereist, profiteren ook van het inschakelen van een hiërarchische naamruimte.

De redenen voor het inschakelen van een hiërarchische naamruimte worden bepaald door een TCO-analyse. Over het algemeen zijn voor verbeteringen in workloadlatentie als gevolg van opslagversnelling minder tijd rekenresources nodig. Latentie voor veel workloads kan worden verbeterd als gevolg van atomische directorymanipulatie die wordt ingeschakeld door een hiërarchische naamruimte. In veel workloads vertegenwoordigt > de rekenresource 85% van de totale kosten, waardoor zelfs een bescheiden vermindering van de workloadlatentie gelijk is aan een aanzienlijke besparing op de TCO. Zelfs in gevallen waarin het inschakelen van een hiërarchische naamruimte de opslagkosten verhoogt, wordt de TCO nog steeds verlaagd vanwege lagere rekenkosten.

Zie prijzen voor Azure Data Lake Storage Gen2 voor het analyseren van verschillen in prijzen voor gegevensopslag, transactieprijzen en reserveringsprijzen voor opslagcapaciteit tussen accounts met een platte hiërarchische naamruimte versus een hiërarchische naamruimte.

Volgende stappen