B3-T2_Modelo LÓGICO Relacional Flashcards

1
Q

Esquematiza el proceso de creación de BBDD:

A

1º Modelo CONCEPTUAL E/R (estructural) o DFD (funcional) => independiente de todo.

2º Modelo LÓGICO (dependiente del tipo de BD: relacional, en Red y Jerárquico) => tienen sus propias reglas de TRANSFORMACIÓN.

3º Modelo FÍSICO (dependiente del SGBD: Oracle, MySQL, MongoDB, …) => esto se programa con un lenguaje de BD (con las sentencias DDL de SQL u otro lenguaje).

*Un modelo lógico de datos es un modelo que no es específico de una base de datos que describe aspectos relacionados con las necesidades de una organización para recopilar datos y las relaciones entre estos aspectos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿Cuáles son los Modelos LÓGICOS de BBDD?

A

*Relacional (SQL)
*Modelo en Red
*Jerárquico
*Orientado a Objetos
*Documental
*NO-Relacional (NoSQL)

NOTA: el RELACIONAL es el + usado y utiliza SQL, aunque esta siendo superado por el NO-Relacional (NoSQL)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿En qué se diferencian el Modelo RELACIONAL del de NO-Relacional?

A

En las bases de datos RELACIONALES la información se organiza de forma estructurada en tablas relacionadas entre sí. Además de SQL, utiliza: MariaDB, MySQL, Oracle, …

Las NO-Relacionales almacena los datos en documentos, por tanto son más flexibles. Al no estar los datos estructurados, permite almacenar y recuperar datos en formatos que no sean tablas, ej: CLAVE/VALOR.
Estos sistemas se conocen como NoSQL (MongoDB, Cassandra, BigTable o Hadoop).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Qué objetivo tiene la arquitectura ANSI/SPARC?

A

También denominada arquitectura de 3 esquemas, y tiene como objetivo separar las BBDD de las aplicaciones de usuario => busca independencia entre el nivel físico y el lógico..

Esta separación en 3 niveles permite al usuario visualizar los niveles de un sistema de BD:

*Nivel EXTERNO (de los usuarios): vistas

*Nivel CONCEPTUAL (del sistema): tablas/relaciones

*Nivel INTERNO (almacenamiento interno para diseñar la BD): detalles de almacén e índices.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

¿Qué garantiza el estándar ODBC (Open DataBase Connectivity)?

A

Es un estándar de acceso a las bases de datos.

El objetivo de ODBC es hacer posible el acceder a cualquier dato desde cualquier aplicación, sin importar qué sistema de gestión de bases de datos (DBMS) almacene los datos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

¿En qué consiste la arquitectura de 3 o n capas?

A

En añadir una CAPA INTERMEDIA entre la capa del cliente y la del servidor del SGBD.

Esta capa, llamada “Servidor Web” o “Servidor de Aplicaciones”, gestiona las solicitudes o peticiones del cliente (REQUEST) y las respuestas del servidor (RESPONSIVE).

Este sistema esta abierto a futuras divisiones de las capas existentes, y cualquiera podra ejecutarse en plataformas o sistemas independientes.

Ej: ERP o CRM (estas plataformas de gestión empresarial son ejemplos de esta arquitectura).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Expón utilidades del SGBD:

A

*CARGA DE DATOS: carga y conversión de datos.

*COPIA DE SEGURIDAD: completo, diferencial e incremental (desactiva bit de modificado).

*HERRAMIENTAS PARA LOS DISEÑADORES: CASE (para reducir costo de tiempo y dinero) y Diccionarios de Datos (aumentan los detalles del catálogo).

*ENTORNOS DE DESARROLLO: Eclipse, VS, …

*DB/DC: SW para garantizar la conectividad de usuarios con el SGBD.

*OTROS: Reorganización del almacenamiento o la Monitorización del rendimiento.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Nombre algunos SGBD libres y comerciales:

A

*LIBRES: MySQL y PostgreSQL, son los + conocidos.

*COMERCIALES: Oracle o Microsoft SQL Server, x ejemplo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Clasifica los SGBD según el modelo de datos en que esté basado:

A

*Modelo de datos RELACIONAL: presenta la BD como una colección de TABLAS, cada una puede guardarse como un archivo separado (SQL, MySQL, MariaDB, Oracle, …).

*Modelo de datos de OBJETOS: define la BD como objetos (propiedades y operaciones), organizados en clases jerárquicamente.

