top 24 data modeling interview questions with detailed answers
Lista de preguntas y respuestas de entrevistas de modelado de datos más frecuentes para ayudarlo a prepararse para la próxima entrevista:
Aquí voy a compartir algunas preguntas de la entrevista de modelado de datos y respuestas detalladas basadas en mi propia experiencia durante las interacciones de entrevistas en algunas multinacionales de TI de renombre.
Las siguientes preguntas y respuestas pueden ser de gran ayuda si tiene la oportunidad de enfrentarse o realizar una entrevista sobre Modelado de datos.
Preguntas de la entrevista de modelado de datos más frecuentes
¡Empecemos!
P # 1) ¿Qué entiende por modelado de datos?
Responder: Modelado de datos es la representación esquemática que muestra cómo se relacionan las entidades entre sí. Es el paso inicial hacia el diseño de bases de datos. Primero creamos el modelo conceptual, luego el modelo lógico y finalmente pasamos al modelo físico.
Generalmente, los modelos de datos se crean en la fase de análisis y diseño de datos del ciclo de vida del desarrollo de software.
Q #2) ¿Explica tu comprensión de los diferentes modelos de datos?
Responder: Hay tres tipos de modelos de datos: conceptual, lógico y físico. El nivel de complejidad y detalle aumenta de conceptual a lógico a un modelo de datos físico.
El modelo conceptual muestra un alto nivel de diseño muy básico, mientras que el modelo de datos físicos muestra una vista muy detallada del diseño.
- Modelo conceptual solo representará nombres de entidades y relaciones de entidades. La Figura 1 que se muestra en la última parte de este artículo muestra un modelo conceptual.
- Modelo lógico mostrará nombres de entidades, relaciones de entidades, atributos, claves primarias y claves externas en cada entidad. La Figura 2 que se muestra dentro de la pregunta n. ° 4 de este artículo muestra un modelo lógico.
- Modelo de datos físicos mostrará claves primarias, claves externas, nombres de tablas, nombres de columnas y tipos de datos de columnas. Esta vista en realidad explica cómo se implementará realmente el modelo en la base de datos.
Q #3) ¿Arroja algo de luz sobre su experiencia en el modelado de datos con respecto a los proyectos en los que ha trabajado hasta la fecha?
Nota: Esta fue la primera pregunta en una de mis entrevistas de Modelado de datos. Por lo tanto, antes de entrar en la discusión de la entrevista, debe tener una idea muy clara de cómo encaja el modelado de datos en las asignaciones en las que ha trabajado.
Responder: He trabajado en un proyecto para una compañía proveedora de seguros de salud donde tenemos interfaces integradas Informatica que transforma y procesa los datos obtenidos de la base de datos de Facets y envía información útil a los proveedores.
Nota: Facets es una solución integral para administrar toda la información para la industria del cuidado de la salud. La base de datos de facetas de mi proyecto se creó con SQL Server 2012.
Teníamos diferentes entidades que estaban vinculadas entre sí. Estas entidades fueron suscriptor, miembro, proveedor de atención médica, reclamo, factura, inscripción, grupo, elegibilidad, plan / producto, comisión, capitación, etc.
A continuación se muestra el modelo de datos conceptual que muestra cómo se veía el proyecto en un nivel alto.
Figura 1:
Cada una de las entidades de datos tiene sus propios atributos de datos. Por ejemplo, un atributo de datos del proveedor será el número de identificación del proveedor, algunos atributos de datos de la membresía serán el ID de suscriptor, el ID de miembro, uno de los atributos de datos de la reclamación será la ID de reclamación, cada producto o plan de atención médica tendrá una ID de producto única y pronto.
P # 4) ¿Cuáles son los diferentes esquemas de diseño en el modelado de datos? Explica con elejemplo?
Responder: Hay dos tipos diferentes de esquemas en el modelado de datos
- Horario estrella
- Esquema de copo de nieve
Ahora, explicaré cada uno de estos esquemas uno por uno.
El más simple de los esquemas es el esquema en estrella, donde tenemos una tabla de hechos en el centro que hace referencia a tablas de múltiples dimensiones a su alrededor. Todas las tablas de dimensiones están conectadas a la tabla de hechos. La clave principal en todas las tablas de dimensiones actúa como una clave externa en la tabla de hechos.
los IS diagrama (ver Figura 2) de este esquema se asemeja a la forma de una estrella y es por eso que este esquema se denomina esquema de estrella.
Figura 2:
El esquema en estrella es bastante simple, flexible y está en forma desnormalizada.
En un esquema de copo de nieve, aumenta el nivel de normalización. La tabla de hechos aquí sigue siendo la misma que en el esquema en estrella. Sin embargo, las tablas de dimensiones están normalizadas. Debido a varias capas de tablas de dimensiones, parece un copo de nieve y, por lo tanto, se denomina esquema de copo de nieve.
programa de árbol de búsqueda binaria en java
Figura 3:
P # 5) ¿Qué esquema usaste en tu proyecto y por qué?
P # 6) ¿Qué esquema es mejor: estrella o copo de nieve?
Respuesta: (Combinado para Q # 5 y 6): La elección de un esquema siempre depende de los requisitos y escenarios del proyecto.
Dado que el esquema en estrella está en forma desnormalizada, necesita menos combinaciones para una consulta. La consulta es simple y se ejecuta más rápido en un esquema en estrella. Al llegar al esquema de copo de nieve, dado que está en forma normalizada, requerirá una serie de uniones en comparación con un esquema en estrella, la consulta será compleja y la ejecución será más lenta que el esquema en estrella.
Otra diferencia significativa entre estos dos esquemas es que el esquema de copo de nieve no contiene datos redundantes y, por lo tanto, es fácil de mantener. Por el contrario, el esquema en estrella tiene un alto nivel de redundancia y, por lo tanto, es difícil de mantener.
Ahora, ¿cuál elegir para tu proyecto? Si el propósito de su proyecto es hacer más análisis de dimensiones, debería optar por un esquema de copo de nieve. Por ejemplo, si necesitas averiguar eso '¿Cuántos suscriptores están vinculados a un plan en particular que está activo actualmente?' - Ir con el modelo de copo de nieve.
Si el propósito de su proyecto es hacer más un análisis de métricas, debe ir con un esquema en estrella. Por ejemplo, si necesitas averiguar eso '¿Cuál es el monto de la reclamación pagado a un suscriptor en particular?' - ir con un esquema de estrella.
En mi proyecto, usamos el esquema de copos de nieve porque teníamos que hacer análisis en varias dimensiones y generar informes resumidos para la empresa. Otra razón para usar el esquema de copo de nieve es que consume menos memoria.
amplitud primera búsqueda árbol c ++
P # 7) ¿Qué entiendes por dimensión y atributo?
Responder: Las dimensiones representan datos cualitativos. Por ejemplo, plan, producto, clase son todas dimensiones.
Una tabla de dimensiones contiene atributos descriptivos o textuales. Por ejemplo, la categoría y el nombre del producto son los atributos de la dimensión del producto.
P # 8) ¿Qué es una tabla de hechos y hechos?
Responder: Los hechos representan datos cuantitativos.
Por ejemplo, el monto neto adeudado es un hecho. Una tabla de hechos contiene datos numéricos y claves externas de tablas dimensionales relacionadas. Se puede ver un ejemplo de la tabla de hechos en la Figura 2 que se muestra arriba.
P # 9) ¿Cuáles son los diferentes tipos de dimensiones con las que se ha encontrado? ¿Explica cada uno de ellos en detalle con un ejemplo?
Responder: Normalmente hay cinco tipos de dimensiones.
a) Dimensiones conformadas : Una dimensión que se utiliza como parte de diferentes áreas se denomina dimensión conformada. Puede utilizarse con diferentes tablas de hechos en una sola base de datos o en numerosos mercados de datos / almacenes.
Por ejemplo, si la dimensión del suscriptor está conectada a dos tablas de hechos: facturación y reclamo, entonces la dimensión del suscriptor se trataría como una dimensión conforme.
b) Dimensión basura : Es una tabla de dimensiones que consta de atributos que no tienen un lugar en la tabla de hechos ni en ninguna de las tablas de dimensiones actuales. En general , estas son propiedades como banderas o indicadores.
Por ejemplo, puede ser una marca de elegibilidad de miembro configurada como 'Y' o 'N' o cualquier otro indicador configurado como verdadero / falso, cualquier comentario específico, etc. Si mantenemos todos los atributos de estos indicadores en la tabla de hechos, su tamaño aumenta. Asi que , Combinamos todos estos atributos y los colocamos en una tabla de una sola dimensión llamada dimensión basura que tiene ID de basura únicos con una posible combinación de todos los valores del indicador.
c) Dimensión de juego de roles : Estas son las dimensiones que se utilizan para múltiples propósitos en la misma base de datos.
Por ejemplo, se puede usar una dimensión de fecha para 'Fecha de reclamación', 'Fecha de facturación' o 'Fecha de término del plan'. Asi que , tal dimensión se llamará dimensión de juego de roles. La clave principal de la dimensión Fecha se asociará con varias claves externas en la tabla de hechos.
d) Dimensión que cambia lentamente (SCD): Estos son los más importantes entre todas las dimensiones. Estas son las dimensiones donde los valores de los atributos varían con el tiempo. A continuación se muestran los diferentes tipos de SCD
- Tipo-0: Estas son las dimensiones en las que el valor del atributo permanece estable en el tiempo. Por ejemplo, El DOB del suscriptor es un SCD de tipo 0 porque siempre será el mismo independientemente del momento.
- Tipo 1: Estas son las dimensiones donde el valor anterior del atributo se reemplaza por el valor actual. No se mantiene ningún historial en la dimensión Tipo-1. Por ejemplo, La dirección del suscriptor (donde la empresa requiere mantener la única dirección actual del suscriptor) puede ser una dimensión de Tipo 1.
- Tipo 2: Estas son las dimensiones donde se conserva una historia ilimitada. Por ejemplo, Dirección del suscriptor (donde la empresa requiere mantener un registro de todas las direcciones anteriores del suscriptor). En este caso, se insertarán varias filas para un suscriptor en la tabla con sus diferentes direcciones. Habrá algunas columnas que identificarán la dirección actual. Por ejemplo, 'Fecha de inicio' y 'Fecha de finalización'. La fila donde el valor 'Fecha de finalización' estará en blanco contendrá la dirección actual del suscriptor y todas las demás filas tendrán las direcciones anteriores del suscriptor.
- Tipo 3: Este es el tipo de dimensiones donde se conserva una historia limitada. Y usamos una columna adicional para mantener el historial. Por ejemplo, Dirección del suscriptor (donde la empresa requiere mantener un registro de la dirección actual y solo una anterior). En este caso, podemos disolver la columna 'dirección' en dos columnas diferentes: 'dirección actual' y 'dirección anterior'. Por lo tanto, en lugar de tener varias filas, solo tendremos una fila que muestre la dirección actual y anterior del suscriptor.
- Tipo 4: En este tipo de dimensión, los datos históricos se conservan en una tabla separada. La tabla de dimensiones principal contiene solo los datos actuales. Por ejemplo, la tabla de dimensiones principal tendrá solo una fila por suscriptor con su dirección actual. Todas las demás direcciones anteriores del suscriptor se mantendrán en la tabla de historial separada. Este tipo de dimensión casi nunca se utiliza.
e) Dimensión degenerada: Una dimensión degenerada es una dimensión que no es un hecho, sino que se presenta en la tabla de hechos como clave primaria. No tiene su propia tabla de dimensiones. También podemos llamarlo como una tabla de dimensión de atributo único.
Pero , en lugar de mantenerlo por separado en una tabla de dimensiones y poner una combinación adicional, colocamos este atributo en la tabla de hechos directamente como clave. Dado que no tiene su propia tabla de dimensiones, nunca puede actuar como una clave externa en la tabla de hechos.
P # 10) ¿Da su idea sobre hechos sin hechos? ¿Y por qué lo usamos?
Responder: La tabla de hechos sin hechos es una tabla de hechos que no contiene ninguna medida de hechos. Solo tiene las claves de dimensión.
A veces, pueden surgir ciertas situaciones en el negocio en las que necesite tener una tabla de hechos sin hechos.
Por ejemplo, Suponga que mantiene un sistema de registro de asistencia de empleados, puede tener una tabla de hechos sin hechos con tres claves.
ID de empleado |
Department_ID |
Time_ID |
Puede ver que la tabla anterior no contiene ninguna medida. Ahora, si desea responder a la siguiente pregunta, puede hacerlo fácilmente utilizando la tabla de hechos sin hechos única anterior en lugar de tener dos tablas de hechos separadas:
'¿Cuántos empleados de un departamento en particular estuvieron presentes en un día en particular?'
Entonces, la tabla de hechos sin hechos ofrece flexibilidad al diseño.
P # 11) ¿Distinguir entre OLTP y OLAP?
Responder: OLTP significa Sistema de procesamiento de transacciones en línea & OLAP es sinónimo de Sistema de procesamiento analítico en línea . OLTP mantiene los datos transaccionales de la empresa y generalmente está muy normalizado. Por el contrario, OLAP es para propósitos de análisis e informes y está en forma desnormalizada.
Esta diferencia entre OLAP y OLTP también le brinda la forma de elegir el diseño del esquema. Si su sistema es OLTP, debe optar por un diseño de esquema en estrella y si su sistema es OLAP, debe optar por un esquema de copo de nieve.
P # 12) ¿Qué entiende por data mart?
Responder: Los mercados de datos están destinados en su mayor parte a una rama de negocio aislada. Están diseñados para los departamentos individuales.
Por ejemplo, Solía trabajar para una compañía proveedora de seguros de salud que tenía diferentes departamentos, como Finanzas, Informes, Ventas, etc.
Teníamos un almacén de datos que contenía la información perteneciente a todos estos departamentos y luego tenemos algunos mercados de datos construidos sobre este almacén de datos. Estos DataMart eran específicos de cada departamento. En palabras simples, puede decir que un DataMart es un subconjunto de un almacén de datos.
P # 13) ¿Cuáles son los diferentes tipos de medidas?
Responder: Tenemos tres tipos de medidas, a saber
- Medidas no aditivas
- Medidas semi-aditivas
- Medidas aditivas
Las medidas no aditivas son aquellas sobre las que no se puede aplicar ninguna función de agregación. Por ejemplo, una proporción o una columna de porcentaje; una bandera o una columna de indicador presente de hecho en una tabla que contiene valores como Y / N, etc. es una medida no aditiva.
Las medidas semi-aditivas son aquellas sobre las cuales se pueden aplicar algunas (pero no todas) las funciones de agregación. Por ejemplo, tasa de tarifa o saldo de la cuenta.
Las medidas aditivas son aquellas sobre las que se pueden aplicar todas las funciones de agregación. Por ejemplo, unidades compradas.
P # 14) ¿Qué es una clave sustituta? ¿En qué se diferencia de una clave principal?
preguntas y respuestas de la entrevista del técnico de soporte de escritorio
Responder: La clave sustituta es un identificador único o una clave de número de secuencia generada por el sistema que puede actuar como clave principal. Puede ser una columna o una combinación de columnas. A diferencia de una clave principal, no se obtiene de los campos de datos de la aplicación existente.
P # 15) ¿Es cierto que todas las bases de datos deben estar en 3NF?
Responder: No es obligatorio que una base de datos esté en 3NF. sin embargo , si su propósito es el fácil mantenimiento de los datos, menos redundancia y acceso eficiente, entonces debería optar por una base de datos desnormalizada.
P # 16) ¿Alguna vez te has encontrado con el escenario de relaciones recursivas? Si es así, ¿cómo lo manejaste?
Responder: Una relación recursiva ocurre en el caso de que una entidad esté relacionada consigo misma. Sí, me he encontrado con ese escenario.
Hablando del dominio de la atención médica, existe la posibilidad de que un proveedor de atención médica (digamos, un médico) sea un paciente de cualquier otro proveedor de atención médica. Porque , si el propio médico se enferma y necesita cirugía, tendrá que visitar a otro médico para recibir el tratamiento quirúrgico.
Asi que , en este caso, la entidad - prestador de servicios de salud está relacionada consigo misma. Una clave externa para el número del proveedor de seguro médico deberá estar presente en el registro de cada miembro (paciente).
P # 17) ¿Enumere algunos errores comunes encontrados durante el modelado de datos?
Responder: Algunos errores comunes encontrados durante el modelado de datos son:
- Construyendo modelos de datos masivos : Los modelos de datos grandes tienen más fallas de diseño. Intente restringir su modelo de datos a no más de 200 tablas.
- Falta de propósito : Si no sabe para qué está destinada su solución empresarial, es posible que se le ocurra un modelo de datos incorrecto. Por lo tanto, tener claridad sobre el propósito comercial es muy importante para crear el modelo de datos correcto.
- Uso inadecuado de claves sustitutas : La clave sustituta no debe usarse innecesariamente. Utilice la clave sustituta solo cuando la clave natural no pueda cumplir el propósito de una clave principal.
- Desnormalización innecesaria : No desnormalice hasta que tenga una razón comercial sólida y clara para hacerlo, ya que la desnormalización crea datos redundantes que son difíciles de mantener.
P # 18) ¿Cuál es la cantidad de tablas secundarias que se pueden crear a partir de una tabla principal única?
Responder: La cantidad de tablas secundarias que se pueden crear a partir de la tabla principal única es igual a la cantidad de campos / columnas en la tabla principal que no son claves.
P # 19) Los detalles de salud del empleado están ocultos a su empleador por el proveedor de atención médica. ¿Qué nivel de ocultación de datos es este? ¿Conceptual, físico o externo?
Responder: Este es el escenario de un nivel externo de ocultación de datos.
P # 20) ¿Cuál es la forma de la tabla de hechos y la tabla de dimensiones?
Responder: Generalmente, la tabla de hechos está en forma normalizada y la tabla de dimensiones está en forma desnormalizada.
P # 21) ¿Qué detalles necesitaría para crear un modelo conceptual en un proyecto de dominio de atención médica?
Responder: Para un proyecto de atención médica, los detalles a continuación serían suficientes como requisito para diseñar un modelo conceptual básico
- Diferentes categorías de planes y productos de atención médica.
- Tipo de suscripción (grupal o individual).
- Conjunto de proveedores de atención médica.
- Descripción general del proceso de reclamación y facturación.
P # 22) Tricky one: Si se aplica una restricción única a una columna, ¿arrojará un error si intenta insertar dos nulos en ella?
Responder: No, no arrojará ningún error en este caso porque un valor nulo no es igual a otro valor nulo. Por lo tanto, se insertará más de un nulo en la columna sin ningún error.
P # 23) ¿Puede citar un ejemplo de entidad de subtipo y supertipo?
Responder: Sí, digamos que tenemos estas diferentes entidades: vehículo, automóvil, bicicleta, automóvil económico, automóvil familiar, automóvil deportivo.
Aquí, un vehículo es una entidad de súper tipo. El automóvil y la bicicleta son sus entidades de subtipo. Además, los autos económicos, deportivos y familiares son entidades de subtipo de su entidad de súper tipo: el automóvil.
Una entidad de supertipo es la que está en un nivel superior. Las entidades de subtipo son aquellas que se agrupan en función de determinadas características. Por ejemplo, todas las bicicletas son de dos ruedas y todos los automóviles son de cuatro ruedas. Y dado que ambos son vehículos, su entidad de supertipo es 'vehículo'.
P # 24) ¿Cuál es el significado de los metadatos?
Responder: Los metadatos son datos sobre datos. Le dice qué tipo de datos se almacenan realmente en el sistema, cuál es su propósito y para quién están destinados.
Conclusión
- Comprensión práctica de la Modelado de datos El concepto y cómo encaja en las asignaciones realizadas por usted es muy necesario para descifrar una entrevista de modelado de datos.
- Los temas más frecuentes en Modelado de datos entrevista son: diferentes tipos de modelos de datos, tipos de esquemas, tipos de dimensiones y normalización.
- Esté bien preparado también para las preguntas basadas en escenarios.
Sugeriría que siempre que responda una pregunta al entrevistador, es mejor que explique la idea con un ejemplo. Esto demostraría que realmente ha trabajado en esa área y comprende muy bien el núcleo del concepto.
¡¡Todo lo mejor!!