Jose Mercedes Venegas Acevedo escribió:

> Estoy moviendo mi BD a postgres 13 y estoy aprovechando para hacer algunos
> ajustes actualmente tengo un conjunto de triggers comunes para unas 250
> tablas que clasifican objetos geométricos el tema es que estas asignaciones
> automaticas estan empezando a crecer porque tengo casos en los que ejecuto
> digamos hasta 12 trigers por cada insercion de registro y como se trata de
> informacion geografica en ocasiones se insertar en numeros de miles de
> registros.

Hola José, en general no vale la pena optimizar multiples triggers para
convertirlos en uno solo, asumiendo que son triggers BEFORE que
modifican NEW, es decir no estás haciendo reales UPDATE en el trigger
sino modificando el registro en memoria.  Seguramente si haces un
"micro-benchmark" vas a poder medir una diferencia de llamar un trigger
que hace 5 cosas en vez de cinco triggers que hacen una cosa cada uno;
pero en la práctica es difícil que esa diferencia tenga importancia.

Ahora, si se trata de registros AFTER que hacen otras operaciones, por
ejemplo un INSERT o un UPDATE en otra tabla, entonces sí te puede
convenir mezclar varios triggers en uno solo, si es que eso te permite
reducir la cantidad de operaciones totales.  Pero si cada trigger hace
operaciones separadas, entonces la cantidad de triggers tampoco debería
importar mucho.

Si tienes constraints DEFERRED también cambia la respuesta.

Saludos


Reply via email to