Forum Discussion
¿Debo usar SQL o Power Query para transformaciones de datos? ¿O algo más?
Trabajo con Syspro (un sistema ERP) que se encuentra en la parte superior de una base de datos SQL. Registra toda la información de ventas de nuestra empresa, y uso PowerBI para unir varias tablas y crear informes para diferentes departamentos. Actualmente tengo 1 modelo subyacente principal, que ajusto las imágenes para diferentes usuarios finales. A medida que el número de informes ha crecido, estoy luchando para mantener los cambios consistentes en todos mis modelos. Hago mis transformaciones de datos en Power Query, lo cual es genial, hasta que necesito hacer el mismo cambio en 10+ archivos diferentes.
Espero que alguien tenga consejos sobre cómo crear un método sostenible de transformaciones de datos en lugar de usar Power Query. Mi idea inicial fue usar SQL para transformar mis datos y luego vincular todos mis modelos a esos datos transformados. Almacenaría los datos transformados en Azure. De esa manera, cuando necesito hacer un cambio (por ejemplo, agregar una columna calculada), solo tengo que hacer el cambio en SQL y todos mis archivos de PowerBI se actualizan automáticamente la próxima vez que se actualicen. Un requisito es que dondequiera que se almacenen estos datos transformados, necesito poder programar actualizaciones a través de power automate. Sin embargo, usar SQL es solo mi idea inicial, y estoy interesado en escuchar las opiniones de otros sobre lo que funciona mejor.
2 Replies
- Syndicate_Admin
Administrator
Hola @analyticsyc - Maxim de Roche - hacer la transformación lo más arriba posible y aguas abajo cuando sea necesario.
Al crear vistas SQL para la base de todos sus extractos es ventajoso. Cuando se realizan cambios en la base de datos principal, las vistas pueden estar sujetas a pruebas del sistema antes de la implementación de producción. Dicho esto, es poco probable que se cambien las tablas en el sistema ERP. Pero, ¿qué tan fácil es para usted incluir y realizar cambios en las vistas en el ERP principal? Además, cuando realice cambios en estas vistas, los cambios no se cargarán necesariamente en los modelos de datos de Power BI.
Crearía una canalización antes de importarla a los archivos de conjunto de datos de Power BI para extraer los datos de ERP y, a continuación, transformarlos.
Personalmente, me gusta Dataflows porque hace las cosas de una manera No-Code / Low-Code y utiliza el plegado de consultas contra la fuente. Esto le permite centralizar Power Query en un solo lugar, pero no tendrá la flexibilidad ni la escala de otras soluciones de lago de datos de Azure.
Por lo tanto, tiene sentido replicar el ERP en una casa de lago para transformaciones de bronce, plata y oro. Recomendaría usar Azure pipeline para replicar la base de datos de ERP. Aquí hay un par de videos para ver:
¿Lakehouse de datos moderno? ¿Por dónde empezar??? ¡Azure Synapse, por supuesto! - YouTube.
Fusionar sus datos en un moderno almacén de datos de Lakehouse: YouTube. - Syndicate_Admin
Administrator
Buena pregunta, no es per se una respuesta fácil.
Power Query y SQL no son adversarios; Son aliados, cada uno ofrece ventajas únicas.
Power Query es conocido por su interfaz fácil de usar, lo que lo hace ideal para principiantes y tareas rápidas. También sirve como puente para los usuarios de Excel, permitiendo transformaciones de datos más sofisticadas, especialmente en situaciones sobre el terreno.
Por otro lado, SQL es inigualable en su rendimiento, escalabilidad y en la ejecución de operaciones precisas y seguras. Proporciona un control superior, una seguridad sólida y garantiza la fiabilidad de los datos.
Dependiendo de su proyecto, uno puede encajar mejor, pero comprender y aprovechar las fortalezas de ambos puede ser una gran combinación.
Escribí un artículo sobre esto para explicar mejor los conceptos:
https://gorilla.bi/power-query/power-query-vs-sql/