*Modelo de datos JERÁRQUICO: ahora se llama HEREDADO, pues representa los datos en forma de una jerarquía de árboles.

*Modelo de datos en RED: representa los datos como tipos de registros.

*Modelo de datos NO RELACIONAL o NoSQL: se ha convertido en tendencia por si gran capacidad de escalado (MongoDB, Cassandra, BigTable, Hadoop, …)

*Modelo de datos XML: para el intercambio de datos a través de internet. El uso de etiquetas permite su anidamiento en estructuras jerárquicas en árbol.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

¿Qué es un DBA?

A

DataBase Administrator o Administrador de Base de datos.

Se encarga de gestionar las cuentas, privilegios, seguridad, monitorización, recursos HW y SW …

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

¿En qué se diferencian el Modelo E/R y el Modelo RELACIONAL?

A

En el RELACIONAL sólo hay relaciones, NO hay ni Entidades ni Tipos de Entidad => su objeto principal es la RELACIÓN.

En cambio, en el E/R (Entidad/Relación), si hay Entidad y Tipo de Entidad, además de Relaciones.

EJEMPLO:
E/R:
-Tipo de Entidad: LIBRO
-Atributos: ISBN, Título, …

RELACIONAL:
-LIBRO (ISBN, Título, …) => Esquema o Intensión

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

¿Cómo se llama al conjunto de RELACIÓN (con sus atributos)?

A

Esquema o Intensión

-LIBRO (ISBN, Título, …) => Esquema o Intensión

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

¿Qué son los dominios de valores de los atributos?

A

El Dominio de Valores es el conjunto de valores posible que puede asumir CADA atributo (cada atributo tiene uno).

Permite limitar el tamaño del atributo.

El mismo dominio puede definirse en diferentes atributos.

Cada atributo de una relación se caracteriza por un nombre y por un dominio.

El dominio indica qué valores pueden ser asumidos por una columna de la relación.

Un dominio describe un conjunto de posibles valores para cierto atributo.

Distintos tipos de dominios son: enteros, cadenas de texto, fecha, sin procedimientos, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

¿Qué es el GRADO de la Relación en el Modelo RELACIONAL?

A

El número de atributos de la relación:

LIBRO (ISBN, Título, Fecha publicación) => GRADO 3

NOTA: en el Modelo E/R, el grado es el número de Tipos de Entidades que relaciona o enlaza la relación (la relación se representaba en u rombo).
CLIENTE —->Relación<——-COMPRAS => Grado 2

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

¿Qué es la CARDINALIDAD (Extensión) de la Relación en el Modelo RELACIONAL?

A

El número de tuplas o registros:

LIBRO (ISBN, Título, Fecha publicación) =>

TUPLAS:
(12342, El Elfo Oscuro, 24/06/2003)
(98767, El Nombre del Viento, 10/12/2002)

=> GRADO 3 (nº atributos) y CARDINALIDAD 2 (nº tuplas)

NOTA: en el modelo E/R la cardinalidad representa el número máximo y mínimo de las ocurrencias entre una ENTIDAD y otra.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Realiza una comparación de la terminología o conceptos en el mundo de las BBDD:

A

RELACIONAL —- TABLA —- FICHERO:

*tupla —- fila —- registro
*atributo —- columna —- campo
*grados —- nº columnas —- nº campos
*cardinalidad —- nº filas —- nº registros

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

¿En qué se transforma un Tipo de Entidad del Modelo E/R en el Modelo RELACIONAL?

A

En una RELACIÓN.

CLIENTE —->Relación<——-COMPRAS => estos Tipos de Entidad del E/R se transforman en RELACIONES en el Modelo RELACIONAL.

NOTA RECORDATORIA: la relación se representaba dentro de un rombo y los tipos de entidad, dentro de un cuadrado.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Explica el paso de Clave PRIMARIA a Clave AJENA en la “Relación 1 a N:

A

Es Relación 1,N, cuando, en el caso, x ejemplo, de un autor que puede escribir n libros o un cliente comprar n PCs.

Entonces usaremos el sistema de “Propagación de Claves” cuando necesitemos usar la clave primaria (primary key) de la tupla de una relación, en la tupla de otra relación, pasando a llamarse “Clave Ajena”.

