Vous êtes sur la page 1sur 4

GRUPO 1

1. Qué es un índice.
Un índice es una forma o un modelo de encontrar un dato rápidamente permitiendo un
rápido acceso a los registros de una tabla en una base de datos, juega el mismo papel
que los índices de los libros.

2. Señale dos aspectos negativos de la creación de índices.


Cuando usamos índices en una base de datos muy pequeña por ejm. 30 o 100 filas o
cuando hay pocos valores distintos en un atributo (el género).
No se debe crear índices cuando utilizamos atributos modificables

3. Diferencias entre un índice denso y un disperso


Un índice disperso utiliza un espacio más reducido y un mantenimiento adicional menor
para la inserción y borrado que el índice denso
Índice denso: dispone de una entrada de datos para todos los valores de la clave de
búsqueda del archivo de datos.
Índice disperso: solo se crean entradas de datos para algunos
de los valores de la clave de búsqueda y un apuntador al primer registro con ese valor
clave.

4. Dos casos de atributos que no se deben indexar. Explique por qué.


El atributo genero ya que tiene pocos valores distintos
El atributo estado civil es lo mismo ya que no tiene muchos valores distinto.

5. Se tiene la tabla Datos. Crear un índice árbol B+ por código con n=7
CODIGO NOMBRE
1 Ana
3 Pablo
5 Miguel
7 Ana
9 Ana
11 Marta
13 Luis
15 Carlos
17 Luda
19 Pedro
21 Miguel
23 Carlos
25 Ana
27 María
29 María

13 25

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29
6. Cómo quedaría el índice cuando se inserta la fila
4 Pedro

5 13 25

1 3 4 5 7 9 11 13 15 17 19 21 23 25 27 29

7. Crear un índice asociativo por Nombre en la tabla del ejercicio anterior, conociendo
que en cada bloque caben hasta 5 filas del índice.

- Nro Bloques necesarios: Nro valor distintos/nro Filas por bloque


: (9/5)*1.2=2.1=2
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

f(Ana)=1%2=1
f(Pablo)=16%2=0 0 1
f(Miguel)=13%2=1 Ana
Pablo
f(Marta)=13%2=1 Miguel
Luis
f(Luis)=12%2=0 Marta
Luda
f(Carlos)=3%2=1
Pedro Carlos
f(Luda)=12%2=0
Maria
f(Pedro)=16%2=0
f(Maria)13%2=1

8. Cómo se organizaría el archivo de la tabla Datos en SQL Server si en cada bloque


caben 4 filas.

9 17 25

1 Ana 9 ana 17 luda 25 ana


3 pablo 11 marta 19 pedro 27 maria
5 miguel 13 luis 21 miguel 29 maria
7 ana 15 carlos 23 carlos

9. Para qué se utilizan las estadísticas durante la ejecución de una consulta?


Utiliza las estadísticas para crear planes de consulta que mejoren el rendimiento de las consultas
y optimiza las consultas de forma eficaz y con mejores resultados.
10. Se tiene la tabla FACTURAS(codFact, codCliente, valorFact, fechaFact), codFact es
la clave primaria. codFact=10bytes, codCliente=10 byres, valorFact=10 bytes,
fechaFact=8 bytes, puntero=8 bytes, bloque= 4Kb, número de filas=100000, tiempo de
acceso= 8 milisegundos, tienpo de transferencia= 0,02 milisengundos. Calcular el costo
de la siguiente consulta: select * from Facturas where codFact= 87230, conociendo que
la tabla está ordenada por fecha.

GRUPO 2
1. Diferencias entre un índice ordenado y un índice asociativo
Los índices ordenados están basados en una disposición ordenada de valores y los
índices asociativos están basados en una distribución de valores a través de una serie de
cajones(buckets) el valor de cada cajón esta determinado por la fuincion hash .

2. Diferencias entre un índice agrupado y un índice no agrupado


Un indice agrupado se almacenará de forma ordenada, lo cual, facilitará la
satisfacción de consultas con cláusulas ORDER BY o GROUP BY coincidentes con
los campos del índice.
Los índices No Agrupados, suelen ser especialmente efectivos para satisfacer
cláusulas WHERE sobre los campos del índice que devuelven un conjunto muy
pequeño de registros.

3. Qué es un índice multinivel?


Es el que permiten reducir la parte del índice que se requiere acceder en un valor
equivalente al factor de bloqueo del índice.

4. Dos casos de atributos que deben ser indizados. Explique por qué.
Se debe indexar la clave primaria porque es un campo o a una combinación de campos que
identifica de forma única a cada fila de una tabla. No puede haber dos filas en una tabla que
tengan la misma clave primaria.
Se debe indexar la clave foránea porque ayuda con las junturas entre tablas
5. Se tiene la tabla Datos
CODIGO NOMBRE
1 Ana
3 Pablo
5 Miguel
7 Ana
9 Ana
11 Marta
13 Luis
15 Carlos
17 Luda
19 Pedro
21 Miguel
23 Carlos
25 Ana
27 María
29 María
Crear un índice B+ por Nombre con n=10
6. Organizar el archivo de la tabla Datos en disco con una función asociativa con clave
de búsqueda código, conociendo que en cada bloque caben hasta 5 filas de la tabla.

7. Cómo sería un archivo no agrupado por Nombre en SQL Server? ¿Explique cómo se
realiza una búsqueda por nombre en ese caso?

8. Si una tabla tiene 100.000 filas y cada fila tiene un tamaño de 150 bytes, ¿Cuántos
bloques se necesitaría para almacenar dicha tabla en SQL Server?
-filas x bloque=8*1024/150=55
-Núm. bloques=100000/55=1818

9. Indique los aspectos que mas influyen en el costo de una consulta.


-el agrupamiento
- el tipo de indice que se utilice
-forma de indexar

10. Se tiene la tabla FACTURAS(codFact, codCliente, valorFact, fechaFact), codFact es


la clave primaria. codFact=10bytes, codCliente=10 byres, valorFact=10 bytes,
fechaFact=8 bytes, puntero=8 bytes, bloque= 4Kb, número de filas=100000, tiempo de
acceso= 8 milisegundos, tiempo de transferencia= 0,02 milisengundos. Calcular el costo
de la siguiente consulta: select * from Facturas where codFact= 87230, conociendo que
la tabla tiene un índice agrupado por codFact.

Vous aimerez peut-être aussi