Espacio de nombres jerárquico de Azure Data Lake Storage

Azure Data Lake Storage utiliza un espacio de nombres jerárquico para ofrecer el rendimiento de un sistema de archivos a la escala y al precio del almacenamiento de objetos. Esta característica organiza la colección de objetos y archivos dentro de una cuenta en una jerarquía de directorios y subdirectorios anidados, de forma similar al sistema de archivos del equipo. Al habilitar un espacio de nombres jerárquico, una cuenta de almacenamiento puede ofrecer la escalabilidad y la rentabilidad del almacenamiento de objetos, junto con la semántica del sistema de archivos que los motores y marcos de análisis encuentran familiares.

Ventajas de un espacio de nombres jerárquico

Los sistemas de archivos que implementan un espacio de nombres jerárquico sobre los datos de blobs ofrecen las siguientes ventajas:

  • Manipulación atómica de directorios: los almacenamientos de objetos se aproximan a una jerarquía de directorios mediante la adopción de una convención de inserción de barras diagonales (/) en el nombre del objeto para indicar los segmentos de ruta. Aunque esta convención funciona para organizar objetos, no proporciona asistencia para acciones como mover, cambiar el nombre o eliminar directorios. Sin directorios reales, las aplicaciones podrían tener que procesar millones de blobs individuales para lograr realizar las tareas de nivel de directorio. Por el contrario, un espacio de nombres jerárquico procesa estas tareas mediante la actualización de una sola entrada (el directorio principal).

    Esta optimización es especialmente importante para muchos marcos de análisis de macrodatos. Herramientas como Hive y Spark suelen escribir los resultados en ubicaciones temporales y, a continuación, renombrar la ubicación al finalizar el trabajo. Sin un espacio de nombres jerárquico, esta operación de cambio de nombre suele tardar más tiempo que el propio proceso de análisis. La disminución de la latencia de trabajo equivale a la reducción del costo total de propiedad (TCO) de las cargas de trabajo de análisis.

  • Estilo de interfaz familiar: Tanto los desarrolladores como los usuarios entienden los sistemas de archivos. Cuando se mueve a la nube, no es necesario aprender un nuevo paradigma de almacenamiento porque Data Lake Storage expone la misma interfaz de sistema de archivos que usan los equipos, grandes y pequeños.

Una de las razones por las que los almacenes de objetos históricamente no admitieron un espacio de nombres jerárquico es que un espacio de nombres jerárquico limita la escala. Sin embargo, el espacio de nombres jerárquico de Data Lake Storage se escala de forma lineal y no degrada ni la capacidad de los datos ni el rendimiento.

Decidir si se habilita un espacio de nombres jerárquico

Después de habilitar un espacio de nombres jerárquico en la cuenta, no se puede revertir a un espacio de nombres plano. Por lo tanto, tenga en cuenta si tiene sentido habilitar un espacio de nombres jerárquico en función de la naturaleza de las cargas de trabajo del almacén de objetos. Para evaluar el impacto de habilitar un espacio de nombres jerárquico en cargas de trabajo, aplicaciones, costos, integraciones de servicios, herramientas, características y documentación, consulte Actualización de Azure Blob Storage con funcionalidades de Azure Data Lake Storage.

Puede que algunas cargas de trabajo no obtengan ninguna ventaja al habilitar un espacio de nombres jerárquico. Algunos ejemplos son las copias de seguridad, el almacenamiento de imágenes y otras aplicaciones en las que la organización de objetos se almacena por separado de los propios objetos (por ejemplo, en una base de datos independiente).

Además, aunque la compatibilidad con las características de Blob Storage y el ecosistema de servicios de Azure continúa creciendo, algunas características y servicios de Azure aún no se admiten en cuentas que tienen un espacio de nombres jerárquico. Consulte Problemas conocidos.

Cargas de trabajo que se benefician de un espacio de nombres jerárquico

En general, active un espacio de nombres jerárquico para cargas de trabajo de almacenamiento diseñadas para sistemas de archivos que manipulan directorios. Esta condición incluye todas las cargas de trabajo de procesamiento de análisis. Los conjuntos de datos que requieren un alto grado de organización también se benefician de habilitar un espacio de nombres jerárquico.

Use un análisis de TCO para determinar si se debe habilitar un espacio de nombres jerárquico. Por lo general, las mejoras en la latencia de la carga de trabajo debido a la aceleración del almacenamiento requieren recursos de proceso durante menos tiempo. La latencia de muchas cargas de trabajo podría mejorar debido a la manipulación atómica de directorios que habilita un espacio de nombres jerárquico. En muchas cargas de trabajo, el recurso de proceso representa más de 85% del costo total, por lo que incluso una reducción moderada de la latencia de la carga de trabajo equivale a una cantidad significativa de ahorro de TCO. Incluso en los casos en los que al habilitar un espacio de nombres jerárquico aumentan los costos de almacenamiento, el TCO aún disminuye debido a los costos de proceso reducidos.

Para analizar las diferencias en los precios de almacenamiento de datos, los precios de las transacciones y los precios de reserva de capacidad de almacenamiento entre las cuentas que tienen un espacio de nombres plano frente a un espacio de nombres jerárquico, consulte Precios de Azure Data Lake Storage.

Para habilitar un espacio de nombres jerárquico, consulte Creación de una cuenta de almacenamiento para usarla con Azure Data Lake Storage (cuentas nuevas) o Actualizar Azure Blob Storage con funcionalidades de Azure Data Lake Storage (cuentas existentes).

Pasos siguientes