Ponemos el ejemplo de la foto adjuntada, donde para identificar el autor de cada libro, añadimos otro atributo a la relación “Libro”, que rellenaremos con la clave primaria (DNI) de la relación “Autor” => una vez la tengamos en esta última relación, pasará a llamarse CLAVE AJENA (x ser la clave de otra relación, aunque ahora no la usemos como clave literalmente)

*Esto se conoce como: Propagación de clave del lado del 1 (Autor) al lado de n (Libro) => con este sistema pasamos de relación 1 a N (E/R) a Relacional.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Diferencia entre la relación 1 a N y la M a N:

A

En las Relaciones M a N, no se puede usar la “Propagación de Clave”, se tiene que hacer una relación NUEVA, donde la clave es compuesta (abarca más de un campo), porque es una relación muchos a muchos.

En el ejemplo de la foto, mostramos una transformación de M, N (E/R) a Relacional.
Vemos la nueva relación: Trabaja, y la clave compuesta de cada tupla seria:
(10, 77) => 1ª tupla
(10, 88) => 2ª tupla
*Indicamos que el empleado Dani trabaja en ambos departamentos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

¿Qué diferencia hay entre las relaciones M a N y las N-arias?

A

El sistema es el mismo, pero en las N-arias, en lugar de coger 2 claves, coge más claves.

*Ambos relaciones E/R (M, N y N-arias), por medio de dicho movimiento de claves, se transforman en en sistema RELACIONAL.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Expón Reglas de TRANSFORMACIÓN del modelo E/R al Relacional:

A
  1. Lo 1º ha tener muy claro es que el Tipo de Entidad (del E/R) se transforma en una Relación (del Relacional).
  2. Las Relaciones 1 a N (E/R), se transforman a Relacional, por medio de la “Propagación de Clave”: pasando la clave PRIMARIA a otra relación, llamándose ahora “Clave AJENA”.
  3. La transformación del M a N (E/R) a Relacional, no se puede usar la “Propagación de Clave”, se tiene que hacer una relación NUEVA, donde la clave es compuesta (abarca más de un campo), porque es una relación muchos a muchos.
  4. Las Relaciones N-arias (E/R), se transforman a Relacional, igual que el M a N, pero en ugar de coger 2 claves, coge más claves.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Expón algunas CARACTERÍSTICAS del modelo RELACIONAL:

A

*Los valores de los atributos (columnas) tienen que ser atómicos (únicos). Aquí no existe el MultiValor, como en E/R (se representaba en un doble circulo).

*NO repetición de tuplas =>cada tupla tiene que tener su clave PRIMARIA, que es un atributo o conjunto de atributos que identifiquen a la tupla.

*NO hay orden ni en las TUPLAS (filas) ni en los ATRIBUTOS (columnas)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Expón algunas RESTRICCIONES del modelo Relacional:

A

*Se usa el “valor nulo” como “ausencia de valor”.

*INTEGRIDAD DE ENTIDAD: ninguna clave primaria (PK) puede ser nula y ningún atributo de la PK compuesta puede tomar valor nulo.

*INTEGRIDAD REFERENCIAL: si en una Relación existe una Clave AJENA, sus valores deben coincidir con valores de la clave primaria referenciada o ser NULOS.

NOTA: sólo se puede poner valores NULOS en claves AJENAS, por ejemplo, cuando no tengamos el autor del libro “El Ocho” en la relación de la clave primaria o referencial, porque no lo hubiera escrito ni Pepe ni Luis.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

¿Cuáles son las 12 Reglas de Codd (en realidad 13, porque van del 0 al 12) que debe cumplir cualquier SGBD para poderse considerar RELACIONAL?

A

Regla 0: Regla FUNDAMENTAL.
Todo sistema ha de poder gestionar las bases de datos exclusivamente con sus capacidades relacionales.

Regla 1: Regla DE LA INFORMACIÓN.
La información se representa con valores en tablas.

Regla 2: Regla DEL ACCESO GARANTIZADO.
Todos los datos son accesibles mediante una combinación de nombre de tabla, valor de clave primaria y nombre de columna => SIN AMBIGÜEDAD => requisito fundamental PK.

Regla 3: Regla DEL TRATAMIENTO SISTEMÁTICO DE VALORES NULOS.
Admiten los valores nulos.

Regla 4: CATÁLOGO DINÁMICO EN LINEA BASADO EN EL MODELO RELACIONAL. El sistema debe soportar un catálogo en línea, (catálogo relacional), que da acceso a la estructura de la BD y que debe ser accesible a los usuarios autorizados.

