¡Hola, chicos!
En el post de hoy, me gustaría compartir este video que acabo de hacer, demostrando, en la práctica, los cambios que tuvimos en SQL Server 2019 en relación a la estimación de filas en variables tipo tabla, donde el optimizador de consultas siempre estimaba 1 fila, independientemente del volumen de datos, al usar variables tipo tabla, provocando muchas veces que se elija un operador no optimizado para el volumen de datos real, perjudicando drásticamente el rendimiento de las consultas que utilizaban estas tablas en memoria.
Aunque este problema se puede superar usando OPCIÓN(RECOMPILE), trace flag 2453 o sugerencias específicas para usar un determinado operador, la versión 2019 de SQL Server introdujo un nuevo concepto para solucionarlo de forma transparente, llamado compilación diferida de variables de tabla, que hace que la compilación de la estimación de la consulta se posponga hasta la primera ejecución real, en un comportamiento idéntico al de las tablas temporales, haciendo que el número de filas estimadas se acerque mucho más al volumen real, en lugar de la estimación de solo 1 línea, como en versiones anteriores.
Aunque esto ya lo he comentado en el artículo. SQL Server 2019: lista de nuevas funciones y características y también en el artículo Webcast – Celebración 300 posts + novedades SQL Server 2019 (10/04/2018 – 21h), Terminé sin profundizar mucho más y demostrar esto en la práctica, que es mi intención en este video.
¡Eso es todo, amigos!
¡Un abrazo grande y hasta la próxima!
Comentários (0)
Carregando comentários…