Edición de «Final del 26/12/13 (Bases de Datos)»

De Cuba-Wiki
Advertencia: no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si inicias sesión o creas una cuenta, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.

Puedes deshacer la edición. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces publica los cambios para así efectuar la reversión.

Revisión actual Tu texto
Línea 1: Línea 1:
{{Back|Bases de Datos}}
==De un ejemplo que involucre mas de una instruccion SQL donde sea necesario utilizar una transacción. (1 punto)==
SELECT saldo FROM cuenta WHERE userId = 3141592653; //s_pi


=Preguntas=
//Sacar 30 pé de la cuenta
#De un ejemplo que involucre mas de una instruccion SQL donde sea necesario utilizar una transacción. (1 punto)
 
#Describa detalladamente dos pruebas que haria sobre un sistema para comprobar detalladamente el funcionamiento del lockeo. (2 puntos)
UPDATE cuenta SET saldo=/*s-pi-30*/ WHERE userId = 3141592653;
#Definicion de forma normal de Boyce Codd. (1 punto)
 
#Definicion de dependencia funcional parcial. De un ejemplo. (1 punto)
==Describa detalladamente dos pruebas que haria sobre un sistema para comprobar detalladamente el funcionamiento del lockeo. (2 puntos)==
#Definir clave foranea. ¿Qué operaciones de SQL controlan esta restriccion? (2 puntos)
 
#¿Cual es la diferencia entre una agregación y una relacion ternaria? (2 puntos)
==Definicion de forma normal de Boyce Codd. (1 punto)==
#¿Cuando un indice se llama secundario? (1 punto)
Un esquema R está en forma normal de Boyce Codd si para toda dependencia funcional no trivial X->A vale que X es una superclave de R.
#¿Como pueden utilizarse los stored procedures para aumentar la seguridad de una base de datos? ¿Por que? (2 puntos)
 
#¿Cual es la diferencia entre Commit y Checkpoint? (1.5 puntos)
==Definicion de dependencia funcional parcial. De un ejemplo. (1 punto)==
#Detalle el uso que le da el DBMS al System Catalog en el momento de hacer un insert en una tabla. (2 puntos)
Una dependencia funcional es una restricción semántica entre conjuntos de atributos. En una tabla existe la dependencia funcional A->B si cada vez que A[x] == A[y] necesariamente vale que B[x] == B[y].
#¿Cuales son las formas clasicas que tienen los modelos de DW? (2 puntos)
 
#¿Que es una dimension en el modelo de un DW? (2 puntos)
Una dependencia funcional X->Y es parcial si existe un subconjunto C de X tal que {X\C}->Y sigue valiendo.
#Mencione y explique dos parametros que necesita conocer el DBA sobre una tabla a la hora de crearla. (1 punto)
 
#¿Cuales son los niveles de aislamiento de SQL? ¿Qué problema de control de concurrencia resuelve cada uno? (2 puntos)
Ej: {codEmpleado,nombre}->{apellido}
#¿Qué es una descomposicion de una relacion? ¿Cuando es la misma sin pérdidas de dependencias funcionales? (2 puntos)
 
#¿Cual es el costo de acceder por igualdad en una consulta si se tiene un indice B+ Clustered que aplica al criterio de busqueda? Expliquelo. (2 puntos)
==Definir clave foranea. ¿Qué operaciones de SQL controlan esta restriccion? (2 puntos)==
Una clave foránea es una restricción que aplica a un atributo de una relación que establece que el valor de ese atributo debe referenciar una columna (o conjunto de columnas) de otra tabla.
 
Esta restricción es tomada en cuenta para las operaciones INSERT y UPDATE. Para modificarla se utiliza ALTER y CREATE.
 
==¿Cual es la diferencia entre una agregación y una relacion ternaria? (2 puntos)==
En una relacion ternaria las tres entidades tienen que ser partícipes.
 
En una agregación una de las entidades puede no participar.
 
==¿Cuando un indice se llama secundario? (1 punto)==
Segun el Elmasri, cuando el índice no tiene el mismo órden que la tabla.
 
