# ¿Cúando usar índices complejos?

![](/files/-M7D7Rn7omcsOS9kCx4d)

## Máximo rendimiento

Si queremos buscar las facturas por los trozos del nombre del cliente podemos hacerlo con un proceso. Primero busca los clientes por trozos y obtenermos una lista de clientes, luego para cada uno de los clientes buscaremos las facturas. Este proceso sencillo de programar tiene un rendimiento muy pobre en primer plano, y aunque mejora mucho en su ejecución en tercer plano, los tiempos de respuesta que obtendremos nunca serán inmediatos.

El índice complejo que nos permite realizar esta búsqueda de forma directa se programa en apenas un minuto y el resultado en ejecución es espectacular.

## Penalización aceptable

Al igual que ocurría con los índices condicionados, el uso de los índices complejos favorece la lectura y explotación de la información, pero el tributo que debemos pagar es el tiempo que requiere la indexación de estos índices que debemos valorar en caso extremos, ya que por regla general esta penalización se ve ampliamente compensada con el rendimiento en ejecución para localizar la información.


---

# Agent Instructions: 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:

```
GET https://doc.velneo.com/22/velneo-vdevelop/buenas-practicas-de-programacion/buenas-practicas-de-rendimiento/buenas-practicas-base-de-datos/cuando-usar-indices-complejos.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
