Az Azure Blob Fájlrendszer illesztőprogramja (ABFS): Dedikált Azure Storage-illesztőprogram a Hadoophoz

Az Azure Data Lake Storage Gen2-ben az egyik elsődleges hozzáférési módszer a Hadoop Fájlrendszeren keresztül történik. A Data Lake Storage Gen2 lehetővé teszi, hogy az Azure Blob Storage felhasználói hozzáférjenek egy új illesztőprogramhoz, az Azure Blob Fájlrendszer illesztőprogramhoz vagy ABFS. Az ABFS az Apache Hadoop része, és a Hadoop számos kereskedelmi disztribúciójában szerepel. Az ABFS-illesztővel számos alkalmazás és keretrendszer hozzáférhet az Azure Blob Storage-ban lévő adatokhoz anélkül, hogy a Data Lake Storage Gen2-ra hivatkozó kód kifejezetten hivatkozik.

Korábbi képesség: A Windows Azure Storage blobillesztője

A Windows Azure Storage Blob-illesztőprogram vagy WASB-illesztőprogram biztosította az Azure Blob Storage eredeti támogatását. Ez az illesztőprogram elvégezte a fájlrendszer szemantikájának (a Hadoop Fájlrendszer interfész által megkövetelt) leképezésének összetett feladatát az Azure Blob Storage által közzétett objektumtár stílusfelületéhez. Ez az illesztőprogram továbbra is támogatja ezt a modellt, amely nagy teljesítményű hozzáférést biztosít a blobokban tárolt adatokhoz, de jelentős mennyiségű kódot tartalmaz a leképezés végrehajtásához, ami megnehezíti a karbantartást. Emellett egyes műveletek, például a FileSystem.rename() és a FileSystem.delete() a címtárakra való alkalmazása esetén megkövetelik, hogy az illesztőprogram nagy számú műveletet hajtson végre (mivel az objektumtárolók nem támogatják a könyvtárakat), ami gyakran teljesítménycsökkenéshez vezet. Az ABFS-illesztőt úgy tervezték, hogy elhárítsa a WASB eredendő hiányosságait.

Az Azure Blob Fájlrendszer illesztőprogramja

Az Azure Data Lake Storage REST-felülete úgy lett kialakítva, hogy támogassa a fájlrendszer szemantikáját az Azure Blob Storage-on keresztül. Mivel a Hadoop fájlrendszert úgy tervezték, hogy ugyanazt a szemantikát támogassa, nincs szükség összetett leképezésre az illesztőprogramban. Így az Azure Blob Fájlrendszer illesztőprogramja (vagy ABFS) a REST API-hoz tartozó puszta ügyfél-shim.

Vannak azonban olyan függvények, amelyeket az illesztőprogramnak továbbra is végre kell hajtania:

URI-séma az adatokra való hivatkozáshoz

A Hadoop más fájlrendszer-implementációival összhangban az ABFS-illesztő saját URI-sémát határoz meg, hogy az erőforrások (könyvtárak és fájlok) külön kezelhetők legyenek. Az URI-séma dokumentálva van az Azure Data Lake Storage Gen2 URI használatával. Az URI felépítése: abfs[s]://file_system@account_name.dfs.core.windows.net/<path>/<path>/<file_name>

Ezzel az URI-formátummal szabványos Hadoop-eszközök és keretrendszerek használhatók az alábbi erőforrásokra való hivatkozáshoz:

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/

Az ABFS-illesztő belsőleg lefordítja az URI-ban megadott erőforrás(ok)t fájlokra és könyvtárakra, és hívásokat indít az Azure Data Lake Storage REST API-hoz ezekkel a hivatkozásokkal.

Authentication

Az ABFS-illesztőprogram két hitelesítési formát támogat, így a Hadoop-alkalmazás biztonságosan hozzáférhet a Data Lake Storage Gen2-kompatibilis fiókban található erőforrásokhoz. Az elérhető hitelesítési sémák részletes leírását az Azure Storage biztonsági útmutatója tartalmazza. Ezek a következők:

  • Megosztott kulcs: Ez lehetővé teszi, hogy a felhasználók hozzáférjenek a fiók összes erőforrásához. A kulcs titkosítása és tárolása a Hadoop-konfigurációban történik.

  • Microsoft Entra ID OAuth Bearer Token: A Microsoft Entra tulajdonosi jogkivonatait az illesztőprogram a végfelhasználó identitásával vagy egy konfigurált szolgáltatásnévvel szerzi be és frissíti. Ezzel a hitelesítési modellel minden hozzáférés hívásonként engedélyezett a megadott jogkivonathoz társított identitás használatával, és kiértékelhető a hozzárendelt POSIX hozzáférés-vezérlési listával (ACL).

    Megjegyzés:

    Az Azure Data Lake Storage Gen2 csak az Azure AD 1.0-s verziójú végpontjait támogatja.

Konfiguráció

Az ABFS-illesztőprogram összes konfigurációja a core-site.xml konfigurációs fájlban van tárolva. Az Ambarit tartalmazó Hadoop-disztribúciókon a konfiguráció a webportál vagy az Ambari REST API használatával is kezelhető.

Az összes támogatott konfigurációs bejegyzés részleteit a Hivatalos Hadoop dokumentációja tartalmazza.

A Hadoop dokumentációja

Az ABFS-illesztőprogram teljes mértékben dokumentálva van a Hivatalos Hadoop dokumentációjában

Következő lépések