Según el apunte de optimización de la materia cuando en las hojas del índice contiene sólo los ids correspondientes y un puntero al valor/bucket.
 
==¿Como pueden utilizarse los stored procedures para aumentar la seguridad de una base de datos? ¿Por que? (2 puntos)==
 
Se pueden utilizar para restringir las operaciones de los usuarios a aquellas que el DBA considera son adecuadas para los
usuarios. Por ejemplo, no proveer acceso de bajo nivel sino más bien dar operaciones semánticas como "transferir dinero" o
"consultar balance". Esto se puede combinar con la cláusula GRANT de SQL para determinar los permisos sobre la base.
 
==¿Cual es la diferencia entre Commit y Checkpoint? (1.5 puntos)==
 
Commit es para una transacción, Checkpoint es general para toda la base de datos. Commit indica que la transacción ha tenido
éxito y las operaciones debieran ser bajadas a disco. Checkpoint es un punto de control de manera que en caso de tener que restaurar la base de datos desde el log no se tenga que restaurar.
 
==Detalle el uso que le da el DBMS al System Catalog en el momento de hacer un insert en una tabla. (2 puntos)==
Revisa que los tipos de datos provistos para el insert matcheen con la estructura de la tabla definida en el system catalog. Además valida todos los constrains de la tabla (también almacenados en el catalog) tales como UNIQUE, FOREIGN KEY. Además se ven los índices presentes y los permisos del usuario.
 
==¿Cuales son las formas clasicas que tienen los modelos de DW? (2 puntos)==
* Snowflake.
* Star.
 
==¿Que es una dimension en el modelo de un DW? (2 puntos)==
Una dimensión es una colección de miembros o unidades o individuos del mismo tipo. Cada punto de entrada de la tabla de HECHOS está conectado a una DIMENSION. Determinan el contexto de los HECHOS. Informalmente, representan los ángulos desde los que puedo observar (tiempo, ubicación, etc).
 
==Mencione y explique dos parametros que necesita conocer el DBA sobre una tabla a la hora de crearla. (1 punto)==
* Los atributos (con sus respectivos tipos de datos).
* Sus restricciones (foreign keys, valores uniques, etc).
 
==¿Cuales son los niveles de aislamiento de SQL? ¿Qué problema de control de concurrencia resuelve cada uno? (2 puntos)==


=Respuestas=
#
#*SELECT saldo FROM cuenta WHERE userId = 3141592653; //s_pi
#*//Sacar 30 pé de la cuenta
#*UPDATE cuenta SET saldo=/*s-pi-30*/ WHERE userId = 3141592653;
#????
#Un esquema R está en forma normal de Boyce Codd si para toda dependencia funcional no trivial X->A vale que X es una superclave de R.
#
#*Una dependencia funcional es una restricción semántica entre conjuntos de atributos. En una tabla existe la dependencia funcional A->B si cada vez que A[x] == A[y] necesariamente vale que B[x] == B[y]. Una dependencia funcional X->Y es '''parcial''' si existe un subconjunto C de X tal que {X\C}->Y sigue valiendo.
#*Ej: {codEmpleado,nombre}->{apellido}
#Una clave foránea es una restricción que aplica a un atributo de una relación que establece que el valor de ese atributo debe referenciar una columna (o conjunto de columnas) de otra tabla. Esta restricción es tomada en cuenta para las operaciones INSERT y UPDATE. Para modificarla se utiliza ALTER y CREATE.
#En una relacion ternaria las tres entidades tienen que ser partícipes. En una agregación una de las entidades puede no participar.
#Segun el Elmasri, cuando el índice no tiene el mismo órden que la tabla. Según el apunte de optimización de la materia cuando en las hojas del índice contiene sólo los ids correspondientes y un puntero al valor/bucket.
#Se pueden utilizar para restringir las operaciones de los usuarios a aquellas que el DBA considera son adecuadas para los usuarios. Por ejemplo, no proveer acceso de bajo nivel sino más bien dar operaciones semánticas como "transferir dinero" o "consultar balance". Esto se puede combinar con la cláusula GRANT de SQL para determinar los permisos sobre la base.
#Commit es para una transacción, Checkpoint es general para toda la base de datos. Commit indica que la transacción ha tenido éxito y las operaciones debieran ser bajadas a disco. Checkpoint es un punto de control de manera que en caso de tener que restaurar la base de datos desde el log no se tenga que restaurar.
#Revisa que los tipos de datos provistos para el insert matcheen con la estructura de la tabla definida en el system catalog. Además valida todos los constrains de la tabla (también almacenados en el catalog) tales como UNIQUE, FOREIGN KEY. Además se ven los índices presentes y los permisos del usuario.
#
#* Snowflake.
#* Star.
#Una dimensión es una colección de miembros o unidades o individuos del mismo tipo. Cada punto de entrada de la tabla de HECHOS está conectado a una DIMENSION. Determinan el contexto de los HECHOS. Informalmente, representan los ángulos desde los que puedo observar (tiempo, ubicación, etc).
#
#* Los atributos (con sus respectivos tipos de datos).
#* Sus restricciones (foreign keys, valores uniques, etc).
#
<center>
{|class="wikitable"
{|class="wikitable"
! Isolation level !! Dirty reads !! Non-repeatable reads !! Phantoms
! Isolation level !! Dirty reads !! Non-repeatable reads !! Phantoms
Línea 55: Línea 71:
| Serializable || - || - || -
| Serializable || - || - || -
|}
|}
</center>


