Indices Bases


Estuve pensando un poco en qué hacer para el siguiente post, quería hacer algo sobre desempeño de una instancia de SQL Server e índices & estadísticas pero entre más pensaba en esto más me suponía que debía de tocar primero que es un índice y cual es su función, así como otros puntos básicos ya que son parte base del desempeño de SQL Server.


Un índice como lo imaginaran es equiparable al que podemos ver en un libro, pero veamos la definición de un índice en Wikipedia.

"Un índice es una lista de palabras o frases ('encabezados'), que permite la ubicación de material al interior de un libro o de una publicación. En un índice tradicional, los encabezados incluirán nombres de personas, lugares y eventos, y conceptos seleccionados como relevantes y de interés para el lector. Los indicadores suelen ser números de páginas."

Esto nos da unas fuertes bases para explicar que es un índice en una base de datos relacional. Las bases de datos surgieron como la respuesta a poder archivar grandes cantidades de datos de la misma manera que las bases de datos tuvieron su origen de tan humilde manera, los índices tiene la misma funcionalidad, buscar rápidamente información dentro de una base de datos, por medio de valores relevantes, como vemos su uso no ha cambiado mucho.

Ahora bien dentro de SQL Server tenemos dos tipos de índices que son el Clustered y el No Clustered, para hacer más fácil el entendimiento de estos términos tomare la idea de un libro nuevamente, un índice Clustered es único para cada tabla, e imaginemos que esto es el libro y el orden natural del mismo, es el libro físico sus páginas, cuando tenemos un libro de 360 páginas, tenemos un índice por la misma cantidad (el espacio). Normalmente este índice es el índice primario o natural (páginas), más no siempre es así.

El otro y otros índices son los No Clustered. Estos se podría decir que son índices alternos u enfocados en otro tipo de ordenamiento. Digamos que estamos viendo un libro sobre deportes de las olimpiadas, el orden natural será por los años de cada olimpiada, pero que pasa si queremos encontrar algo por un deporte especifico, el posible que el libro traiga al final un índice alterno que nos busque por deporte, o hasta por deportista.

En los siguientes post veremos esto a un nivel más técnico:
  • Índices y características
  • Tipos de índices
  • Limitantes y problemas

Una vez visto estos puntos procederemos a lo que serán las estadísticas y por ultimo lo que son los planes de ejecución.

Comentarios