2016-10-08 14 views
2

У нас есть серверная среда в SQL Server 2016. Сервер виртуализирован, что означает, что он имеет общую память и процессор.Как я могу решить проблему MEMORY_ALLOCATION_EXT?

В последнее время, если сильно под напряжением, т. Е. Сортирует здания hashtables и т. Д., Мы наблюдаем значительный рост использования памяти, который был ожидаемым.

Однако мы видим, многие

MEMORY_ALLOCATION_EXT 

RESERVED_MEMORY_ALLOCATION_EXT 

Уэйтс.

Итак, у сервера было достаточно памяти, и мы также удвоили память в последнее время, но память остается.

От мониторинга состояния сервера не кажется, что ему требуется больше памяти, но что бы вы предложили, может быть причиной этих ожиданий?

+0

Кажется, ваш сервер работает в vm, выделил ли вы RAM как Dram или статический ram. – TheGameiswar

+0

Хороший вопрос. Я всего лишь разработчик, а не администратор базы данных или системный администратор, поэтому я не могу сказать вам. – tuxmania

+0

проверить это изображение и обновить вопрос, для каких-либо дополнительных проблем: https: //www.google.com/imgres? Imgurl = http: //sqlmag.com/content/content/143229/Otey-SQL2346-Fig1-lg.jpg&imgrefurl = HTTP: //sqlmag.com/database-virtualization/using-hyper-v-dynamic-memory-sql-server&h=679&w=725&tbnid=FDC_cQYyD1WjJM: & tbnh = 160 & tbnw = 171 & DocId = PEL6Hx8qwq0a2M & клиент = светлячок-б-аб & USG = ___ qOEM1yH39HikuhN9rDFpOgfkG8 = & са = X & ved = 0ahUKEwiGzsisx83PAhUBs48KHQsSC7cQ9QEIITAA – TheGameiswar

ответ

0

Paul Randall says that it is safe to ignore"MEMORY_ALLOCATION_EXT", и его руководство очень надежно; посмотрите на предикат "WHERE [wait_type] NOT IN" по запросу.

Для RESERVED_MEMORY_ALLOCATION_EXT Я бы установил Extended Event, который кэширует, какие конкретные транзакции имеют эти ожидания и посмотреть их план выполнения. Я не уверен, что это связано с фактическими транзакциями системы или пользователя.

Смежные вопросы