Guía de rendimiento
La guía de rendimiento describe buenas prácticas para configurar las reglas de selección en el sistema.
En cuentas grandes, la velocidad de obtención de datos depende directamente de lo eficientemente que configures las condiciones de filtrado. A continuación se muestran los principios clave y las recomendaciones para crear reglas de selección rápidas para Planificadores, filtros, informes y etiquetas de datos.
Prioridad de los campos del sistema
Los campos del sistema "Plantilla", "Proyecto" y "Objeto" (y solo estos) se procesan más rápido porque el sistema está específicamente optimizado para ellos.
- Reducir la selección. Añade siempre un campo del sistema al filtro que reduzca significativamente el número de entidades a comprobar. Por ejemplo, si buscas tareas por un campo personalizado "X" que existe solo en la plantilla "Z", incluye una condición para la plantilla "Z": esto acelerará sustancialmente la consulta.
- Evitar redundancias. Si ya especificaste una condición para la plantilla, añadir una condición para el proceso (en el que opera esa plantilla) es inútil — no mejorará la velocidad.
Operadores lógicos: AND vs OR
La lógica de las condiciones es uno de los factores de rendimiento más críticos.
- Usar "AND". Las condiciones combinadas con "AND" se ejecutan rápido, especialmente si la cadena incluye filtros sobre campos del sistema.
- Minimizar "OR". Usar "OR" (especialmente en el nivel superior de un filtro, sin condiciones comunes que reduzcan la selección) puede ralentizar la obtención decenas o cientos de veces. Diseña la lógica para evitar condiciones "OR" en conjuntos de datos grandes siempre que sea posible.
Consideraciones por tipo de campo
No todas las comprobaciones son igualmente "ligeras" para la base de datos.
- Valores concretos vs "tiene datos". Comprobar un valor específico (por ejemplo, "Campo X = Cassiopeia") es más rápido que comprobar la presencia de datos en el campo ("Campo X: contiene datos").
- Tipos de campo. Los campos multivalor (listas multiselección) tardan más en comprobarse que los campos sencillos que almacenan un único valor.
- "Calentar" campos nuevos. En cuentas grandes, las consultas que usan un campo personalizado nuevo siempre serán lentas en la primera ejecución. El sistema necesita tiempo para optimizar las condiciones que empiezan a usarse regularmente, por lo que las consultas sobre esos campos suelen acelerarse con el tiempo.
Permisos
Las comprobaciones complejas de acceso sobre la marcha son una de las operaciones que más consumen recursos. Por eso las consultas se ejecutan más rápido para los administradores del sistema que para los usuarios: a los administradores no se les comprueban los derechos de acceso.
Por "consulta" aquí entendemos cualquier acción — desde abrir un filtro de tareas hasta ejecutar un informe, renderizar el Planificador, etc.
Ordenación y agrupación en grandes volúmenes
La ordenación y la agrupación añaden carga adicional además de la obtención ya realizada.
- Evitar ordenaciones pesadas. Ordenar por campos personalizados y por fechas en conjuntos de resultados que devuelven miles de tareas ralentiza mucho la visualización. Cuando sea posible, usa ordenación por campos del sistema o evita la ordenación por completo.
- No agrupar salvo que sea necesario. Si puedes evitar la agrupación — hazlo; acelerará la carga.