Regla 5: Regla DEL SUBLENGUAJE DE DATOS COMPLETO.
Un sistema relacional debe permitir varios lenguajes. Pero debe haber al menos un lenguaje cuyas declaraciones se puedan expresar, mediante una sintaxis bien definida, como cadenas de caracteres y que respalde de forma integral los siguientes aspectos:

Definición de datos
Definición de vistas
Manipulación de datos (interactiva y por programa)
Restricciones de integridad
Límites de transacción (begin, commit y rollback).

Regla 6: Regla DE LA ACTUALIZACIÓN DE VISTAS. Todas las vistas que son teóricamente actualizables son también actualizables por el sistema.

Regla 7: INSERCIÓN, ACTUALIZACIÓN Y BORRADO DE ALTO NIVEL => sobre conjuntos de tuplas.

Regla 8: INDEPENDENCIA FÍSICA DE LOS DATOS. Las aplicaciones permanecerán inalteradas cuando se realizan cambios en las representaciones de almacenamiento.

Regla 9: INDEPENDENCIA LÓGICA DE LOS DATOS. Las aplicaciones permanecerán inalteradas cuando se realizan cambios en las tablas.

Regla 10: INDEPENDENCIA DE LA INTEGRIDAD.
Debe ser posible cambiar esas restricciones sin afectar innecesariamente a las aplicaciones existentes.

Regla 11: INDEPENDENCIA DE LA DISTRIBUCIÓN.
Los usuarios deben tener siempre la impresión de que los datos se encuentran en un solo lugar.

Regla 12: La regla DE LA NO SUBVERSIÓN.
Si un sistema relacional tiene un lenguaje de bajo nivel (un registro cada vez), ese nivel bajo no puede utilizarse para subvertir o eludir las reglas y restricciones de integridad expresadas en el lenguaje relacional de alto nivel (varios registros cada vez).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

¿Qué se conoce por “clave”?

A

Una clave es un atributo o conjunto de atributos (clave compuesta), que identifican inequívocamente a una tupla.

EJEMPLO: en el ejemplo de la foto podemos apreciar que la clave es DNI, porque no habrán 2 iguales.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Diferencia entre clave CANDIDATA, ALTERNATIVA y PRIMARIA:

A

*Clave CANDIDATA: son todas las posibles claves que podemos elegir.

*Clave PRIMARIA (PK): es la clave que ELIGES => PORQUE SÓLO SE PUEDE TENER UNA CLAVE.

*Clave ALTERNATIVA: son las claves que NO eliges.

EJEMPLO: en el ejemplo de la foto podemos ver que las 2 posibles claves son DNI y nº de la Seguridad Social, porque son las únicas que no se pueden repetir.
Entonces las 2 son las claves “candidatas”,
la”primary key” es DNI (la que elegimos) y
la clave “alternativa” es NSS.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

¿Qué es una SuperKey?

A

En el Modelo Relacional, una SuperClave (SuperKey) es cualquier COMBINACIÓN de atributos que identifiquen de manera inequívoca a una tupla de una relación. A diferencia de la PK, que sólo puede ser 1.

*SÓLO sirve para hacer ANÁLISIS.

EJEMPLO (foto): en el ejemplo vemos que {DNI, colorOjos} puede identificar a una tupla, al igual que el resto de combinaciones del ejemplo, excepto {colorojos, fechanacimiento}, que NO identificaría de manera inequívoca a una tupla.

*Las Claves CANDIDATAS (mínimas o irreducibles) son:
{DNI}
{NSS}

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

¿En qué se diferencian Superkey de Clave Candidata?

A

La SK comprende todos los atributos para identificar a la tupla, sean o no dispensables (todas las claves), y la CANDIDATA sólo contiene los atributos indispensables.

Es decir, la CANDIDATA es una “mínima” Superkey => NO puede ser reducida a una versión más simple eliminando atributos y la superkey SI.

EJEMPLOS (foto): todas son SK, excepto las que NO se pueden reducir:
{DNI}
{NSS}

29
Q

¿Qué función tiene la NORMALIZACIÓN?

A

Estudia como hemos definido nuestras relaciones para mejorarlas, separando (llevando a otra relación) la REDUNDANCIA (repetición de la misma información) => para agilizar cualquier modificación.

EJEMPLO: si se actualiza el CP de cierta parte de Madrid, lo actualizaríamos en esa relación (tabla) adicional a donde nos hemos llevado las Redundancias o repeticiones de información, de manera unisona y mas rápida.

