SQL Server - Problema de cuello de botella por tipo de espera Resource_Semaphore

 
Vista:
Imágen de perfil de Ariagna
Val: 5
Ha aumentado su posición en 14 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

Problema de cuello de botella por tipo de espera Resource_Semaphore

Publicado por Ariagna (12 intervenciones) el 05/12/2022 20:38:32
Cuento con una aplicación que genera carga OLTP y OLAP sobre una misma base de datos de SQL Server 2014, al realizar una prueba de estrés en donde ejecute 9 reportes en conjunto con otro proceso distinto, después de varias horas sin un resultado, revise las operaciones que se estaban ejecutando sobre la base de datos e identifique que tenía 2 con un tipo de espera Resource_Semaphore, comencé a investigar sobre este tipo de espera y ví que era debido a que estaba esperando la asignación de memoria, al consultar el DMV sys.dm_exec_query_resource_semaphores ví que estaba al tope la cantidad de memoria que podía asignar, lo que me interesa saber es ¿si es posible aumentar esta cantidad de memoria que puede utilizar el semáforo de un grupo de recursos? y además ¿cómo es que SQL Server asigna el valor de la cantidad máxima? tengo 2 semaforos por cada grupo de recursos, ví que al sumar ambas cantidades máximas me daban el total de la memoria física pero esto valores no eran iguales, además de que al momento de que se ocasionará el cuello de botella mi server aún tenía memoria disponible, y no le estoy limitando a SQL Server una cantidad de memoria a utilizar, sería de mucha ayuda si me pudieran ayudar con su conocimiento
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Problema de cuello de botella por tipo de espera Resource_Semaphore

Publicado por Isaias (4558 intervenciones) el 06/12/2022 01:08:02
Tal vez
1
2
3
4
5
6
7
8
9
10
USE AdventureWorks2012 ;
GO
EXEC sp_configure 'show advanced options', 1;
GO
RECONFIGURE ;
GO
EXEC sp_configure 'min memory per query', 3500 ;
GO
RECONFIGURE;
GO
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Ariagna
Val: 5
Ha aumentado su posición en 14 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

Problema de cuello de botella por tipo de espera Resource_Semaphore

Publicado por Ariagna (12 intervenciones) el 07/12/2022 02:01:27
Tengo entendido que esto ocasionaría que la consulta cayera en TempDB, esto sería peor no?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de IIslas
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Problema de cuello de botella por tipo de espera Resource_Semaphore

Publicado por IIslas (4558 intervenciones) el 07/12/2022 18:13:09
No, lo que estas configurando con esa instrucción el el MINIMO DE MEMORIA que vas a utilizar por consulta
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar