SlideShare una empresa de Scribd logo
1 de 3
Indices
-Losíndicesson objetosde labasesde datos,cuya funciónesoptimizarel accesoadatos. A medida que las tablas se
van haciendo más grandes y se desea hacer consultar sobre estas tablas, los índices son indispensables.
Internamente un índice normal es una estructura de árbol, que cuenta con una página principal y luego esta con
paginas hijas, que a su vez tiene más paginas hijas hasta llegar a la pagina final del índice (leaf level).
La clave del índice está repartida en las páginas del índice, de modo tal que la búsqueda se haga leyendo la menor
cantidad posible de datos.
-Dijimos que SQL Server permite crear dos tipos de índices: 1) agrupados (clustered) y 2) no agrupados
(nonclustered).
1) Un INDICE AGRUPADO es similar a una guía telefónica, los registros con el mismo valor de campo se agrupan
juntos. Un índice agrupado determina la secuencia de almacenamiento de los registros en una tabla.
Se utilizan para campos por los que se realizan busquedas con frecuencia o se accede siguiendo un orden.
Una tabla sólo puede tener UN índice agrupado.
El tamaño medio de un índice agrupado es aproximadamente el 5% del tamaño de la tabla.
2) Un INDICE NO AGRUPADO es como el índice de un libro, los datos se almacenan en un lugar difere nte al del
índice, los punteros indican el lugar de almacenamiento de los elementos indizados en la tabla.
Un índice no agrupadose empleacuandose realizandistintos tipos de busquedas frecuentemente, con campos en
los que los datos son únicos.
Una tabla puede tener hasta 249 índices no agrupados.
Si no se especifica un tipo de índice, de modo predeterminado será no agrupado.
Los campos de tipo text, ntext e image no se pueden indizar.
Es recomendable crear los índices agrupados antes que los no agrupados, porque los primeros modifican el orden
físico de los registros, ordenándolos secuencialmente.
La diferencia básica entre índices agrupados y no agrupados es que los registros de un índice agrupado están
ordenados y almacenados de forma secuencial en función de su clave.
SQL Server crea automaticamente índices cuando se crea una restricción "primary key" o "unique" en una tabla.
Es posible crear índices en las vistas.
Resumiendo, los índices facilitan la recuperación de datos, permitiendo el acceso directo y acelerando las
búsquedas, consultas y otras operaciones que optimizan el rendimiento general.
-Se preguntaránycomo entranaquí los Clusteredy Non-ClusteredIndex.Yque diferenciahayentre ellos? Los Non-
Clusterednormalmente son índices que ocupan menos espacio ya que ellos almacenan un puntero a la página que
contiene losdatosensí, encambiolosíndices Clusteredenvezde almacenarun punterotiene lapáginade datos en
él. A la hora de acceder a los datos ésta diferencia es muy importante, porque nos ahorra tiempo y cantidad de
acceso (Bookmark lookup).
También vale la pena saber que los índices Clustered son utilizados para ordenar de manera física la tabla en el
disco,esdecir,que si a unaconsultano le aplicamosla cláusula ORDER BY será ordenada por suClustered Index por
defecto. Lo que quiere decir que sólo puede existir un sólo índice de éste tipo por razones más que obvias -
fisicamenteesposible ordenarde unsólomodo-.Asíque deben“quemarestecartucho”de la manera más eficiente
posible. La cuestión queda en ¿cómo saber cuando usar un índice Clustered? Normalmente el mejor candidatos
suele serlaclave primariaautonumeradas,peronosiempreesasí. Tampoco es muy recomendable que se lo utilice
en claves compuestas, pero lo que más debemos tener en cuenta que se debe aplicar sobre el campo que más
utilizado es en las cláusulas WHERE,GROUP BY, ORDER BY.
Índices densos y dispersos
 Un registro índice o entrada del índice consiste en un valor de la clave de búsqueda y punteros a uno o
más registros con ese valor de la clave de búsqueda. El puntero a un registro consiste en el identificador
de un bloque de disco y un desplazamiento en el bloque de disco para identificar el registro dentro del
bloque.
 Existen dos clases de índices ordenados que se pueden usar: densos y dispersos
 Indice Denso
 Aparece un registro índice por cada valor de la clave de búsqueda en el archivo. En un índice denso
agrupado el registro índice contiene el valor de la clave y un puntero al primer registro con ese valor de la
clave de búsqueda. El resto de registros con el mismo valor de la clave de búsqueda se almacenan
consecutivamente después del primer registro, dado que, ya que el índice es con agrupación, los registros
se ordenan sobre la misma clave de búsqueda.
 Las implementaciones de índices densos pueden almacenar una lista de punteros a todos los registros con
el mismo valor de la clave de búsqueda; esto no es esencial para los índices con agrupación.
Indice Disperso
 Sólo se crea un registro índice para algunos de
los valores. Al igual que en los índices densos,
cada registro índice contiene un valor de la
clave de búsqueda y un puntero al primer
registro con ese valor de la clave. Para localizar
un registro se busca la entrada del índice con el
valor más grande que sea menor o igual que el
valor que se está buscando. Se empieza por el
registro apuntado por esa entrada del índice y se
continúa con los punteros del archivo hasta encontrar el registro deseado.
Ejercicios de arboles B

Más contenido relacionado

La actualidad más candente

Indizacion y operaciones
Indizacion y operacionesIndizacion y operaciones
Indizacion y operacionesfavi_hola
 
Ficheros con organización secuencial indexada
Ficheros con organización secuencial indexadaFicheros con organización secuencial indexada
Ficheros con organización secuencial indexadaFportavella
 
Base de datos (.net)
Base de datos (.net)Base de datos (.net)
Base de datos (.net)7891089671
 
Bases de datos 904
Bases de datos 904Bases de datos 904
Bases de datos 904andrecami
 
Taller access isabella truji
Taller access isabella trujiTaller access isabella truji
Taller access isabella trujikathalina rubio
 
Archivo secuencial indexado
Archivo secuencial indexadoArchivo secuencial indexado
Archivo secuencial indexadoTortuly
 
Estructura de archivos secuencial indexado
Estructura de archivos secuencial indexadoEstructura de archivos secuencial indexado
Estructura de archivos secuencial indexadodexter120
 
Dhtic pratica
Dhtic praticaDhtic pratica
Dhtic praticadalia2094
 
Combinar correspondencia
Combinar correspondenciaCombinar correspondencia
Combinar correspondenciaBeatrizrondeau
 
Situación de aprendizaje base de datos en excel
Situación de aprendizaje base de datos en excelSituación de aprendizaje base de datos en excel
Situación de aprendizaje base de datos en excelDocente_ruben
 
Estructura de archivos secuencial indexado
Estructura de archivos secuencial indexadoEstructura de archivos secuencial indexado
Estructura de archivos secuencial indexadodexter120
 
Exposicion organización directa
Exposicion organización directaExposicion organización directa
Exposicion organización directaTiFoN87
 

La actualidad más candente (20)

Indizacion y operaciones
Indizacion y operacionesIndizacion y operaciones
Indizacion y operaciones
 
Tablas
TablasTablas
Tablas
 
Organización de archivos
Organización de archivosOrganización de archivos
Organización de archivos
 
Taller access nicolle
Taller access nicolleTaller access nicolle
Taller access nicolle
 
Taller access isabella
Taller access isabellaTaller access isabella
Taller access isabella
 
Ficheros con organización secuencial indexada
Ficheros con organización secuencial indexadaFicheros con organización secuencial indexada
Ficheros con organización secuencial indexada
 
Consulta
ConsultaConsulta
Consulta
 
Base de datos (.net)
Base de datos (.net)Base de datos (.net)
Base de datos (.net)
 
Bases de datos 904
Bases de datos 904Bases de datos 904
Bases de datos 904
 
Taller access kathalina
Taller access kathalinaTaller access kathalina
Taller access kathalina
 
Taller access isabella truji
Taller access isabella trujiTaller access isabella truji
Taller access isabella truji
 
Taller access nathaly
Taller access nathalyTaller access nathaly
Taller access nathaly
 
Operaciones basicas L
Operaciones basicas LOperaciones basicas L
Operaciones basicas L
 
Archivo secuencial indexado
Archivo secuencial indexadoArchivo secuencial indexado
Archivo secuencial indexado
 
Estructura de archivos secuencial indexado
Estructura de archivos secuencial indexadoEstructura de archivos secuencial indexado
Estructura de archivos secuencial indexado
 
Dhtic pratica
Dhtic praticaDhtic pratica
Dhtic pratica
 
Combinar correspondencia
Combinar correspondenciaCombinar correspondencia
Combinar correspondencia
 
Situación de aprendizaje base de datos en excel
Situación de aprendizaje base de datos en excelSituación de aprendizaje base de datos en excel
Situación de aprendizaje base de datos en excel
 
Estructura de archivos secuencial indexado
Estructura de archivos secuencial indexadoEstructura de archivos secuencial indexado
Estructura de archivos secuencial indexado
 
Exposicion organización directa
Exposicion organización directaExposicion organización directa
Exposicion organización directa
 

Similar a Ejercicios de arboles B (20)

INDICES EN SQL SERVER
INDICES EN SQL SERVERINDICES EN SQL SERVER
INDICES EN SQL SERVER
 
Indices en oracle
Indices en oracleIndices en oracle
Indices en oracle
 
Cap12-Index-Hash.pdf
Cap12-Index-Hash.pdfCap12-Index-Hash.pdf
Cap12-Index-Hash.pdf
 
Analisissss
AnalisissssAnalisissss
Analisissss
 
Indexacion asociacion
Indexacion asociacionIndexacion asociacion
Indexacion asociacion
 
Base de datos informatica
Base de datos informaticaBase de datos informatica
Base de datos informatica
 
Campos daniel presentacion de base de datos
Campos daniel presentacion de base de datosCampos daniel presentacion de base de datos
Campos daniel presentacion de base de datos
 
Indexamiento
IndexamientoIndexamiento
Indexamiento
 
Taller de acces
Taller de accesTaller de acces
Taller de acces
 
BASE DE DATOS RELACIONALES, DISTRIBUIDAS, ORIENTADA.pptx
BASE DE DATOS RELACIONALES, DISTRIBUIDAS, ORIENTADA.pptxBASE DE DATOS RELACIONALES, DISTRIBUIDAS, ORIENTADA.pptx
BASE DE DATOS RELACIONALES, DISTRIBUIDAS, ORIENTADA.pptx
 
Consulta
ConsultaConsulta
Consulta
 
Consulta
ConsultaConsulta
Consulta
 
Indices en bases de datos my sql
Indices en bases de datos  my sqlIndices en bases de datos  my sql
Indices en bases de datos my sql
 
Access
AccessAccess
Access
 
Microsoft access
Microsoft accessMicrosoft access
Microsoft access
 
Bases de datos de informatica
Bases de datos de informaticaBases de datos de informatica
Bases de datos de informatica
 
Busqeda sec indexada
Busqeda sec indexadaBusqeda sec indexada
Busqeda sec indexada
 
Tecnicas esquemas indexados
Tecnicas esquemas indexadosTecnicas esquemas indexados
Tecnicas esquemas indexados
 
Estructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso realesEstructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso reales
 
Access
AccessAccess
Access
 

Ejercicios de arboles B

  • 1. Indices -Losíndicesson objetosde labasesde datos,cuya funciónesoptimizarel accesoadatos. A medida que las tablas se van haciendo más grandes y se desea hacer consultar sobre estas tablas, los índices son indispensables. Internamente un índice normal es una estructura de árbol, que cuenta con una página principal y luego esta con paginas hijas, que a su vez tiene más paginas hijas hasta llegar a la pagina final del índice (leaf level). La clave del índice está repartida en las páginas del índice, de modo tal que la búsqueda se haga leyendo la menor cantidad posible de datos. -Dijimos que SQL Server permite crear dos tipos de índices: 1) agrupados (clustered) y 2) no agrupados (nonclustered). 1) Un INDICE AGRUPADO es similar a una guía telefónica, los registros con el mismo valor de campo se agrupan juntos. Un índice agrupado determina la secuencia de almacenamiento de los registros en una tabla. Se utilizan para campos por los que se realizan busquedas con frecuencia o se accede siguiendo un orden. Una tabla sólo puede tener UN índice agrupado. El tamaño medio de un índice agrupado es aproximadamente el 5% del tamaño de la tabla. 2) Un INDICE NO AGRUPADO es como el índice de un libro, los datos se almacenan en un lugar difere nte al del índice, los punteros indican el lugar de almacenamiento de los elementos indizados en la tabla. Un índice no agrupadose empleacuandose realizandistintos tipos de busquedas frecuentemente, con campos en los que los datos son únicos. Una tabla puede tener hasta 249 índices no agrupados. Si no se especifica un tipo de índice, de modo predeterminado será no agrupado. Los campos de tipo text, ntext e image no se pueden indizar. Es recomendable crear los índices agrupados antes que los no agrupados, porque los primeros modifican el orden físico de los registros, ordenándolos secuencialmente. La diferencia básica entre índices agrupados y no agrupados es que los registros de un índice agrupado están ordenados y almacenados de forma secuencial en función de su clave. SQL Server crea automaticamente índices cuando se crea una restricción "primary key" o "unique" en una tabla. Es posible crear índices en las vistas. Resumiendo, los índices facilitan la recuperación de datos, permitiendo el acceso directo y acelerando las búsquedas, consultas y otras operaciones que optimizan el rendimiento general. -Se preguntaránycomo entranaquí los Clusteredy Non-ClusteredIndex.Yque diferenciahayentre ellos? Los Non- Clusterednormalmente son índices que ocupan menos espacio ya que ellos almacenan un puntero a la página que contiene losdatosensí, encambiolosíndices Clusteredenvezde almacenarun punterotiene lapáginade datos en él. A la hora de acceder a los datos ésta diferencia es muy importante, porque nos ahorra tiempo y cantidad de acceso (Bookmark lookup). También vale la pena saber que los índices Clustered son utilizados para ordenar de manera física la tabla en el disco,esdecir,que si a unaconsultano le aplicamosla cláusula ORDER BY será ordenada por suClustered Index por defecto. Lo que quiere decir que sólo puede existir un sólo índice de éste tipo por razones más que obvias - fisicamenteesposible ordenarde unsólomodo-.Asíque deben“quemarestecartucho”de la manera más eficiente
  • 2. posible. La cuestión queda en ¿cómo saber cuando usar un índice Clustered? Normalmente el mejor candidatos suele serlaclave primariaautonumeradas,peronosiempreesasí. Tampoco es muy recomendable que se lo utilice en claves compuestas, pero lo que más debemos tener en cuenta que se debe aplicar sobre el campo que más utilizado es en las cláusulas WHERE,GROUP BY, ORDER BY. Índices densos y dispersos  Un registro índice o entrada del índice consiste en un valor de la clave de búsqueda y punteros a uno o más registros con ese valor de la clave de búsqueda. El puntero a un registro consiste en el identificador de un bloque de disco y un desplazamiento en el bloque de disco para identificar el registro dentro del bloque.  Existen dos clases de índices ordenados que se pueden usar: densos y dispersos  Indice Denso  Aparece un registro índice por cada valor de la clave de búsqueda en el archivo. En un índice denso agrupado el registro índice contiene el valor de la clave y un puntero al primer registro con ese valor de la clave de búsqueda. El resto de registros con el mismo valor de la clave de búsqueda se almacenan consecutivamente después del primer registro, dado que, ya que el índice es con agrupación, los registros se ordenan sobre la misma clave de búsqueda.  Las implementaciones de índices densos pueden almacenar una lista de punteros a todos los registros con el mismo valor de la clave de búsqueda; esto no es esencial para los índices con agrupación. Indice Disperso  Sólo se crea un registro índice para algunos de los valores. Al igual que en los índices densos, cada registro índice contiene un valor de la clave de búsqueda y un puntero al primer registro con ese valor de la clave. Para localizar un registro se busca la entrada del índice con el valor más grande que sea menor o igual que el valor que se está buscando. Se empieza por el registro apuntado por esa entrada del índice y se continúa con los punteros del archivo hasta encontrar el registro deseado.