30
Q

Pon un ejemplo de NORMALIZACIÓN:

A

EJEMPLO DE ELIMINAR REDUNDANCIA => la podemos reducir buscando dichas DEPENDENCIAS FUNCIONALES entre atributos.
Por ejemplo (foto), si en varios campos de diferentes tuplas tenemos el mismo código postal (28040) y/o ciudad (Madrid) => dependen uno de otro.
Estos campos se unificarían creando otra tabla o relación (Localización) para introducir esas redundancias en sus filas.
Es decir, pasamos de 1 relación a 2 relaciones para separar esas redundancias.

31
Q

Define DEPENDENCIA FUNCIONAL:

A

Se busca para NORMALIZARLAS y se representa: x —-> y

NOTA: EL ATRIBUTO QUE SEA CLAVE PRIMARIA SIEMPRE DETERMINA AL RESTO.

Una Dependencia Funcional entre 2 atributos (x e y) o grupos de atributos, se da SÓLO si a todo valor de “x” le corresponde un único valor de “y” (x —-> y), es decir, si para cada valor de “x” siempre tenemos el mismo valor en “y”.

En el EJEMPLO de la foto, buscamos que valores determinan a que valores (que valor de un atributo (columna) es siempre = en otra columna y vemos que el atributo “a” DETERMINA a “c” (el valor de “a” siempre es el mismo en “c”).
**La PK (f) siempre va a determinar funcionalmente al resto de los atributos, PORQUE COMO SÓLO HAY 1 POR TUPLA, CADA PK SIEMPRE TENDRÁ LOS MISMOS ATRIBUTOS ASOCIADOS => es decir, cada vez que aparezca la pk 1 aparecerán los atributos: 1, xx, 3, 4.
Para la PK 2 => 1, yy,3, a
y la PK 3 siempre tendrá => 1, xx, 3, b.

En los casos en que la Dependencia Funcional se diera entre atributos normales o no principales (dependencia Transitiva), habría que NORMALIZAR, para luego poder actualizar de manera más rápida al unísono.

32
Q

¿Cuál es la diferencia entre Dependencia Funcional Completa y la NO Completa en una clave Compuesta?

A

En la completa, todos los atributos que forman la clave determinan a un atributo concreto. Y, en la NO Completa, no todos los atributos de la clave determinan a un atributo concreto, determinan a diferentes atributos.

EJEMPLO:
Relación (a, b, c, d, e) siendo PK (a, b, c)
*COMPLETA: cuando (a, b, c) determinan a “d”
*NO Completa: sólo “c” determina a “e”.

NOTA: que “determine” quiere decir que siempre para los atributos (a, b, c) siempre va a tener el mismo valor “d”, que no va a tener varios iguales.

33
Q

¿Qué es la Dependencia MULTIVALUADA?

A

Se representa: x –>–> y

Para cada valor de “x” siempre tengo un CONJUNTO de valores en “y” (siempre los mismos). Es decir, en lugar de determinar de 1 a 1 (dependencia funcional), es de 1 a n => de uno a un conjunto.

EJEMPLO:
asignatura –>–> profesor
matemáticas —> Pepe y Juan

*Quiere decir que la asignatura matemáticas, siempre tendrá los 2 mismos profesores.

34
Q

¿Cuándo estará una tabla (relación) 1ª Forma Normal (1FN)?

A

Una tabla estará 1FN si no contiene grupos repetitivos, es decir, cada atributo de una tupla tiene a lo sumo un valor => que cada valor sea atómico o único.

No puedes meter 7 teléfonos, no puedes meter una dirección con la dirección, el CP y la localidad, … SÓLO SE PUEDE 1 ÚNICO VALOR x ATRIBUTO (valor atómico).

35
Q

¿Cuándo estará una tabla (relación) 2ª Forma Normal (2FN)?

A

Si esta en 1FN y todos los atributos NO principales tienen dependencia funcional completa de la PK.

Es decir, si no hay dependencias funcionales NO Completas.

**TRUCO: Si la PK es simple (1 sólo atributo), como mínimo, siempre será la relación 2FN, porque NUNCA podrán haber dependencias funcionales NO completas, ya que esa única clave primaria, siempre coincidirá con el resto de atributos.

36
Q

¿Cuándo estará una tabla (relación) 3ª Forma Normal (3FN)?

A

Si está en 2FN y no hay DEPENDENCIAS TRANSITIVAS, es decir, NO pueden haber dependencias que NO sean de la PK (si depende también de otro atributo no principal => no sera 3FN).

DEPENDENCIAS TRANSITIVAS: cuando la PK determina a un atributo no principal y este, a su vez, determina a otro atributo no principal.
Ejemplo en foto.

37
Q

¿Cuándo estará una tabla (relación) Forma Normal BOYCE-CODD (FNBC)?

A

Si esta en 3FN y los únicos “determinantes” son claves candidatas (todas las claves), es decir, todo lo que no sea clave NO puede determinar a ningún otro atributo.

Es decir, todo lo que no cumpla esta filosofía se va a otra relación (tabla) => así evitamos redundancias, que es el principio de la Normalización.

NOTA: es lo mismo que la 3FN, pero este también incluye los casos en que un atributo no principal determine a una clave, aunque también acoge el caso de 3FN de NO determinantes entre atributos no principales.

Adjunto foto con ambos casos (arriba: 3FN y debajo: FNBC).

38
Q

¿Qué 2 cosas (una buena y una mala) conseguimos con la NORMALIZACIÓN?

A

Después de NORMALIZAR, la información queda + DISTRIBUIDA y conseguimos:
-Una menor redundancia, que facilitaría a la hora de actualizar/modificar, pues de una vez actualizas varios.
-PEOR rendimiento de CONSULTAS al tener que buscar en varias tablas, lo cual conlleva a un mayor uso de “joins”.

Se normaliza cuando en una misma tabla varios atributos no principales determinan a otros atributos no principales => se divide dicha tabla en otras y rompemos dicha determinación

39
Q

Diferencia entre atributo clave y atributo no principal:

A

El atributo clave es la/s clave/s ya sea Primaria (PK), Candidata (todas) o Alternativa (las que no eliges). Y el atributo no principal, es todo aquel que NO es clave.

En los casos en los que la Dependencia Funcional se diera entre atributos no principales, habría que NORMALIZAR, para luego poder actualizar de manera más rápida al unísono.

NOTA: EL ATRIBUTO QUE SEA CLAVE PRIMARIA SIEMPRE DETERMINA AL RESTO, es decir, cada PK sólo tendrá un valor de cada atributo de su fila, ya que los campos (columnas) son diferentes.

40
Q

¿Qué pasa si el atributo determinante es la clave primaria?

A

No sólo no es malo, sino que es inherente o normal.
Pero si el atributo determinante es un atributo no principal es cuando tenemos el problema de la redundancia a corregir.

41
Q

¿Cuándo estará una tabla (relación) 4ª Forma Normal (4FN)?

A

Sólo estarás en 4FN si, o bien NO hay Dependencias MULTIVALUADAS o sólo hay una Dependencia Multivaluada NO trivial implicada por la clave CANDIDATA

NOTA: Dependencias MULTIVALUADAS (Ej- Matemáticas -> Pepe y Juan) => producen una repetición de información muy grande.

*La finalidad de esta Normalización es romper la multivaluada dividiéndola en 2 relaciones, como se aprecia en la foto adjuntada.

42
Q

¿Cuándo estará una tabla (relación) 5ª Forma Normal (5FN)?

A

Estas en 5FN si puedes hacer “Proyección-Unión” en la tabla (dividir los atributos en grupos con sus respectivas claves candidatas), es decir, si toda dependencia de combinación esta implicada por claves candidatas.

A diferencia de las anteriores, las 5FN, además de con las relaciones (tablas), tiene que ver con los datos.

*PROYECCIÓN UNIÓN: corta los atributos en trozos con su clave candidata, es decir, si tengo 6 atributos, lo separo en 3 grupos de 2 con su candidata => sería dividir por columnas, ya que los atributos son los nombres de las columnas o campos.

43
Q

¿Cuándo estará una tabla (relación) 6ª Forma Normal (6FN)?

A

Cuando tenemos una clave primaria (PK) y como mucho otro atributo más => esta tan distribuida la Relación que vas a tener relaciones muy pequeñas (PK+atributo).

44
Q

Define las 4 primeras Formas de Normalización:

A

*1FN: UNA TABLA ESTARÁ EN 1FN SI NO CONTIENE GRUPOS REPETITIVOS, ES DECIR, CADA ATRIBUTO DE UNA TUPLA TIENE COMO MUCHO UN VALOR (sólo tiene 1 valor x atributo => atómico).

*2FN: SI ESTA EN 1FN Y TODOS LOS ATRIBUTOS NO PRINCIPALES TIENEN DEPENDENCIA FUNCIONAL COMPLETA DE LA CLAVE PRINCIPAL (si todos los atributos tienen la misma clave o claves).

*3FN: SI ESTA EN 2FN Y NO HAY DEPENDENCIAS TRANSITIVAS, ES DECIR, SI CADA ATRIBUTO NO PRINCIPAL DEPENDE SÓLO DE LA CLAVE (NO DE OTRO ATRIBUTO NO PRINCIPAL).

*FNBC: SI ESTA EN 3FN Y SI LOS ÚNICOS DETERMINANTES SON CLAVES CANDIDATAS (NO PUEDE SER DETERMINANTE UN ATRIBUTO NO PRINCIPAL).si esta en 3FN y SI LOS ÚNICOS DETERMINANTES SON CLAVES CANDIDATAS (igual que el anterior, pero, además de no haber dependencias transitivas entre atributos no principales, tampoco puede haberlas entre atributo y clave candidata).

NOTA1: todo lo que no cumpla las normas de cada caso se va a otra relación (tabla) => así evitamos redundancias, que es el principio de la Normalización.

NOTA2: hasta FNBC son acumulativas, es decir, no estarías en tal si no estuvieras primero en la anterior.

NOTA3: 2FN, 3FN y FNBC: se basan en estudiar las dependencias funcionales que hay entre atributos.

45
Q

Define las 3 últimas Formas de Normalización:

A

*4FN: SI TODA DEPENDENCIA MULTIVALUADA NO TRIVIAL ESTA IMPLICADA POR UNA CLAVE CANDIDATA => no permite dependencias MULTIVALUADAS (cada valor de un atributo o columna le corresponde un conjunto de valores de otro) , las divide para separar los valores de los atributos.

*5FN: SI TODA DEPENDENCIA DE COMBINACIÓN ESTA IMPLICADA POR CLAVES CANDIDATAS, es decir, puedes hacer “Proyección-Unión” en la tabla (dividir los atributos en grupos con sus respectivas claves candidatas).

*6FN: CUANDO TENEMOS UNA CLAVE PRIMARIA Y COMO MUCHO UN ATRIBUTO MÁS.

NOTA1: 4FN y 5FN: estudian dependencia multivaluada y de proyección unión, respectivamente.

NOTA2: todo lo que no cumpla las normas de cada caso se va a otra relación (tabla) => así evitamos redundancias, que es el principio de la Normalización.

46
Q

Expón algunos operadores BÁSICOS del Álgebra Relacional PROCEDIMENTAL:

A

*SELECCIÓN: para filtrar tuplas (SELECT).
Op (ColorDeOjos = verdes)

*PROYECCIÓN: para extraer atributos => especificas que atributos (columnas) te quieres quedar de tal Relación.

*PRODUCTO CARTESIANO: todos por todos => como resultado queda una Relación con TODAS las tuplas de 2 Relaciones (tablas).

*UNIÓN: es una unión de tuplas en vertical => arriba tengo las tuplas (filas) de una Relación y debajo las de otra.

*DIFERENCIA: tuplas de R que no estan en S => R - S

47
Q

Expón algunos operadores DERIVADOS del Álgebra Relacional PROCEDIMENTAL:

A

Los operadores DERIVADOS se construyen a base de operadores BÁSICOS.

*INTERSECCIÓN: los que estén en las 2 Relaciones.

*UNIÓN NATURAL: es un operador que es la proyección de una selección previa del producto cartesiano.

*DIVISIÓN

48
Q

Comenta los 2 sistemas de cálculo relacional DECLARATIVO:

A

a) Cálculo Relacional basado en TUPLAS. Ejemplo de una SELECT:
1. SELECCIÓN: Libro(t) => quiere decir que la tupla “t”, pertenece a la Relación “Libro”.
2. FILTRADO: t.ISBN =”…” => filtramos un cierto valor “…” de del atributo ISBN de la tupla “t” (Libro)
*SELECT COMPLETA: Libro(t)^t.ISBN =”…”

