Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more.
Get startedGrow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.
Leí sobre la importancia de crear un esquema estelar en power-bi. Hice un gran informe usando tabel plano que tiene alrededor de 2,8 filas de milión y contiene de 5 tabels.
https://docs.microsoft.com/en-us/power-bi/guidance/star-schema
Entonces decidí intentar hacer un modelo de esquema estelar en power bi con esos tabel sin embargo me di cuenta de que mi declaración de dónde en el tabel plano es sólo sobre tabel. Luego subo este tabel con donde declaración y obviamente era bastante pequeño. Sin embargo, cuando subí otros tres tabels sin una instrucción where que reaized tengo más de 10 M filas por tabel.
¿Puede alguien explicarme qué estoy haciendo aquí mal, porque siento que me estoy perdiendo algunos principios.
Hola
Estoy haciendo algunas suposiciones que creo que satisfacen sus necesidades. Has empezado con una consulta
ESCOGER
*
DE Hecho F
JOIN Dim1 D1 ON F.d1key = D1.d1key
JOIN Dim2 D2 ON F.d2key = D2.d2key
JOIN Dim3 D3 ON F.d3key = D3.d3key
JOIN Dim4 D4 ON F.d4key = D4.d4key
DONDE 'Alguna condición en digamos D2'
Ahora, para crear un modelo de estrella adecuado a partir de este conjunto Y mantener todas sus tablas DIM pequeñas y relevantes para el alcance de la situación, simplemente use lo siguiente:
ESCOGER
F.*
DE Hecho F
JOIN Dim2 D2 ON F.d2key = D2.d2key
DONDE 'Alguna condición en digamos D2'
SELECCIONAR DISTINTO
D1.*
DE Hecho F
JOIN Dim1 D1 ON F.d1key = D1.d1key
JOIN Dim2 D2 ON F.d2key = D2.d2key
DONDE 'Alguna condición en digamos D2'
SELECCIONAR DISTINTO
D2.*
DE Hecho F
JOIN Dim2 D2 ON F.d2key = D2.d2key
DONDE 'Alguna condición en digamos D2'
SELECCIONAR DISTINTO
D3.*
DE Hecho F
JOIN Dim2 D2 ON F.d2key = D2.d2key
JOIN Dim3 D3 ON F.d3key = D3.d3key
DONDE 'Alguna condición en digamos D2'
SELECCIONAR DISTINTO
D4.*
DE Hecho F
JOIN Dim2 D2 ON F.d2key = D2.d2key
DONDE 'Alguna condición en digamos D2'
Básicamente, la tabla de hechos mantiene todo relevante y se minimizan las uniones a otras tablas solo para lo que se necesita en la instrucción where.
En lugar de D1.*, tal vez solo necesite 3 columnas de la tabla D1. Así que reemplácelo con los nombres de las columnas.
Tal vez para llegar a D4, tienes que hacer una unión en D3 para llegar allí. En este caso, tendría que mantener D3 en las uniones aunque no se use en la instrucción SELECT o WHERE. Además, si este es el caso, la consulta original se ve diferente al ejemplo que proporcioné.
Tal vez su instrucción WHERE tiene condiciones en varias tablas. A continuación, debe mantener las uniones en cada consulta de tabla tenue para mantener la instrucción WHERE en esas tablas.
En todos los casos, es extremadamente importante recordar incluir sus columnas de relación. Si su JOIN está en 2 columnas, entonces en ambas tablas, debe combinarlas en una sola columna de alguna manera. Generalmente utilizo Col1 por defecto| Col2. Hay muchas maneras de hacerlo, recomiendo buscarlas y usar el método que funcione para usted.
Si esto resuelve su problema, por favor hágamelo saber.
No @round23
Sus necesidades no son muy claras.
Si desea utilizar el esquema Star para administrar relaciones , ¿cuáles son las tablas de Dimensión ? ¿Qué hay de sus mesas de hechos? ¿Podría proporcionar algunos datos detallados o muestra para ayudarnos a lidiar mejor con el problema?
Saludos
Equipo de apoyo comunitario _ Ailsa Tao
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los demás miembros a encontrarla más rápidamente.
Hey @round23 ,
Creo que tienes que explicar un poco mejor lo que estás haciendo.
Supongo que Tabel significa mesa. ¿Dónde tiene una instrucción where, a dónde carga las tablas? Por favor, explique mejor, con capturas de pantalla, modelo de datos, etc. que podemos ayudarle.
Saludos
Denis
Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.
Ask questions in Eventhouse and KQL, Eventstream, and Reflex.