Los flujos de datos (dataflows) en Power BI necesitan copias de seguridad para evitar pérdidas irreversibles debido a eliminaciones o modificaciones accidentales. A continuación, se describen métodos para respaldar tanto la estructura (definición) como los datos de un flujo de datos, con pasos detallados, requisitos y limitaciones de cada enfoque.

Exportación e Importación de JSON (Respaldo de la Estructura)
Este método es directo para respaldar y restaurar la configuración de un flujo de datos, ya que el archivo JSON (model.json) contiene todas las consultas (M code) y entidades del flujo, pero no incluye los datos.
- Exportar un flujo a JSON: En el servicio Power BI, busca el flujo de datos que deseas respaldar. Haz clic en el menú de “…” y elige la opción para exportar a .json, obteniendo un archivo con la definición completa (todas sus tablas y consultas).
- Importar (restaurar) el flujo de datos: Para recrearlo o clonarlo, en un espacio de trabajo de destino crea un nuevo flujo de datos y selecciona la opción de importar modelo. Carga el archivo JSON exportado y Power BI generará un nuevo flujo de datos con la misma estructura.
- Configurar credenciales y actualizar: Tras la importación, revisa las credenciales de cada origen de datos y, si procede, la puerta de enlace (gateway). Luego, guarda y refresca el flujo para que cargue sus datos.
Limitaciones: Solo respalda la estructura del flujo, no los datos ni las credenciales de conexión. Esto implica que, para conservar las tablas con datos, hay que combinarlo con otros métodos.

Clonación de Flujos de Datos en Diferentes Espacios de Trabajo
Clonar un flujo es muy útil para entornos de desarrollo/producción o para tener una copia en un workspace aislado. Aunque no existe un botón “Duplicar” directo, se consigue exportando el JSON de un workspace e importándolo en otro.
- Exportar el flujo original a JSON y guardar el archivo.
- Cambiar al workspace destino, crear un nuevo flujo y seleccionar “Importar modelo” con ese JSON.
- Reconfigurar las credenciales y refresh.
Consideraciones: El historial de actualizaciones y los datos cargados no se transfieren. Además, si hay parámetros que apuntan a otros servidores o bases de datos, se deben editar antes de la importación. Para sincronizar cambios, cada vez que modifiques el flujo original tendrías que repetir la exportación/importación si deseas mantener la copia al día.
Copia de Seguridad Automatizada con Power Automate (o Logic Apps)
Para no depender de exportaciones manuales, se pueden programar copias de seguridad periódicas usando Power Automate.
- Exportar la definición (JSON) automáticamente: Se emplea la API REST de Power BI para obtener el JSON del flujo y guardarlo (por ejemplo, en SharePoint o OneDrive). La acción se programa con la frecuencia deseada.
- Exportar los datos de las entidades: No existe un conector nativo directo, pero se puede orquestar la extracción con métodos como ejecutar consultas DAX en un dataset conectado o usar informes paginados.
Limitaciones y requisitos: Se precisa una licencia adecuada de Power BI y Power Automate para las llamadas a la API, además de configurar correctamente la autenticación OAuth. Al extraer grandes volúmenes de datos, conviene evaluar límites de tiempo/tamaño o explorar estrategias adicionales como Dataflow Gen2 o integración con Azure Data Factory.
Integración con Azure Data Lake Storage (ADLS Gen2) para Resguardar Datos y Definiciones
Esta característica (conocida como “Bring Your Own Storage”) permite que los flujos de datos almacenen sus resultados en una cuenta de Data Lake de la organización, en lugar de usar el almacenamiento interno de Power BI.
- Configurar una cuenta de ADLS Gen2 con permisos adecuados y habilitar la conexión desde el portal de administración de Power BI o la configuración del workspace.
- Una vez activa la integración, cualquier flujo de datos creado o actualizado en ese workspace guardará sus entidades y el model.json en el contenedor de ADLS.
- Para recuperarlo, basta con descargar el model.json y volver a importarlo en Power BI si fuera necesario.
Ventajas: Ofrece resiliencia, control total de los datos y la posibilidad de aplicar políticas de retención o snapshots en Azure. Por otra parte, se requiere una planificación administrativa y generalmente se asocia a capacidades Premium o PPU.

Estrategias para Mantener Versiones Históricas
Power BI no incluye un historial de versiones nativo para flujos de datos, así que conviene guardar manual o automáticamente las definiciones JSON para poder revertir cambios si fuera preciso.
- Versionado mediante archivos JSON: Antes de hacer cambios importantes, exporta tu flujo a un archivo nombrado con la versión o fecha. Conserva esos JSON en un repositorio seguro (SharePoint, OneDrive o algún sistema de control de versiones).
- Múltiples flujos versionados: Tener copias paralelas (Flujo_v1, Flujo_v2…) puede funcionar, pero complica la administración, consume espacio y genera confusión. Es preferible organizarlo en entornos (por ejemplo, Dev/Prod) y usar pipelines de implementación.
- Instantáneas de Data Lake: Si usas ADLS Gen2, habilitar el versionado de blobs permite mantener versiones históricas de los archivos subyacentes, aunque la restauración sigue siendo manual.
Conclusión
Las copias de seguridad de los flujos de datos en Power BI son fundamentales para evitar pérdidas al no existir una recuperación nativa. La exportación/importación de JSON respalda la estructura y permite restaurar o clonar flujos de forma sencilla. Clonar en diferentes espacios de trabajo ayuda a separar entornos o mantener copias aisladas. Con Power Automate, se pueden programar exportaciones periódicas y, si hace falta, extraer datos. La integración con Azure Data Lake Gen2 protege tanto definiciones como datos, dándonos un mayor control y la posibilidad de un backup más robusto. Finalmente, el versionado histórico mediante exportaciones JSON o repositorios externos nos permite revertir cambios erróneos cuando sea necesario. Cada organización adaptará estas prácticas según su licencia (Pro, Premium) y necesidades, pero lo crucial es no dejar a la suerte la continuidad de los flujos de datos.
Puedes seguir leyendo artículos sobre Power Query aquí




Deja un comentario