Se une en SQL vs usando el rendimiento de las relaciones

Un usuario Pregunto ✅

Noeleke

Hola a todos,

No he encontrado la respuesta exacta que estoy buscando, así que espero que mi pregunta sea clara de entender.

Tengo dos tablas: X e Y. Digamos que ambas tablas contienen 4 columnas que necesito en el 99% de mis informes. Como uso consultas personalizadas todo el tiempo, generalmente selecciono las 4 columnas de X y uso una combinación izquierda para las 4 columnas de Y. Digamos que tengo un informe con 5 consultas diferentes, todas usan esa combinación izquierda, por lo que 5 izquierda se unen en total.

¿Sería mejor simplemente importar la tabla Y y usar las relaciones integradas en lugar de unirse a la izquierda en mis consultas SQL?

¿Sería mejor el rendimiento de powerbi?

Gracias por adelantado. Si mi explicación no está clara, ¡hágamelo saber!

nhoward

@Noeleke,

La respuesta depende de cómo desee configurar su modelo de datos. La mejor práctica es una tabla de hechos (contiene los elementos que desea sumar, contar, etc.) y algunas tablas de dimensiones (que le ayudarán a filtrar la tabla de hechos).

Si su modelo de datos PBI requiere que las dos tablas SQL estén en una tabla, únase al cargar mediante el script SQL. O si accede a la base de datos SQL, crea una Vista que los une, entonces puede simplemente cargar la vista en PBI.

Además, como dijo @ v-diye-msft, las Relaciones en PBI actúan de ciertas formas. Es posible que esto no sea lo que necesita para su modelo, ya que las relaciones son relaciones de filtro, no uniones.

Espero que ayude.

nhoward

@Noeleke,

La respuesta depende de cómo desee configurar su modelo de datos. La mejor práctica es una tabla de hechos (contiene los elementos que desea sumar, contar, etc.) y algunas tablas de dimensiones (que le ayudarán a filtrar la tabla de hechos).

Si su modelo de datos PBI requiere que las dos tablas SQL estén en una tabla, únase al cargar mediante el script SQL. O si accede a la base de datos SQL, crea una Vista que los une, entonces puede simplemente cargar la vista en PBI.

Además, como dijo @ v-diye-msft, las Relaciones en PBI actúan de ciertas formas. Es posible que esto no sea lo que necesita para su modelo, ya que las relaciones son relaciones de filtro, no uniones.

Espero que ayude.

Noeleke

En respuesta a nhoward

Muchas gracias a ambos por sus respuestas. Pensé que entendía para qué sirven las relaciones: enlazar tablas. Lo que me perdí por completo fue que las relaciones de hecho filtran los resultados, no los unen.

Entonces, los dos métodos son algo iguales, pero los resultados pueden ser muy diferentes.

Hola @Noeleke

Cuando cargamos dos o más tablas al mismo tiempo, Power BI Desktop observará los nombres de las columnas en las tablas que estamos consultando para determinar si existen posibles relaciones. Si los hay, esas relaciones se crean automáticamente.

De Cardinalidad y Resultado podemos obtener:

muchos: muchos -> interior
uno: uno -> Completo exterior
uno: muchos -> RightOuter
muchos: uno -> LeftOuter

si las relaciones establecidas por SQL DB son las mismas que las de detección de Power BI, no es necesario modificarlas. Si bien la lógica es diferente, puede administrar las relaciones siguiendo este artículo según sus necesidades. Consulte: Crear y administrar relaciones en Power BI Desktop.

Aquí hay un hilo similar que también podría ser su referencia:

https://community.powerbi.com/t5/Desktop/Relationships/mp/233398

Deja un comentario

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