Desbloquea análisis hasta 6 veces más rápidos: un análisis a fondo del motor de ejecución nativo de Microsoft Fabric
By Mirko Peters ·
¡Bienvenido de nuevo al pódcast! En el post de hoy ampliamos nuestro último episodio, en el que desgranamos las potentes arquitecturas ocultas que impulsan las plataformas de datos modernas…
Automatically translated with AI from the original post. Read the English original
¡Bienvenido de nuevo al pódcast! En el post de hoy ampliamos nuestro último episodio, en el que desgranamos las potentes arquitecturas ocultas que impulsan las plataformas de datos modernas. Si alguna vez te has preguntado cómo las cargas de trabajo analíticas empresariales pueden ejecutarse de repente órdenes de magnitud más rápido sin necesidad de reescribir por completo tu código, estás en el lugar adecuado. Echamos un vistazo completo al motor de ejecución nativo de Microsoft Fabric, una tecnología revolucionaria que está redefiniendo la forma en que ingenieros de datos, científicos de datos y analistas de negocio piensan sobre la escala en la nube, la optimización del rendimiento y el ahorro de costes final.
En nuestro episodio destacado del pódcast, Speed Power BI with OneLake and Direct Lake, exploramos la mecánica de cómo estos motores subyacentes interactúan con herramientas como OneLake y Direct Lake para acelerar los informes empresariales. En este análisis a fondo, desglosaremos los componentes fundamentales de esta arquitectura, exploraremos la magia de la ejecución vectorizada, examinaremos casos de uso reales y veremos qué depara el futuro a las plataformas de datos modernas.
Puntos clave
- El motor de ejecución nativo de Microsoft Fabric aumenta la velocidad de procesamiento de datos hasta 6 veces en comparación con los entornos de ejecución tradicionales de Spark.
- Las organizaciones pueden ahorrar aproximadamente un 83 % en clústeres de tamaño fijo utilizando el motor de ejecución nativo, lo que se traduce en reducciones de costes significativas.
- Este motor admite distintos formatos de datos, como Parquet y Delta, lo que permite ejecutar consultas de forma eficiente sin cambios en el código.
- La ejecución vectorizada procesa los datos por lotes, lo que mejora el rendimiento y reduce el uso de CPU, algo fundamental para manejar grandes volúmenes de datos.
- La integración del motor de ejecución nativo con las aplicaciones Spark existentes no requiere modificaciones, lo que facilita su adopción.
- Las capacidades de análisis en tiempo real ofrecen información inmediata, lo que ayuda a las empresas a tomar decisiones oportunas basadas en datos actuales.
- El diseño modular del motor permite integrarlo de forma fluida en los flujos de trabajo de datos existentes, lo que mejora la eficiencia general.
- Los desarrollos futuros, como las herramientas asistidas por IA y la gestión optimizada de la memoria, prometen seguir mejorando las capacidades de procesamiento de datos.
Descripción general de Microsoft Fabric

Microsoft Fabric representa un avance significativo en la gestión de datos y en el análisis. Su arquitectura combina varios componentes que trabajan juntos de forma fluida para potenciar tu capacidad de procesamiento de datos. Veamos más de cerca su arquitectura y sus componentes clave.
Arquitectura
La arquitectura de Microsoft Fabric se compone de varios componentes esenciales que respaldan un procesamiento de datos eficiente. Estos componentes incluyen:
- OneLake Data Lake: este repositorio centralizado de datos admite distintos formatos. Garantiza la seguridad y la gobernanza, por lo que es una fuente fiable para tus necesidades de datos.
- Data Engineering (Synapse): este componente facilita las transformaciones de datos a gran escala mediante Apache Spark. Es ideal para tareas complejas de preparación de datos.
- Data Warehouse (Synapse): esta parte ofrece análisis basados en SQL de alto rendimiento. Se integra profundamente con OneLake para cargas de trabajo de datos estructurados.
- Real-Time Analytics (Synapse): esta funcionalidad permite análisis de alto rendimiento, lo que te da información inmediata a partir de datos en streaming.
- Data Factory: este componente ofrece amplias capacidades de integración de datos. Con más de 200 conectores, es esencial para los procesos ETL y ELT.
- Power BI: esta herramienta te permite crear informes y paneles interactivos. Garantiza la actualidad de los datos mediante la integración con otros servicios.
Componentes clave
La integración de OneLake y Direct Lake mejora notablemente la arquitectura de Microsoft Fabric. A continuación se muestran algunas de las ventajas de esta integración:
| Ventaja | Descripción |
|---|---|
| Rendimiento de las consultas | Las consultas de Direct Lake las procesa el motor VertiPaq, con un rendimiento comparable al del modo Import, sin la sobrecarga de los ciclos de actualización de datos. |
| Integración sin fisuras | Direct Lake se integra con las inversiones existentes en Fabric, lo que lo hace ideal para la capa de análisis gold en una arquitectura de lakehouse medallion. |
| Maximización del ROI | Solo se cargan en memoria los datos necesarios, lo que permite analizar volúmenes de datos que superan los límites de memoria. |
| Latencia reducida | Sincroniza automáticamente el modelo semántico con sus orígenes, por lo que los datos nuevos están disponibles sin necesidad de programar actualizaciones. |
Esta arquitectura permite a Microsoft Fabric facilitar una integración sin fisuras con la infraestructura de datos existente. El data lake centralizado admite diversos formatos de datos y garantiza un almacenamiento unificado. Además, las sólidas capacidades de integración de datos de Data Factory permiten una orquestación fluida en todo su ecosistema de datos.
Aprovechando estos componentes, puede simplificar sus procesos de datos y potenciar sus capacidades de análisis. Microsoft Fabric no solo simplifica la gestión de datos, sino que también le permite tomar decisiones fundamentadas basadas en información en tiempo real.
Descripción general del motor de ejecución nativo
El motor de ejecución nativo es un componente potente dentro de Microsoft Fabric que optimiza el procesamiento de datos y el análisis. Mejora el rendimiento aprovechando las capacidades nativas de los orígenes de datos subyacentes. Este motor admite diversos operadores y tipos de datos, incluidos rollup hash aggregate y broadcast nested loop join. Procesa los datos de forma eficiente en formatos Parquet y Delta, lo que lo hace ideal para consultas con un alto coste computacional.
Funcionalidad
Funcionamiento en Microsoft Fabric
El motor de ejecución nativo funciona sin fisuras dentro de la arquitectura más amplia de Microsoft Fabric. Mejora el rendimiento de Apache Spark sustituyendo los operadores de ejecución tradicionales basados en JVM por implementaciones nativas en C++. Tecnologías como Velox y Apache Gluten hacen posible este cambio, optimizando la ejecución de consultas mediante procesamiento columnar y vectorización. Esta integración permite que las aplicaciones Spark existentes funcionen sin modificaciones y mejora notablemente la eficiencia de las transformaciones y agregaciones de datos complejas.
Integración con el lakehouse
La integración del motor de ejecución nativo con la arquitectura de lakehouse es un cambio de juego. Puede ejecutar consultas Spark directamente sobre la infraestructura del lakehouse sin necesidad de cambiar el código. Esta capacidad admite los formatos Parquet y Delta, lo que le permite aprovechar todo el potencial de sus datos. Mejoras de rendimiento del motor pueden llegar a ser hasta 4 veces más rápidas que el Spark de código abierto tradicional, lo que reduce los costes operativos y mejora la eficiencia en diversas tareas de datos.
Características principales
Ejecución vectorizada
Una de las características destacadas del motor de ejecución nativo es su capacidad de ejecución vectorizada. Esta función permite al motor procesar los datos por lotes en lugar de una fila cada vez. Mediante el uso de diseños de datos en columnas y técnicas avanzadas en memoria, el motor puede superar a los motores tradicionales basados en JVM, especialmente en entornos cloud. Por ejemplo, las pruebas de rendimiento internas sobre un conjunto de datos de mil millones de filas muestran una reducción del tiempo de ejecución por consulta de 20 a 32 segundos, lo que se traduce en una mejora del rendimiento del 20 % al 27 %.
Mejoras de rendimiento
El motor de ejecución nativo ofrece varias mejoras de rendimiento que lo distinguen de otros motores de ejecución. Estas son algunas de las mejoras clave:
| Origen | Descripción | Mejora del rendimiento |
|---|---|---|
| Apache Hudi | Consultas sobre tablas Copy-on-Write | Reducción del 33 % en el tiempo de ejecución |
| Google DataProc | Rendimiento de la ejecución nativa | Hasta 2,7 veces de mejora |
| Microsoft Fabric | Pruebas de rendimiento internas sobre un conjunto de datos de mil millones de filas | Reducción del tiempo de ejecución de 20 a 32 segundos por consulta, una mejora del 20 % al 27 % |
Estas mejoras convierten al Native Execution Engine en una opción sólida para las organizaciones que buscan optimizar sus flujos de procesamiento de datos. Al permitir el manejo eficiente de transformaciones y agregaciones complejas, te ayuda a extraer información de tus datos más rápido y con mayor eficacia.
Beneficios de rendimiento de Microsoft Fabric