b) Cálculo Relacional basado en DOMINIOS: trabaja con grupos de atributos.

*Describen lo mismo que el Álgebra Relacional PROCEDIMENTAL, pero de una manera más DECLARATIVA, NO tan imperativa o procedural.

49
Q

¿Qué tres niveles define la arquitectura ANSI/SPARC (para un DBMS=Sistema de gestión de bases de datos:MySql, Oracle, MariaDB, …)?

A
  • Nivel Externo
  • Nivel Conceptual
  • Nivel Interno
50
Q

¿Qué tres fases se siguen a la hora de diseñar una BBDD?

A
  • Modelo conceptual (E/R o DFD)
  • Modelo lógico (Ej: relacional)
  • Modelo físico (en una BBDD concreta)
51
Q

¿Qué tipos de modelos lógicos conoce?

A

*Relacional (SQL)
*Modelo en Red
*Jerárquico
*Orientado a Objetos
*Documental
*NO-Relacional (NoSQL)

52
Q

En el modelo relacional, ¿que técnica se aplica cuando vienes de una relación 1 a N del modelo E/R?

A

Propagación de clave (del lado del 1 a lado del N): cuando necesitemos usar la clave primaria (primary key) de la tupla de una relación, en la tupla de otra relación, pasando a llamarse “Clave Ajena”.
EJEMPLO: cuando tengamos en un tupla un libro escrito por un autor de la tupla “Autores” => tendremos que usar la PK del autor para identificar al libro.

