Het Azure Blob-bestandssysteem stuur programma (ABFS): een speciaal Azure Storage stuur programma voor Hadoop
Een van de primaire toegangs methoden voor gegevens in Azure Data Lake Storage Gen2 is via het Hadoop-bestands systeem. Met Data Lake Storage Gen2 kunnen gebruikers van Azure Blob Storage toegang krijgen tot een nieuw stuur programma, het Azure Blob File System-stuur programma of ABFS . ABFS maakt deel uit van Apache Hadoop en is opgenomen in een groot aantal commerciële distributies van Hadoop. Met dit stuur programma kunnen veel toepassingen en frameworks toegang krijgen tot gegevens in Azure Blob Storage zonder enige code die expliciet verwijst naar Data Lake Storage Gen2.
Eerdere mogelijkheid: het Windows Azure Storage Blob-stuur programma
De Windows Azure Storage Blob driver of het WASB-stuur programma bood de oorspronkelijke ondersteuning voor Azure Blob Storage. Dit stuur programma heeft de complexe taak voor het toewijzen van bestandssysteem semantiek (zoals vereist door de Hadoop-bestands systeem Interface) uitgevoerd aan die van de object Store Style interface die door Azure Blob Storage wordt weer gegeven. Dit stuur programma blijft ondersteuning bieden voor dit model en biedt hoge prestaties voor gegevens die zijn opgeslagen in blobs, maar bevat een aanzienlijke hoeveelheid code die deze toewijzing uitvoert, waardoor het lastig is om te onderhouden. Daarnaast moet het stuur programma, zoals File System. Rename () en File System. Delete () bij het Toep assen op directory's, een groot aantal bewerkingen uitvoeren (vanwege object archieven zonder ondersteuning voor directory's). Dit leidt vaak tot slechtere prestaties. Het ABFS-stuur programma is ontworpen om de inherente tekortkomingen van WASB te overwinnen.
Het Azure Blob File System-stuur programma
De Azure data Lake Storage rest-interface is ontworpen ter ondersteuning van de semantiek van bestands systemen via Azure Blob Storage. Gezien het Hadoop-bestands systeem is ook ontworpen om dezelfde semantiek te ondersteunen, is er geen vereiste voor een complexe toewijzing in het stuur programma. Het Azure Blob File System-stuur programma (of ABFS) is dus een louter client-Shim voor de REST API.
Er zijn echter enkele functies die het stuur programma nog moet uitvoeren:
URI-schema om te verwijzen naar gegevens
Consistent met andere bestandssysteem implementaties in Hadoop, het ABFS-stuur programma definieert een eigen URI-schema, zodat resources (directory's en bestanden) kunnen worden verholpen. Het URI-schema wordt beschreven in de Azure data Lake Storage Gen2-URI gebruiken. De structuur van de URI is: abfs[s]://file_system@account_name.dfs.core.windows.net/<path>/<path>/<file_name>
Met de bovenstaande URI-indeling kunnen standaard Hadoop-hulpprogram ma's en-frameworks worden gebruikt om te verwijzen naar deze bronnen:
hdfs dfs -mkdir -p abfs://fileanalysis@myanalytics.dfs.core.windows.net/tutorials/flightdelays/data
hdfs dfs -put flight_delays.csv abfs://fileanalysis@myanalytics.dfs.core.windows.net/tutorials/flightdelays/data/
Intern vertaalt het ABFS-stuur programma de resource (s) die zijn opgegeven in de URI naar bestanden en mappen, en maakt aanroepen van de Azure Data Lake Storage REST API met die verwijzingen.
Verificatie
Het ABFS-stuur programma ondersteunt twee vormen van verificatie, zodat de Hadoop-toepassing veilig toegang kan krijgen tot bronnen in een Data Lake Storage Gen2-account dat kan worden ondersteund. Volledige details van de beschik bare verificatie schema's vindt u in de Azure Storage beveiligings handleiding. Dit zijn:
Gedeelde sleutel: Hierdoor kunnen gebruikers toegang krijgen tot alle resources in het account. De sleutel is versleuteld en opgeslagen in Hadoop-configuratie.
Azure Active Directory OAuth Bearer-token: Azure AD Bearer-tokens worden verkregen en vernieuwd door het stuur programma met behulp van de identiteit van de eind gebruiker of een geconfigureerde service-principal. Met behulp van dit verificatie model wordt alle toegang per oproep geautoriseerd met behulp van de identiteit die is gekoppeld aan het opgegeven token en wordt geëvalueerd op basis van de toegewezen POSIX-Access Control lijst (ACL).
Notitie
Azure Data Lake Storage Gen2 ondersteunt alleen Azure AD v 1.0-eind punten.
Configuratie
Alle configuratie voor het ABFS-stuur programma wordt opgeslagen in het core-site.xml configuratie bestand. Bij Hadoop-distributies met Ambarikan de configuratie ook worden beheerd met de webportal of Ambari rest API.
Details van alle ondersteunde configuratie vermeldingen zijn opgegeven in de officiële Hadoop-documentatie.
Hadoop-documentatie
Het ABFS-stuur programma is volledig gedocumenteerd in de officiële Hadoop-documentatie