Importar vs DirectQuery Power BI

A la hora de obtener datos desde fuentes externas, Power BI Desktop ofrece dos posibilidades: Importar y DirectQuery. Son dos modos de acceder a los datos muy distintos entre ellos y cada uno permite trabajar de una forma diferente. Si sólo hubiera un modo no nos plantearíamos la duda de cuál es el correcto. Al final de esta entrada se encuentra la respuesta sobre qué tipo de conexión es la mejor.

Cada método tiene sus pros y sus contras, es por esto que para entender qué opción es más adecuada en cada caso, es necesario entender cómo funcionan.

Importar

Mediante este método, Power BI carga en nuestro modelo los datos procedentes de una fuente externa. Es decir, si estamos trabajando con un archivo en Power BI Desktop, los datos que obtengamos se van a guardar en este archivo, en el disco duro de la máquina con la que estemos trabajando.

Si se producen cambios en los datos subyacentes, ni los objetos visuales ni los datos que hemos cargado en nuestro modelo se van a ver afectados, a no ser que se pulse
Actualizar. De la misma forma, si publicamos el informe en el servidor, será necesaria una actualización de los datos para ver los cambios.

Pros

  • Al cargar los datos en Power BI, tendremos la opción de aprovechar plenamente las características de Power Query y DAX. En Power Query podremos usar todas las funciones y hacer transformaciones tan complejas como necesitemos, al igual que en DAX, donde no tendremos ninguna limitación para escribir nuestras fórmulas.
  • Mediante este método, es posible cargar datos procedentes de distintas fuentes, como bases de datos SQL, web, o archivos Excel o JSON. Además, es posible combinar estos conjuntos de datos.
  • Esta forma de almacenamiento de los datos suele ser la más eficiente y tener tiempos de respuesta menores, ya que los datos están almacenados en memoria y no se están ejecutando queries constantemente. Los objetos visuales utilizan los datos cargados en el archivo y se renderizan más rápidamente.

Contras

  • El tamaño de los archivos está limitado a 1 Gb. Teniendo en cuenta la cantidad de datos que se pueden cargar es una limitación a tener en cuenta.
  • Los informes publicados en el servidor de Power BI sólo pueden actualizarse automáticamente un máximo de 8 veces diarias. Lo que hace que está opción no sea la más adecuada si se desea tener un informe con datos actualizados constantemente.
  • Los archivos generados mediante Power BI Desktop ocupan bastante memoria al tener cargados los datos con los que se trabaja. Al subir los informes a un servidor, estos datos también son cargados en el propio servidor.

DirectQuery

DirectQuery crea una conexión directa a las fuentes de datos, de forma que éstos permanecen en la base de datos original y no son cargados en el archivo. Mediante Power BI se pueden realizar algunas transformaciones en las tablas a las que nos conectemos y crear visualizaciones con las que presentar los datos en informes. Al tener creada la conexión con la fuente de datos, la información presentada se actualiza cada vez que se crea un nuevo objeto visual.

Pros

  • Las actualizaciones de los datos son casi constantes e ilimitadas, por lo que este tipo de conexión es la más adecuada en informes que requieran la información más reciente, como noticias, tweets, etc.
  • Al no cargar los datos, los archivos ocupan mucho menos espacio en disco. Además, sobrepasar el límite de 1Gb es más difícil de conseguir.

Contras

  • La variedad de funciones de DAX que se puede emplear para analizar datos con DirectQuery es más limitada. DirectQuery no soporta las funciones time intelligence.
  • La funcionalidad de Power Query también se ve limitada, ya que no sólo hay algunas funciones que no se pueden usar, sino que cuando la transformación de una tabla es muy compleja el programa da error.
  • La velocidad se ve reducida. Cada visualización envía una consulta cada vez que requiere actualizar los datos, y esto en informes con muchos objetos visuales puede ser una carga pesada. Además, cuando el informe se encuentra en un servidor al que tienen acceso varias personas a la vez, se puede dar el caso de estar realizando varias consultas al mismo tiempo, o en periodos muy pequeños, lo que entorpece la conexión

Conclusión

Cada tipo de conexión tiene sus características. ¿Qué tipo de conexión es mejor? La respuesta es que depende. Depende de qué tipo de informe estemos desarrollando, la cantidad de datos que se vayan a manejar, qué uso se le va a dar al informe, etc.

No obstante, en la mayoría de los casos la mejor opción es importar los datos. De hecho, este tipo de almacenamiento es el que recomienda Microsoft siempre que se pueda. La conexión DirectQuery es más adecuada en casos concretos, como requerir que la información presentada sea lo más reciente posible, o no poder trabajar con archivos de mucho tamaño.

DEJA UNA RESPUESTA

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *