Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Uno de los principales métodos de acceso para los datos en Azure Data Lake Storage es mediante Hadoop FileSystem. Los usuarios de Data Lake Storage de Azure Blob Storage pueden acceder al controlador del sistema de archivos de blobs de Azure o ABFS. ABFS forma parte de Apache Hadoop y se incluye en muchas de las distribuciones comerciales de Hadoop. Mediante el uso del controlador ABFS, muchas aplicaciones y marcos pueden acceder a los datos en Azure Blob Storage sin que ningún código haga referencia explícitamente a Data Lake Storage.
Funcionalidad anterior: el controlador de blobs de Windows Azure Storage
El controlador de Azure Storage Blob para Windows o controlador WASB ofrecía la compatibilidad original con Azure Storage Blob. Este controlador realiza la tarea compleja de asignar la semántica del sistema de archivos (como requiere la interfaz FileSystem de Hadoop) a la de la interfaz de estilo de almacén de objetos expuesta por Azure Blob Storage. Este controlador sigue admitiendo este modelo, lo que proporciona acceso de alto rendimiento a los datos almacenados en blobs. Sin embargo, contiene una cantidad significativa de código que realiza esta asignación, lo que dificulta su mantenimiento. Además, FileSystem.rename() y FileSystem.delete() aplicados a directorios requieren que el controlador realice un gran número de operaciones, ya que los almacenes de objetos carecen de compatibilidad con directorios nativos. Esta sobrecarga suele dar lugar a un rendimiento degradado. El controlador ABFS supera las deficiencias inherentes de WASB.
Funcionamiento de ABFS
La interfaz rest de Azure Data Lake Storage admite la semántica del sistema de archivos a través de Azure Blob Storage. Dado que el sistema de archivos de Hadoop también está diseñado para admitir la misma semántica, no hay ningún requisito para una asignación compleja en el controlador. Por tanto, el controlador Azure Blob File System (o ABFS) es una mera corrección de compatibilidad (shim) de cliente para la API REST.
Sin embargo, el controlador debe seguir realizando algunas funciones:
Esquema de URI para los datos de referencia
Coherente con otras implementaciones del sistema de archivos en Hadoop, el controlador ABFS define su propio esquema de URI para que los recursos (directorios y archivos) se puedan solucionar de forma distinta. El esquema de URI se documenta en Uso del URI de Azure Data Lake Storage. La estructura del URI es: abfs[s]://file_system@account_name.dfs.core.windows.net/<path>/<path>/<file_name>, donde abfss:// usa TLS para conexiones cifradas.
Con este formato de URI, las herramientas y marcos estándar de Hadoop pueden hacer referencia a estos recursos:
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/
Internamente, el controlador ABFS traduce los recursos especificados en el URI a archivos y directorios y realiza llamadas a la API REST de Azure Data Lake Storage con esas referencias.
Autenticación
El controlador ABFS admite dos formas de autenticación para que la aplicación hadoop pueda acceder de forma segura a los recursos contenidos en una cuenta compatible con Data Lake Storage. La autenticación requiere una cuenta de almacenamiento con espacio de nombres jerárquico habilitado. Para obtener detalles completos de los esquemas de autenticación disponibles, consulte la guía de seguridad de Azure Storage. Los esquemas de autenticación admitidos son:
Clave compartida: Este método de autenticación concede a los usuarios acceso a todos los recursos de la cuenta. La clave se cifra y almacena en la configuración de Hadoop.
Token de portador OAuth de Microsoft Entra ID: El controlador obtiene y actualiza los tokens de portador de Microsoft Entra utilizando la identidad del usuario final o una entidad de servicio configurada. Cuando se usa este modelo de autenticación, se autoriza cada acceso para cada llamada mediante la identidad asociada al token suministrado, que se evalúa con respecto a la lista de control de acceso POSIX (ACL) asignada.
Nota:
Azure Data Lake Storage admite la autenticación OAuth 2.0 de Microsoft Entra ID.
Configuración
Almacene toda la configuración del controlador ABFS en el archivo de core-site.xml configuración. En las distribuciones de Hadoop que incluyen Ambari, también puede administrar la configuración mediante el portal web o la API rest de Ambari.
Para más información sobre todas las entradas de configuración admitidas, consulte la documentación oficial de Hadoop.