Create Indexes
Create Indexes
Índice Clustered
Un índice clustered organiza los datos físicamente en la tabla en función de los valores de
una o más columnas.
ON Sales.SalesOrderHeader (SalesOrderID);
2. Índice Nonclustered
Un índice nonclustered crea una estructura separada que contiene las claves del índice y
punteros a las filas de datos.
ON Person.Person (LastName);
Un índice único garantiza que no haya valores duplicados en las columnas del índice.
ON Person.Person (EmailAddress);
ON Sales.SalesOrderHeader (TerritoryID)
Este índice es ideal para cargas de trabajo de análisis, ya que almacena los datos en formato
de columnas y permite una compresión eficiente y rápidas consultas analíticas.
ON Sales.SalesOrderDetail;
El índice hash es utilizado en tablas con memoria optimizada (In-Memory OLTP) y asigna una
clave hash a las filas para búsquedas rápidas.
-- Crear una tabla con memoria optimizada y un índice hash en la columna BusinessEntityID
ON Person.Person_Hash (LastName);
Notas importantes:
• Clustered Index: Solo puede haber uno por tabla porque organiza físicamente los
datos.
• Nonclustered Index: Pueden haber varios índices nonclustered en una tabla. Son
útiles para mejorar el rendimiento de consultas que filtran datos por columnas
específicas.
• Unique Index: Asegura que los valores sean únicos en las columnas especificadas.
• Filtered Index: Muy eficiente para columnas que contienen muchos valores NULL o
cuando solo consultas específicas usan un subconjunto de datos.
Consideraciones:
• Cada índice adicional puede mejorar el rendimiento de las consultas de lectura, pero
también puede agregar sobrecarga en las operaciones de escritura (inserciones,
actualizaciones, eliminaciones), por lo que se debe tener un balance adecuado.