Elección de una tecnología de almacenamiento de macrodatos en Azure
En este artículo se comparan las opciones de almacenamiento de datos para soluciones de macrodatos, especialmente el almacenamiento de datos para la ingesta de datos masiva y el procesamiento por lotes, en lugar de los almacenes de datos analíticos o la ingesta de streaming en tiempo real.
¿Cuáles son las opciones al elegir el almacenamiento de datos en Azure?
Existen varias opciones para la ingesta de datos en Azure en función de sus necesidades:
Lago de datos lógico unificado:
Almacenamiento de archivos:
Bases de datos NoSQL:
Bases de datos analíticas:
OneLake en Fabric
OneLake en Fabric es un lago de datos unificado y lógico que se adapta a toda la organización. Actúa como centro central para todos los datos de análisis y se incluye con cada inquilino de Microsoft Fabric. OneLake en Fabric se basa en la base de Data Lake Storage Gen2.
OneLake en Fabric:
- Admite tipos de archivo estructurados y no estructurados.
- Almacena todos los datos tabulares en formato Delta Parquet.
- Proporciona un único lago de datos dentro de los límites del inquilino que se rige de forma predeterminada.
- Admite la creación de áreas de trabajo dentro de un inquilino para que una organización pueda distribuir las directivas de propiedad y acceso.
- Admite la creación de varios elementos de datos, como lagos de datos y almacenes, desde los que puede acceder a los datos.
OneLake en Fabric sirve como ubicación de almacenamiento común para la ingesta, la transformación, la información en tiempo real y las visualizaciones de inteligencia empresarial. Centraliza varios servicios de Fabric y almacena elementos de datos que usan todas las cargas de trabajo en Fabric. Para elegir el almacén de datos adecuado para las cargas de trabajo de Fabric, consulte Guía de decisión de Fabric: elegir un almacén de datos.
Blobs de Azure Storage
Azure Storage es un servicio de almacenamiento administrado altamente disponible, seguro, duradero, escalable y redundante. Microsoft se encarga del mantenimiento y soluciona automáticamente los problemas críticos. Azure Storage es la solución de almacenamiento más ubicua que proporciona Azure, debido al número de servicios y herramientas que se pueden usar.
Hay diversos servicios de Azure Storage que puede usar para almacenar datos. La opción más flexible para almacenar blobs de varios orígenes de datos es Blob Storage. Los blobs son básicamente archivos. Almacenan imágenes, documentos, archivos HTML, discos duros virtuales (VHD), macrodatos (como registros), copias de seguridad de bases de datos, cualquier cosa. Los blobs se almacenan en contenedores, que son similares a las carpetas. Los contenedores proporcionan una agrupación de un conjunto de blobs. Una cuenta de almacenamiento puede contener un número ilimitado de contenedores y un contenedor puede almacenar un número ilimitado de blobs.
Azure Storage es una buena elección para soluciones de macrodatos y análisis debido a su flexibilidad, alta disponibilidad y bajo costo. Proporciona niveles de almacenamiento de acceso frecuente, esporádico y de archivo para distintos casos de uso. Para más información, consulte Azure Blob Storage: Niveles de almacenamiento de acceso frecuente, acceso esporádico y acceso de archivo.
Se puede acceder a Azure Blob Storage desde Hadoop (disponible a través de HDInsight). HDInsight puede usar un contenedor de blobs en Azure Storage como el sistema de archivos predeterminado para el clúster. Mediante una interfaz del sistema de archivos distribuido de Hadoop (HDFS) proporcionada por un controlador WASB, el conjunto completo de componentes de HDInsight puede operar directamente en datos estructurados o no estructurados almacenados como blobs. También es posible acceder a Azure Blob Storage a través de Azure Synapse Analytics con su característica PolyBase.
Otras características que hacen de Azure Storage una buena opción de almacenamiento son:
- Varias estrategias de simultaneidad.
- Opciones de recuperación ante desastres y alta disponibilidad.
- Cifrado en reposo.
- Control de acceso basado en roles (RBAC) de Azure para controlar el acceso mediante grupos y usuarios de Microsoft Entra.
Data Lake Storage Gen2
Data Lake Storage Gen2 es un repositorio único y centralizado donde puede almacenar todos los datos, tanto estructurados como no estructurados. Un lago de datos permite a su organización almacenar y analizar una amplia variedad de datos, y acceder a ellos, en una sola ubicación, de forma rápida y sencilla. Con un lago de datos, no es necesario adecuar los datos para que se ajusten a una estructura existente. En su lugar, puede almacenar los datos en su formato nativo o sin formato, normalmente como archivos o como objetos binarios grandes (blobs).
En Data Lake Storage Gen2 convergen las funcionalidades de Azure Data Lake Storage Gen1 con Azure Blob Storage. Por ejemplo, Data Lake Storage Gen2 proporciona la semántica del sistema de archivos, la seguridad de nivel de archivo y la escala. Debido a que estas funcionalidades se basan en Blob Storage, también disfrutará de un almacenamiento por niveles de bajo coste, con funcionalidades de alta disponibilidad y recuperación ante desastres.
Data Lake Storage Gen2 convierte a Azure Storage en los cimientos para crear lagos de datos empresariales en Azure. Diseñado desde el principio para servir varios petabytes de información y mantener cientos de gigabits de rendimiento, Data Lake Storage Gen2 le ofrece una forma fácil de administrar cantidades masivas de datos.
Azure Cosmos DB
Azure Cosmos DB es un servicio de base de datos con varios modelos y de distribución global de Microsoft. Azure Cosmos DB garantiza una latencia inferior a 10 milisegundos el 99 % del tiempo en cualquier parte del mundo, ofrece varios modelos de coherencia totalmente definidos para ajustar el rendimiento y garantiza alta disponibilidad con funcionalidades multi-homing.
Azure Cosmos DB es independiente del esquema. Indexa todos los datos automáticamente sin que haya que ocuparse de la administración de esquemas ni de índices. Es también multimodelo, admite de forma nativa modelos de datos de documentos, pares clave-valor, grafos y en columnas.
Características de Azure Cosmos DB:
- Replicación geográfica
- Escalado elástico del rendimiento y almacenamiento en todo el mundo
- Cinco niveles de coherencia bien definidos
HBase en HDInsight
Apache HBase es una base de datos no SQL de código abierto construida sobre Hadoop y modelada según Google BigTable. HBase proporciona acceso aleatorio y alta coherencia para grandes cantidades de datos no estructurados y semiestructurados en una base de datos sin esquemas organizada por familias de columnas.
Los datos se almacenan en las filas de una tabla, mientras que los datos de una fila se agrupan por familia de columnas. HBase no tiene esquema en el sentido de que no es preciso que ni las columnas ni el tipo de datos almacenados en ellas se definan antes de usarlos. El código abierto se escala linealmente para controlar petabytes de datos en miles de nodos. Puede basarse en la redundancia de datos, el procesamiento por lotes y otras características proporcionadas por aplicaciones distribuidas en el ecosistema Hadoop.
La implementación de HDInsight usa la arquitectura de escalabilidad horizontal de HBase para proporcionar particionamiento automático de tablas, alta coherencia para lecturas y escrituras y conmutación por error automática. Se mejora el rendimiento mediante el almacenamiento en caché de memoria para lecturas y streaming de alto rendimiento para escrituras. En la mayoría de los casos, deseará crear el clúster de HBase dentro de una red virtual para que otros clústeres y aplicaciones de HDInsight puedan tener acceso directo a las tablas.
Explorador de datos de Azure
Azure Data Explorer es un servicio de exploración de datos rápido y altamente escalable para datos de telemetría y de registro. Le ayuda a administrar los numerosos flujos de datos emitidos por las aplicaciones de software actuales para poder recopilar, almacenar y analizar los datos. El Explorador de datos de Azure resulta idóneo para analizar grandes volúmenes de datos diversos desde cualquier origen de datos, como sitios web, aplicaciones, dispositivos de IoT, etc. Estos datos se usan para el diagnóstico, la supervisión, la creación de informes, el aprendizaje automático y las funcionalidades de análisis adicionales. Azure Data Explorer simplifica el proceso de ingesta de estos datos y permite realizar consultas no planificadas complejas en los datos en cuestión de segundos.
Azure Data Explorer se puede escalar horizontalmente de forma lineal para aumentar el rendimiento de la ingesta y del procesamiento de consultas. Un clúster de Azure Data Explorer se puede implementar en una red virtual para habilitar redes privadas.
Principales criterios de selección
Para restringir las opciones, empiece por responder a estas preguntas:
¿Necesita un lago de datos unificado con compatibilidad multinube, gobernanza sólida e integración perfecta con herramientas analíticas? Si es así, elija OneLake en Fabric para simplificar la administración de datos y la colaboración mejorada.
¿Necesita almacenamiento administrado de alta velocidad basado en la nube para cualquier tipo de datos de texto o binarios? En caso afirmativo, seleccione una de las opciones de almacenamiento de archivos o análisis.
¿Necesita almacenamiento de archivos optimizado para cargas de trabajo de análisis en paralelo y alto IOPS y rendimiento? En caso afirmativo, elija una opción que se ajuste al rendimiento de cargas de trabajo de análisis.
¿Necesita almacenar datos no estructurados o semiestructurados en una base de datos sin esquema? Si es así, seleccione una de las opciones no relacionales o de análisis. Compare las opciones de indexación y modelos de base de datos. Según el tipo de datos que necesite almacenar, los modelos de la base de datos principal pueden ser el factor más relevante.
¿Puede utilizar el servicio en su región? Compruebe la disponibilidad regional para cada servicio de Azure. Para más información, consulte Productos disponibles por región.
Matriz de funcionalidades
En las tablas siguientes se resumen las diferencias clave en cuanto a funcionalidades.
Funcionalidades de OneLake en Fabric
Funcionalidad | OneLake en Fabric |
---|---|
Lago de datos unificado | Proporciona un único lago de datos unificado para toda la organización, lo que elimina los silos de datos. |
Compatibilidad con varias nubes | Admite la integración y compatibilidad con varias plataformas en la nube. |
Gobernanza de datos | Incluye características como linaje de datos, protección de datos, certificación e integración del catálogo. |
Centro de datos centralizado | Actúa como un centro centralizado para la detección y administración de datos. |
Compatibilidad con el motor analítico | Compatible con varios motores analíticos. Esta compatibilidad permite que diversas herramientas y tecnologías funcionen con los mismos datos. |
Seguridad y cumplimiento normativo | Garantiza que los datos confidenciales permanecen seguros y el acceso solo está restringido a los usuarios autorizados. |
Facilidad de uso | Proporciona un diseño fácil de usar que está disponible automáticamente con todos los inquilinos de Fabric y no requiere ninguna configuración. |
Escalabilidad | Capaz de controlar grandes volúmenes de datos de varios orígenes. |
Funcionalidades de almacenamiento de archivos
Funcionalidad | Data Lake Storage Gen2 | Contenedores de Azure Blob Storage |
---|---|---|
Propósito | Almacenamiento optimizado para cargas de trabajo de análisis de macrodatos | Almacén general de objetos para una amplia variedad de escenarios de almacenamiento |
Casos de uso | Datos en lotes, de análisis de streaming y de aprendizaje automático, como archivos de registro, datos de IoT, transmisiones de clic y conjuntos de datos grandes | Cualquier tipo de texto o datos binarios, por ejemplo, back-end de aplicación, datos de copia de seguridad, almacenamiento multimedia para streaming y datos de propósito general |
Estructura | Sistema de archivos jerárquico | Almacén de objetos con el espacio de nombres plano |
Autenticación | Basado en identidades de Microsoft Entra | Basada en secretos compartidos: claves de acceso de cuenta, claves de firma de acceso compartido y control de acceso basado en rol de Azure (Azure RBAC) |
Protocolo de autenticación | Open Authorization (OAuth) 2.0. Las llamadas deben contener un JWT válido (token web JSON) emitido por Microsoft Entra ID | Código de autenticación de mensajes basado en hash (HMAC). Las llamadas deben contener un hash SHA-256 codificado en Base64 en una parte de la solicitud HTTP. |
Autorización | Listas de control de acceso (ACL) de Portable Operating System Interface (POSIX). Las ACL basadas en identidades de Microsoft Entra se pueden establecer en el nivel de archivo y el de carpeta. | Para la autorización en el nivel de cuenta utilice claves de acceso de cuenta. Para la autorización de cuenta, contenedor o blob utilice las claves de firma de acceso compartido. |
Auditoría | Disponible. | Disponible |
Cifrado en reposo | Transparente, en el servidor | Transparente, en el servidor; cifrado en el cliente |
SDK para desarrolladores | .NET, Java, Python, Node.js | .NET, Java, Python, Node.js, C++, Ruby |
Rendimiento de cargas de trabajo de análisis | Rendimiento optimizado para cargas de trabajo de análisis en paralelo, alto rendimiento e IOPS | No está optimizado para cargas de trabajo de análisis |
Límites de tamaño | Sin límites para el tamaño de cuenta, de archivo o el número de archivos | Los límites específicos se documentan aquí |
Redundancia geográfica | Con redundancia local (almacenamiento con redundancia local (LRS)), redundancia global (almacenamiento con redundancia geográfica (GRS)), redundancia global con acceso de lectura (almacenamiento con redundancia geográfica con acceso de lectura (RA-GRS)), redundancia de zona (almacenamiento con redundancia de zona (ZRS)). | Con redundancia local (LRS), global (GRS), global de acceso de lectura (RA-GRS) y de zona (ZRS). Para obtener más información, consulte Redundancia de Azure Storage |
Funcionalidades de bases de datos no SQL
Capacidad | Azure Cosmos DB | HBase en HDInsight |
---|---|---|
Modelo de la base de datos principal | Almacenamiento de documentos, grafos, almacenamiento de clave-valor, almacenamiento de columnas anchas | Almacenamiento de columnas anchas |
Índices secundarios | Sí | No |
Compatibilidad con lenguaje SQL | Sí | Sí (mediante el controlador JDBC Phoenix) |
Coherencia | Alta, de obsolescencia limitada, sesión, prefijo coherente, eventual | Alta |
Integración nativa con Azure Functions | Sí | No |
Distribución global automática | Sí | No es posible configurar la replicación de clúster de HBase entre regiones con coherencia eventual |
Modelo de precios | Las unidades de solicitud (RU) escalables de manera flexible se cobran por segundo según sea necesario, almacenamiento escalable de forma elástica | Precios del clúster de HDInsight (escalado horizontal de nodos) por minuto, almacenamiento |
Funcionalidades de base de datos analítica
Capacidad | Explorador de datos de Azure |
---|---|
Modelo de la base de datos principal | Almacén relacional (de columnas), de telemetría y de series temporales |
Compatibilidad con lenguaje SQL | Sí |
Modelo de precios | Instancias del clúster escalables de forma elástica |
Autenticación | Basado en identidades de Microsoft Entra |
Cifrado en reposo | Compatible con claves administradas por el cliente |
Rendimiento de cargas de trabajo de análisis | Rendimiento optimizado para cargas de trabajo de análisis en paralelo |
Límites de tamaño | Escalable de forma lineal |
Colaboradores
Microsoft mantiene este artículo. Originalmente lo escribieron los siguientes colaboradores.
Autor principal:
- Zoiner Tejada | Director ejecutivo y arquitecto
Pasos siguientes
- ¿Qué es Fabric?
- Introducción al análisis de un extremo a otro con Fabric
- Servicios y soluciones de almacenamiento en la nube de Azure
- Revisión de las opciones de almacenamiento
- Introducción a Almacenamiento de Azure
- Introducción a Azure Data Explorer