Ovladač systému souborů objektů BLOB v Azure (ABFS): vyhrazený ovladač Azure Storage pro Hadoop
Jednou z primárních metod přístupu k datům v Azure Data Lake Storage Gen2 je prostřednictvím systému Hadoop. Data Lake Storage Gen2 umožňuje uživatelům Azure Blob Storage přístup k novému ovladači, ovladači systému souborů blob Azure nebo ABFS . ABFS je součástí Apache Hadoop a je součástí mnoha komerčních distribucí systému Hadoop. Pomocí tohoto ovladače můžou spousta aplikací a platforem získat přístup k datům v Azure Blob Storage bez explicitního odkazování na Data Lake Storage Gen2 kódu.
Předchozí schopnost: ovladač Azure Storage Blob Windows
Ovladač Windows Azure Storage Blob nebo ovladač WASB poskytl původní podporu pro Azure Blob Storage. Tento ovladač provedl komplexní úlohu mapování sémantiky systému souborů (jak je požadováno rozhraním systému Hadoop) na rozhraní stylu úložiště objektů vystavené službou Azure Blob Storage. Tento ovladač nadále podporuje tento model a poskytuje vysoký výkon při přístupu k datům uloženým v objektech blob, ale obsahuje značný objem kódu, který provádí toto mapování, což ztěžuje jeho údržbu. Kromě toho některé operace, jako je například FileSystem. Rename () a FileSystem. Delete () při použití u adresářů, vyžadují, aby ovladač prováděl velké množství operací (vzhledem k tomu, že úložiště neobsahují podporu pro adresáře), což často vede ke snížení výkonu. Ovladač ABFS byl navržen pro překonání nedostatků WASB.
Ovladač systému souborů BLOB v Azure
Rozhraní Azure Data Lake Storage REST je navrženo tak, aby podporovalo sémantiku systému souborů přes Azure Blob Storage. Vzhledem k tom, že systém Hadoop je navržený tak, aby podporoval stejnou sémantiku, neexistuje žádný požadavek na komplexní mapování v ovladači. Proto je ovladač systému souborů objektů BLOB v Azure (nebo ABFS) pouhým překrytím klienta pro REST API.
Existují však některé funkce, které musí ovladač stále provádět:
Schéma identifikátoru URI pro referenční data
Ovladač ABFS je v souladu s dalšími implementacemi systému souborů v rámci systému Hadoop a definuje vlastní schéma identifikátoru URI, aby bylo možné prostředky (adresáře a soubory) rozlišit. Schéma identifikátoru URI je popsáno v části použití Azure Data Lake Storage Gen2 identifikátor URI. Struktura identifikátoru URI je: abfs[s]://file_system@account_name.dfs.core.windows.net/<path>/<path>/<file_name>
Pomocí výše uvedeného formátu identifikátoru URI se k odkazování na tyto prostředky dají použít standardní nástroje a architektury Hadoop:
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/
Ovladač ABFS interně překládá prostředky zadané v identifikátoru URI do souborů a adresářů a provádí volání REST API Azure Data Lake Storage s těmito odkazy.
Authentication
Ovladač ABFS podporuje dvě formy ověřování, aby mohla aplikace Hadoop bezpečně přistupovat k prostředkům, které jsou obsaženy v účtu s podporou Data Lake Storage Gen2. Úplné podrobnosti o dostupných schématech ověřování jsou k dispozici v Azure Storage příručce zabezpečení. Jsou to tyto:
Sdílený klíč: To umožňuje uživatelům přístup ke všem prostředkům v účtu. Klíč je zašifrovaný a uložený v konfiguraci Hadoop.
Azure Active Directory nosný token OAuth: Tokeny nosiče Azure AD se získávají a aktualizují pomocí ovladače buď prostřednictvím identity koncového uživatele, nebo nakonfigurovaného instančního objektu. Pomocí tohoto modelu ověřování je veškerý přístup autorizovaný pro jednotlivá volání pomocí identity přidružené k zadanému tokenu a vyhodnocený na základě přiřazeného seznamu Access Control POSIX (ACL).
Poznámka
Azure Data Lake Storage Gen2 podporuje pouze koncové body Azure AD v 1.0.
Konfigurace
Všechny konfigurace pro ovladač ABFS jsou uložené v core-site.xml konfiguračním souboru. V distribucích Hadoop s Ambarimůže být konfigurace spravovaná taky pomocí webového portálu nebo Ambari REST API.
Podrobnosti o všech podporovaných položkách konfigurace jsou uvedeny v oficiální dokumentaci k systému Hadoop.
Dokumentace k Hadoop
Ovladač ABFS je plně popsán v oficiální dokumentaci k Hadoop .