53
Q

¿Qué transformación tiene una relación M a N del modelo E/R al modelo relacional?

A

Una relación especifica nueva para ello => se tiene que hacer una relación NUEVA, donde la clave es compuesta (abarca más de un campo), porque es una relación muchos a muchos.

EJEMPLO:
(10, 77) => 1ª tupla
(10, 88) => 2ª tupla
*Indicamos que el empleado Dani trabaja en ambos departamentos.

54
Q

¿Qué es el grado de una relación en el modelo RELACIONAL?

A

El número de atributos.

NOTA: la Cardinalidad es el número de tuplas.

55
Q

¿Qué representa la cardinalidad en el modelo relacional?

A

Número o conjunto de las tuplas o filas (alias extensión)

56
Q

¿Qué se le conoce como INTENSIÓN en el modelo relacional?

A

Al esquema de la relación.

57
Q

¿Cuál de estas características del modelo relacional es falsa?
* Atomicidad de los valores de los atributos
* No repetición de tuplas
* No orden en tuplas
* No orden en los atributos

A

Todas son verdaderas.

58
Q

¿Qué es la integridad de entidad en el modelo relacional ?

A

Ningún atributo de la PK puede tomar valores nulos.

59
Q

¿Qué diferencia hay entre una super-clave y una clave candidata?