Mejoras de eficiencia
Cuando trabajas con grandes volúmenes de datos, la eficiencia se vuelve crítica. El Native Execution Engine de Microsoft Fabric aborda los cuellos de botella habituales que ralentizan el procesamiento de datos. Acelera las cargas de trabajo Parquet y Delta, gestiona con fluidez las transformaciones complejas y optimiza las consultas analíticas intensivas en CPU. Esto significa que pasas menos tiempo esperando y más tiempo analizando.
| Aspecto de rendimiento | Descripción |
|---|---|
| Mejoras de velocidad | Aceleraciones importantes para cargas de trabajo Parquet y Delta, transformaciones complejas y consultas intensivas en CPU. |
| Resultados de benchmark | Hasta 6× más rápido en cargas de trabajo TPC-DS SF1000, lo que reduce significativamente los costes de cómputo. |
| Eficiencia en el acceso a memoria | Utiliza procesamiento en columnas e instrucciones SIMD para un acceso a memoria y un paralelismo eficientes. |
| Integración con el optimizador de Spark | Mantiene la ejecución adaptativa de consultas, el predicate pushdown y otras optimizaciones de Spark intactas. |
| Visibilidad de fallback en tiempo real | Muestra cuándo las operaciones no compatibles vuelven a ejecutarse en JVM, lo que te ayuda a supervisar el rendimiento. |
Esta eficiencia reduce los costes ocultos que suelen asociarse a la gestión de entornos de datos a gran escala. Evitas desperdiciar recursos en ciclos de CPU innecesarios o en sobrecarga de memoria. El procesamiento en columnas y la ejecución vectorizada del Native Execution Engine le permiten analizar los datos más rápido y usar menos ciclos de CPU. Esto reduce el coste por consulta y mejora la capacidad de respuesta general del sistema.
Mejoras de velocidad
La velocidad importa cuando necesitas información oportuna de tus datos. El Native Execution Engine ofrece mejoras de velocidad impresionantes sin obligarte a cambiar tus aplicaciones existentes. Muchas organizaciones reportan consultas de 2× a 3× más rápidas en diversas cargas de trabajo analíticas con solo activar este motor.
Así es como el motor consigue estas ganancias de velocidad:
- Spark crea un plan físico lógico y optimizado como de costumbre.
- Gluten identifica los operadores compatibles de forma nativa y los sustituye por equivalentes nativos más rápidos.
- Velox ejecuta estos operadores nativos mediante kernels C++ altamente optimizados.
- Si una operación no es compatible, el motor recurre a la ejecución JVM de Spark, lo que garantiza un rendimiento fluido.
En un conjunto de datos de mil millones de filas, los benchmarks muestran una reducción del tiempo de ejecución de 20 a 32 segundos por consulta al usar clustering con el Native Execution Engine. Esto se traduce en una mejora del rendimiento del 20 % al 27 % en distintas combinaciones de columnas agrupadas. Este tipo de mejoras te ayuda a ejecutar analíticas más rápido y a reducir los costes ocultos relacionados con consultas de larga duración.
⚡ Consejo: Aprovechando estas mejoras de velocidad, puedes acelerar tus flujos de analítica y tomar decisiones más rápidas basadas en datos, sin invertir en hardware adicional.
El diseño de Microsoft Fabric garantiza que estos beneficios escalen con tus datos. A medida que crecen tus conjuntos de datos, el motor mantiene un alto rendimiento y una buena eficiencia de costes. Esta escalabilidad hace de Fabric una opción excelente para las empresas que quieren optimizar sus canalizaciones analíticas controlando los gastos.
Casos de uso del Native Execution Engine
El Native Execution Engine de Microsoft Fabric ofrece numerosas aplicaciones reales que mejoran el procesamiento de datos y la analítica. Organizaciones de diversos sectores aprovechan sus capacidades para agilizar sus operaciones y obtener información valiosa.
Aplicaciones en el mundo real
Servicios financieros: Los bancos y las entidades financieras utilizan el Native Execution Engine para procesar grandes volúmenes de datos con rapidez. Analizan los datos de transacciones en tiempo real, lo que les permite detectar fraudes y evaluar el riesgo con mayor eficacia. La velocidad del motor ofrece información inmediata, algo fundamental en un entorno financiero tan dinámico.
Sanidad: Los proveedores sanitarios usan el motor para gestionar los datos de los pacientes y realizar análisis complejos. Al procesar datos de distintas fuentes, pueden mejorar los resultados de los pacientes mediante analítica predictiva. La capacidad del motor para manejar grandes volúmenes de datos de forma eficiente favorece una mejor toma de decisiones en el ámbito clínico.
Comercio minorista: Los minoristas se benefician del Native Execution Engine al optimizar su cadena de suministro y la gestión de inventario. Analizan los datos de ventas para prever la demanda y ajustar los niveles de inventario en consecuencia. Esta capacidad ayuda a reducir costes y a mejorar la satisfacción del cliente al garantizar la disponibilidad de los productos.
Telecomunicaciones: Las empresas de telecomunicaciones aprovechan el motor para analizar los registros de datos de llamadas y las métricas de rendimiento de la red. Este análisis les permite identificar tendencias y optimizar la prestación del servicio. La eficiencia del motor hace posible la supervisión en tiempo real, un elemento esencial para mantener la calidad del servicio.
Escenarios por sector
El Native Execution Engine destaca en distintos escenarios sectoriales, con soluciones adaptadas a retos concretos:
Ingeniería de datos: En la ingeniería de datos, el motor simplifica la transformación de datos sin procesar en información útil. Admite canalizaciones de datos complejas, lo que permite a las organizaciones automatizar sus flujos de trabajo de datos. Esta capacidad reduce el esfuerzo manual y mejora la productividad.
Análisis de Big Data: Las empresas que trabajan con Big Data se benefician de la capacidad del motor para procesar grandes cantidades de información con rapidez. Les permite ejecutar consultas analíticas sofisticadas sin sacrificar el rendimiento. Esta eficiencia es vital para las organizaciones que basan su estrategia en los datos.
Business Intelligence: El motor mejora las aplicaciones de business intelligence al ofrecer respuestas más rápidas a las consultas. Los usuarios pueden crear paneles e informes interactivos que reflejan datos en tiempo real. Esta inmediatez permite a los responsables de la toma de decisiones actuar con rapidez a partir de la información más reciente.
A pesar de sus ventajas, implementar el Native Execution Engine puede plantear desafíos. Por ejemplo, la complejidad de las rutas de ejecución puede aparecer al haber varios motores de ejecución. Esta complejidad dificulta el seguimiento de las dependencias entre las canalizaciones de datos. Además, la responsabilidad operativa aumenta, ya que los equipos deben gestionar el ajuste del rendimiento y el control de costes en varios motores.
⚡ Consejo: Comprender estos desafíos te ayudará a preparar una implementación más fluida del Native Execution Engine en tu organización.
Si aprovechas el Native Execution Engine, podrás transformar tu estrategia de datos y desbloquear todo el potencial de tus capacidades analíticas.
Comparación con otros motores de ejecución
Al comparar el Native Execution Engine con otros motores de ejecución, se observan varias diferencias funcionales. Estas diferencias muestran cómo el Native Execution Engine destaca en rendimiento y eficiencia.
Diferencias funcionales
Modelo de ejecución: Los motores de ejecución tradicionales suelen depender de la Java Virtual Machine (JVM) para procesar los datos. En cambio, el Native Execution Engine usa C++ para sus operaciones. Este cambio permite una ejecución más rápida y una menor sobrecarga.
Procesamiento de datos: Muchos motores procesan los datos fila a fila. El Native Execution Engine, sin embargo, emplea la ejecución vectorizada. Este método procesa los datos por lotes, lo que acelera de forma notable las consultas analíticas.
Capacidades de integración: Mientras que algunos motores requieren modificaciones extensas para integrarse con los sistemas existentes, el Native Execution Engine ofrece un diseño modular. Este diseño permite integrarlo más fácilmente en tus flujos de datos actuales sin cambios importantes.
Ventajas competitivas
El Native Execution Engine ofrece varias ventajas competitivas frente a otros motores de ejecución alternativos. Estas ventajas mejoran tus capacidades de procesamiento de datos y el rendimiento general. Este es un resumen de estos beneficios:
| Ventaja competitiva | Descripción |
|---|---|
| Ejecución vectorizada nativa | Mejora la eficiencia de los recursos de CPU y reduce la sobrecarga asociada a la ejecución basada en JVM. |
| Optimizaciones avanzadas | Incluye SIMD, evaluación perezosa y ejecución adaptativa de consultas, que aumentan aún más el rendimiento. |
| Naturaleza modular | Permite componentes reutilizables, lo que facilita su integración en sistemas existentes. |
Aprovechando estas ventajas competitivas, puedes lograr un mejor rendimiento y escalabilidad en tus tareas de análisis de datos. El Native Execution Engine no solo mejora la velocidad, sino que también optimiza el uso de recursos. Esta eficiencia se traduce en ahorro de costes y en una mayor productividad para tu organización.
⚡ Consejo: Al evaluar motores de ejecución, considera cómo sus características únicas se ajustan a tus necesidades específicas de procesamiento de datos. La elección correcta puede influir significativamente en tus capacidades analíticas.
Futuro del Native Execution Engine
Próximas funciones
El futuro del Native Execution Engine se presenta prometedor, con varias funciones interesantes en el horizonte. Estos avances buscan mejorar tus capacidades de procesamiento de datos y el rendimiento general. Estas son algunas de las próximas funciones clave:
- Materialized Lake Views (MLVs): Estas vistas mejorarán la implementación de la arquitectura medallion. Hacen que los pipelines estén listos para producción, lo que permite flujos de datos más eficientes.
- Herramientas de ingeniería asistidas por IA: La introducción de herramientas mejoradas como Copilot indica un fuerte enfoque en integrar capacidades de IA en los flujos de trabajo de ingeniería de datos. Esta integración agilizará los procesos y aumentará la productividad.
- Gestión de memoria unificada: El motor optimizará la gestión de memoria, lo que mejorará significativamente el rendimiento para ingenieros de datos y científicos de datos. Al evitar el recolector de basura de la Java Virtual Machine, reducirá los cuellos de botella de rendimiento.
Estas funciones se alinean con las tendencias actuales en el procesamiento de datos en la nube. Te ayudarán a cumplir con las exigencias de tiempo real y baja latencia que son esenciales en las aplicaciones modernas.
Implicaciones para el análisis
Los avances del Native Execution Engine tendrán implicaciones significativas para el análisis de datos y la inteligencia de negocio. A medida que el motor evolucione, puedes esperar los siguientes beneficios:
- Rendimiento mejorado: El Native Execution Engine ya ofrece una mejora de rendimiento de 6x frente a Spark de código abierto, sin necesidad de cambios en el código. Esta mejora te permitirá ejecutar análisis complejos de forma más eficiente.
- Información en tiempo real: Gracias a su capacidad para manejar diversos tipos de datos, el motor admitirá ingesta de alto rendimiento y consultas híbridas de latencia ultrabaja. Esta capacidad es fundamental para el análisis en tiempo real y los procesos impulsados por IA.
- Uso optimizado de recursos: La arquitectura seguirá optimizando el uso de recursos, en línea con los principios nativos de la nube. Esta optimización te ayudará a controlar los costes manteniendo un rendimiento alto.
A medida que estas funciones se vayan implementando, descubrirás que Native Execution Engine no solo mejora tus capacidades de análisis, sino que también te permite tomar decisiones basadas en datos más rápido. El futuro del análisis de datos se ve prometedor con estas innovaciones.
⚡ Consejo: Mantente al día con estos avances para aprovechar al máximo el potencial de Native Execution Engine en tus flujos de trabajo de análisis.
Para terminar, Native Execution Engine en Microsoft Fabric desempeña un papel fundamental en la mejora de tus capacidades de procesamiento de datos. Gracias a tecnologías como Apache Gluten and Velox, se centra en la ejecución vectorizada y la compilación Just-In-Time (JIT). Este diseño aumenta notablemente la velocidad de ejecución y reduce la latencia, lo que te permite manejar tareas de datos complejas de forma eficiente.
De cara al futuro, Native Execution Engine promete aún más avances. Supera las limitaciones de la ejecución tradicional de Spark, ofreciendo consultas más rápidas y un ahorro de costes considerable. Con benchmarks que muestran hasta una mejora de velocidad de seis veces y una reducción de costes de aproximadamente el 83 %, este motor se posiciona como una solución escalable y eficiente para el análisis de datos moderno. Para profundizar aún más en cómo estos conceptos se aplican al rendimiento de los informes y de OneLake, no dejes de escuchar nuestro episodio de podcast relacionado, Speed Power BI with OneLake and Direct Lake!
⚡ Consejo: Aprovecha Native Execution Engine para desbloquear todo el potencial de tus flujos de trabajo de análisis y mantenerte a la vanguardia en el panorama basado en datos.
Preguntas frecuentes
¿Qué es Native Execution Engine en Microsoft Fabric?
Native Execution Engine es una capa de alto rendimiento en Microsoft Fabric que acelera el procesamiento de datos mediante código C++ nativo. Mejora la ejecución de consultas y reduce los costes sin necesidad de modificar tus aplicaciones existentes.
¿Cómo mejora Native Execution Engine el rendimiento?
Utiliza la ejecución vectorizada y el procesamiento de datos en formato columnar para manejar conjuntos de datos grandes con mayor rapidez. Este enfoque reduce el uso de CPU y acelera las consultas complejas, lo que te permite obtener información más rápido.
¿Puedo usar Native Execution Engine con cargas de trabajo de Spark existentes?
Sí, puedes. El motor se integra sin problemas con Spark, sustituyendo algunas operaciones de JVM por código nativo. No necesitas reescribir tu código para beneficiarte de la mejora del rendimiento.
¿Qué formatos de datos admite Native Execution Engine?
El motor admite formatos populares como Parquet y Delta. Esta compatibilidad te permite ejecutar consultas eficientes directamente sobre los datos de tu lakehouse en Microsoft Fabric.
¿Cómo afecta Native Execution Engine a la gestión de costes?
Al acelerar las consultas y reducir el uso de recursos, el motor disminuye los costes de cálculo. Ahorras dinero mientras obtienes acceso más rápido a tus conclusiones sobre los datos.
¿Es Native Execution Engine adecuado para el análisis en tiempo real?
Por supuesto. Admite consultas de baja latencia e ingesta de alto rendimiento, lo que te permite obtener información en tiempo real y tomar decisiones a tiempo.
¿Qué sectores se benefician más de Native Execution Engine?
Sectores como las finanzas, la sanidad, el comercio minorista y las telecomunicaciones se benefician del procesamiento de datos más rápido y de un análisis mejorado, lo que les ayuda a actuar sobre la información con rapidez.
¿Cómo puedo supervisar el rendimiento de Native Execution Engine?
Microsoft Fabric proporciona herramientas para hacer un seguimiento de cuándo la ejecución nativa se ejecuta o recurre a la JVM. Esta visibilidad te ayuda a optimizar tus flujos de trabajo de datos de forma eficaz.