sql >> Base de Datos >  >> RDS >> Oracle

Hibernate consulta sql parametrizada sesiones de oráculo lentas y activas

No sé si este es su problema, pero Oracle echa un vistazo a los valores de las variables de vinculación cuando analiza una consulta y luego guarda el plan de consulta para futuras ejecuciones para que no tenga que seguir analizando la consulta cada vez que se ejecuta con un nuevo conjunto de variables de vinculación. Pero de vez en cuando se vuelve a analizar la consulta. Si se pasan algunos valores de variables de vinculación inusuales durante un análisis, se almacena y utiliza un plan incorrecto. Es una especie de maldición de las variables de enlace. Reducen el análisis, pero pueden cambiar el plan en valores de variables de enlace atípicos cuando las consultas se analizan nuevamente. Las sugerencias pueden ayudar. Usamos perfiles de SQL para bloquear planes de consultas con variables de vinculación que tienden a cambiar los planes. A veces, puede personalizar cuándo y cómo se recopilan las estadísticas del optimizador para crear un buen plan, independientemente de los valores que se pasen a las variables de vinculación.

De todos modos, es algo que veo todo el tiempo y puede o no ser tu problema.

bobby