> For the complete documentation index, see [llms.txt](https://doc.velneo.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.velneo.com/22/velneo-vdevelop/buenas-practicas-de-programacion/buenas-practicas-de-rendimiento/buenas-practicas-base-de-datos/reduce-el-numero-de-indices.md).

# Reduce el número de índices

## Agrupa índices con partes comunes

Siempre que creas un índice debes plantearte las partes que debe indexar. No conviene meter más partes de las estrictamente necesarias, pero todavía es peor crear varios índices con partes comunes, por ejemplo: Crear un índice por ARTICULO, otro por ARTICULO y ALMACEN y un tercer índice por ARTICULO, ALMACEN y FECHA.

Esto que a priori no suele ocurrir en el desarrollo inicial, sí se produce en las fases de mantenimiento, donde los programadores ante la necesidad de resolver incidencias de forma rápida en tablas con muchos campos e índices crean un índice sin revisar si ya hay alguno que pueda modificarse para poder ser utilizado evitando crear uno nuevo.

## Acepta repetidas vs Clave única

Cuando creamos un índice del tipo acepta repetidas, Velneo añade al tamaño del índice 4 bytes, ya que internamente distingue cada clave de registro repetida hasta garantizar un máximo de 4.000 millones de repeticiones. Por eso en muchas ocasiones puede ser más interesante añadir como última parte del índice el campo ID lo que nos garantiza que sea de clave única con un menor tamaño del índice.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://doc.velneo.com/22/velneo-vdevelop/buenas-practicas-de-programacion/buenas-practicas-de-rendimiento/buenas-practicas-base-de-datos/reduce-el-numero-de-indices.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