A

Una clave candidata ya es un conjunto irreducible de atributos y la super clave no (alguna clave es dispensable: Ej. ColorOjos).

60
Q

¿Que persigue la normalización?

A

Reducir la redundancia para eliminar fallos de actualización y costes de almacenamiento.

61
Q

¿Qué significa que entre el atributo X y el atributo Y haya una dependencia funcional?

A

Que para cada valor de X siempre se da el mismo valor de Y.

62
Q

¿Qué significa que entre el atributo X y el atributo Y haya una dependencia multivaluada?

A

Que siempre que se da un valor en X se dan los mismo valores en Y.

63
Q

¿Con que forma normal tienen que ver las dependencias multivaluadas?

A

Con la 4FN

64
Q

¿Con que forma normal tienen que ver las dependencias de combinación?

A

Con la 5FN

65
Q

¿Qué es lo que no puede existir en una relación para que este en 2FN?

A

Que una parte de la clave determine funcionalmente a otro atributo.
Por eso si la PK es simple (1 sólo atributo), como mínimo, siempre será la relación 2FN, porque NUNCA podrán haber dependencias funcionales NO completas, ya que esa única clave primaria, siempre coincidirá con el resto de atributos.

66
Q

¿Qué es lo que no puede existir en una relación para que este en 3FN?

A

Que haya dependencias funcionales entre atributos no principales (dependencia TRANSITIVA).

67
Q

¿Qué dice la 6FN?

A

Que la relación debe tener una clave primaria y como mucho un atributo más (RELACIONES MUY DISTRIBUIDAS).

68
Q

¿Cuáles son las operaciones BÁSICAS del álgebra relacional?

A
  • selección
  • proyección
  • producto cartesiano
  • unión
  • diferencia
69
Q

¿Qué es el cálculo relacional y que dos tipos existen?

A
  • Modelo matemático equivalente al algebra relacional
  • Declarativo
  • Existen dos tipos: basado en tuplas y en dominios.