<ol start="15">
 
<li>Una descomposición de una relación <math>R = { A_1, A_2, \dots , A_n }</math> consiste en <math>k</math> relaciones <math>R_1, R_2, \dots, R_k</math> tales que la unión de todos los atributos
==¿Qué es una descomposicion de una relacion? ¿Cuando es la misma sin pérdidas de dependencias funcionales? (2 puntos)==
 
Una descomposición de una relación <math>R = { A_1, A_2, \dots , A_n }</math> consiste en <math>k</math> relaciones <math>R_1, R_2, \dots, R_k</math> tales que la unión de todos los atributos
de las mismas contiene todos los atributos de la relación original R. La descomposición se dice sin pérdida de dependencias funcionales (SPDF)
de las mismas contiene todos los atributos de la relación original R. La descomposición se dice sin pérdida de dependencias funcionales (SPDF)
si la clausura de la unión de las proyecciones de las dependencias funcionales en la descomposición contiene todas las DF originales.
si la clausura de la unión de las proyecciones de las dependencias funcionales en la descomposición contiene todas las DF originales.
Línea 66: Línea 83:
</math>
</math>
</center>
</center>
Con <math>F_i = \pi_{R_i}(F)</math> </li>
Con <math>F_i = \pi_{R_i}(F)</math>
</ol>
 
==¿Cual es el costo de acceder por igualdad en una consulta si se tiene un indice B+ Clustered que aplica al criterio de busqueda? Expliquelo. (2 puntos)==


<ol start="16">
El costo es la altura del árbol, para poder conseguir el bloque donde empiezan los datos usando el índice, más techo de la cantidad de tuplas con ese valor divido el factor de bloqueo, para leer todas las tuplas que tienen ese valor y encontrar cual es (porque el índice es clustered entonces varios pueden cumplir con el criterio de búsqueda).
<li>El costo es la altura del árbol, para poder conseguir el bloque donde empiezan los datos usando el índice, más techo de la cantidad de tuplas con ese valor divido el factor de bloqueo, para leer todas las tuplas que tienen ese valor y encontrar cual es (porque el índice es clustered entonces varios pueden cumplir con el criterio de búsqueda).</li>
</ol>
Ten en cuenta que todas las contribuciones a Cuba-Wiki pueden ser editadas, modificadas o eliminadas por otros colaboradores. Si no deseas que las modifiquen sin limitaciones, no las publiques aquí.
Al mismo tiempo, asumimos que eres el autor de lo que escribiste, o lo copiaste de una fuente en el dominio público o con licencia libre (véase Cuba-Wiki:Derechos de autor para más detalles). ¡No uses textos con copyright sin permiso!

Para editar esta página, responde la pregunta que aparece abajo (más información):

Cancelar Ayuda de edición (se abre en una ventana nueva)

Plantilla usada en esta página: