Pregunta de entrevista para Analista de datos

¿Por qué las tablas de reporting suelen estar desnormalizadas cuando las bases de datos transaccionales están normalizadas?

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

Respuesta rápida

La normalización optimiza para escrituras e integridad, así que una base de datos transaccional evita duplicar datos y actualiza una fila en un solo sitio. El reporting optimiza para lecturas sobre escaneos enormes, donde cada join cuesta tiempo y cada tabla extra le cuesta claridad al analista. Un esquema en estrella desnormalizado significa menos joins, consultas más rápidas sobre almacenamiento columnar y nombres de columna que un analista entiende sin un diccionario de datos.

Por qué lo preguntan los entrevistadores

Esto comprueba si entiendes por qué existe siquiera una capa analítica separada, en vez de tratarla como una copia de producción por comodidad. Los entrevistadores quieren el encuadre de optimizar para escritura frente a lectura, el punto de que la compresión columnar abarata los valores de dimensión duplicados, y la conciencia de que consultar directamente la base de datos de producción es lento para ti y operativamente arriesgado para todos los demás.

Cómo estructurar tu respuesta

  • Contrasta la carga de trabajo para la que está optimizado cada diseño.
  • Explica por qué los joins son caros a escala analítica.
  • Añade el argumento de usabilidad para los analistas.
  • Menciona que la compresión columnar abarata la duplicación.
  • Señala por qué consultar producción directamente es mala idea.

Ejemplo de respuesta

Ejemplo hablado, en primera persona

Resuelven problemas distintos. Una base de datos transaccional está hecha para muchas escrituras pequeñas con integridad estricta, así que normalizar significa que la dirección de un cliente existe una vez y actualizarla es una sola escritura. Una tabla analítica está hecha para escanear millones de filas de golpe, donde cada join es un coste y un join de quince tablas es lento y difícil de hacer bien. Así que desnormalizamos en hechos y dimensiones conformadas, lo que recorta joins y le da a los analistas nombres de columna legibles en vez de un diagrama de esquema y tres tablas de consulta. El almacenamiento columnar abarata esto, porque repetir una cadena de país en millones de filas se comprime hasta casi nada. La otra razón es operativa. Lanzar un escaneo analítico pesado contra la base de datos de producción compite con la aplicación por los recursos, y he visto una consulta ad hoc tumbar un servicio de checkout. Incluso ignorando el modelado por completo, la carga analítica pertenece a un sitio donde no pueda hacer daño a los clientes.

¿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

  • ¿Qué es una dimensión conformada y por qué importa?
  • ¿Cuándo mantendrías una estructura normalizada en el almacén de datos?
  • ¿Cómo gestionas una métrica que necesita datos de dos tablas de hechos?

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