Hiërarchische naamruimte van Azure Data Lake Storage
Een belangrijk mechanisme waarmee Azure Data Lake Storage prestaties van het bestandssysteem kan bieden op de schaal van objectopslag en prijzen, is het toevoegen van een hiërarchische naamruimte. Hierdoor kan de verzameling objecten/bestanden binnen 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 zijn met analyse-engines en frameworks.
De voordelen van een hiërarchische naamruimte
De volgende voordelen zijn gekoppeld aan bestandssystemen die een hiërarchische naamruimte implementeren via blobgegevens:
Atomische mapmanipulatie: Object slaat een maphiërarchie bij benadering op door een conventie voor het insluiten van slashes (/) in de objectnaam te gebruiken om padsegmenten aan te geven. Hoewel deze conventie werkt voor het ordenen van objecten, biedt de conventie geen hulp bij 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 vooral belangrijk voor veel frameworks voor big data-analyses. Hulpprogramma's zoals Hive, Spark, enzovoort schrijven vaak uitvoer naar tijdelijke locaties en geven vervolgens de naam van de locatie aan het einde van de taak. Zonder een hiërarchische naamruimte kan deze naam vaak langer duren dan het analyseproces zelf. Lagere taaklatentie is gelijk aan lagere totale eigendomskosten (TCO) voor analyseworkloads.
Vertrouwde interfacestijl: bestandssystemen zijn goed begrepen door ontwikkelaars en gebruikers. Het is niet nodig om een nieuw opslagparadigma te leren wanneer u overstapt naar de cloud omdat de bestandssysteeminterface die door Data Lake Storage wordt weergegeven, hetzelfde paradigma is dat wordt gebruikt door computers, groot en klein.
Een van de redenen waarom objectarchieven een hiërarchische naamruimte niet historisch hebben ondersteund, is dat een hiërarchische naamruimte de schaal beperkt. De hiërarchische naamruimte van Data Lake Storage wordt echter lineair geschaald en heeft geen invloed op de gegevenscapaciteit of prestaties.
Bepalen of u een hiërarchische naamruimte wilt inschakelen
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 uw werkbelastingen voor het objectarchief. Zie Azure Blob Storage upgraden met azure Data Lake Storage-mogelijkheden om de impact te evalueren van het inschakelen van een hiërarchische naamruimte op workloads, toepassingen, kosten, serviceintegraties, hulpprogramma's, functies en documentatie.
Sommige workloads hebben mogelijk geen voordeel door een hiërarchische naamruimte in te schakelen. Voorbeelden hiervan zijn back-ups, afbeeldingsopslag 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. Bekijk 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. Gegevenssets waarvoor een hoge mate van organisatie is vereist, profiteren ook door een hiërarchische naamruimte in te schakelen.
De redenen voor het inschakelen van een hiërarchische naamruimte worden bepaald door een TCO-analyse. Over het algemeen zijn verbeteringen in de latentie van workloads vanwege opslagversnelling minder tijd nodig voor rekenresources. Latentie voor veel werkbelastingen kan worden verbeterd vanwege atomische mapbewerking die is ingeschakeld door een hiërarchische naamruimte. In veel workloads vertegenwoordigt > de rekenresource 85% van de totale kosten, waardoor zelfs een bescheiden vermindering van de latentie van de workload gelijk is aan een aanzienlijke hoeveelheid TCO-besparingen. Zelfs in gevallen waarin het inschakelen van een hiërarchische naamruimte de opslagkosten verhoogt, wordt de TCO nog steeds verlaagd vanwege lagere rekenkosten.
Als u verschillen in prijzen voor gegevensopslag, transactieprijzen en reserveringsprijzen voor opslagcapaciteit tussen accounts met een platte hiërarchische naamruimte versus een hiërarchische naamruimte wilt analyseren, raadpleegt u prijzen voor Azure Data Lake Storage.
Volgende stappen
- Schakel een hiërarchische naamruimte in wanneer u een nieuw opslagaccount maakt. Zie Een opslagaccount maken voor gebruik met Azure Data Lake Storage.
- Schakel een hiërarchische naamruimte in voor een bestaand opslagaccount. Zie Azure Blob Storage upgraden met de mogelijkheden van Azure Data Lake Storage.