Pregunta de entrevista para Analista de datos

¿Qué es un join con fan out y cómo lo detectarías en tu propia consulta?

Qué evalúa el entrevistador, cómo estructurar tu respuesta y un ejemplo hablado que puedes adaptar.

Respuesta rápida

Un fan out ocurre cuando unes con una tabla que tiene varias filas coincidentes por clave, así que cada fila de la izquierda se duplica y cualquier SUM sobre ella queda inflado. Es la causa más común de ingresos exagerados en un informe. Detéctalo contando filas antes y después del join, o comprobando si la clave de unión es realmente única en el lado derecho antes de agregar.

Por qué lo preguntan los entrevistadores

Produce números incorrectos que parecen creíbles, que es la peor clase de bug analítico, y normalmente solo lo pilla alguien de finanzas que conoce el total real. Los entrevistadores quieren un hábito proactivo de detección más que una definición, y a ser posible el patrón de preagregar el lado múltiple antes de unir.

Cómo estructurar tu respuesta

  • Explica el mecanismo: un join uno a muchos duplicando filas de la izquierda.
  • Muestra por qué los agregados se inflan en vez de dar error.
  • Da el hábito de detección: conteos de filas antes y después.
  • Verifica de forma explícita la unicidad de la clave en el lado de la unión.
  • Ofrece el arreglo: agregar primero el lado múltiple y luego unir.

Ejemplo de respuesta

Ejemplo hablado, en primera persona

Si uno pedidos con líneas de pedido por order_id, y un pedido tiene cuatro líneas, esa fila de pedido aparece ahora cuatro veces. No falla nada, pero si luego sumo el total del pedido he cuadruplicado los ingresos de ese pedido. Es insidioso porque el número es plausible, solo que incorrecto, y quien lo encuentra suele ser finanzas tres semanas después. Mi costumbre es contar filas en la tabla base, ejecutar el join, volver a contar, y si el número cambió tengo que poder explicar por qué. También compruebo antes la unicidad de la clave de unión con un group by rápido y un having count mayor que uno, que cuesta diez segundos. El arreglo suele ser agregar el lado múltiple al grano que quiero antes de unir, así que sumo los ingresos por línea de cada pedido en una CTE y uno esa única fila por pedido con la cabecera. Eso mantiene el grano intacto y hace la consulta más fácil de razonar.

¿Tienes esta entrevista a la vuelta de la esquina? GhostPilot escucha tu llamada en vivo, detecta la pregunta en cuanto la hacen y pone una respuesta estructurada en tu pantalla en tiempo real. Pruébalo en tu próxima entrevista de práctica, o coge un Session Pass de $29, sin suscripción, para la de verdad.

Mira cómo funciona

Preguntas de seguimiento que puedes esperar

  • ¿Cómo reescribirías una consulta con fan out para preservar el grano?
  • ¿Por qué SELECT DISTINCT es un mal arreglo para esto?
  • ¿Cómo detectarías esto en un panel que ha construido otra persona?

Más preguntas para Analista de datos

Tu entrevistador hará su propia versión de esta. Pega la descripción real del puesto en el Question Predictor gratuito y obtén las 20 preguntas que ese puesto tiene más probabilidades de hacerte, con lo que cada una busca en realidad.

Predecir mis preguntas

Ensaya las preguntas difíciles antes de que te las hagan

Practica con un copiloto en vivo y entra preparado. Un Session Pass de $29 te lleva a través de la entrevista sin suscripción y sin ataduras.

Consigue GhostPilot