Objawy
Rozważmy następujący scenariusz:
- Usługi SQL Server Analysis Services są używane w trybie wielowymiarowym.
- Aby użyć sterty o niskiej fragmentacji systemu Windows, należy ustawić właściwość HeapTypeForObjects na 0 .
- Uruchamiasz zarówno zapytania, jak i operacje przetwarzania.
W tym scenariuszu duże obiekty przydzielane przez aparat usług Analysis Services mogą powodować fragmentację sterty pamięci systemu Windows w ciągu kilku godzin lub dni. Gdy fragmentacja narasta, operacja przetwarzania indeksu może rozpocząć się wąskim gardłem, a jej ukończenie może zająć bardzo dużo czasu.
Rozwiązanie
Informacje dotyczące aktualizacji
Ten problem został rozwiązany w następujących aktualizacjach zbiorczych programu SQL Server:
Aktualizacja zbiorcza 1 dla programu SQL Server 2014 z dodatkiem SP2
Aktualizacja zbiorcza 4 dla programu SQL Server 2012 z dodatkiem Service Pack 3
Aktualizacja zbiorcza 8 dla programu SQL Server 2014 z dodatkiem SP1
Zalecenie: zainstalowanie najnowszej aktualizacji zbiorczej dla programu SQL Server
Każda nowa aktualizacja zbiorcza programu SQL Server zawiera wszystkie poprawki zabezpieczeń uwzględnione w poprzedniej aktualizacji skumulowanej. Sprawdź najnowsze aktualizacje zbiorcze dla programu SQL Server:
Najnowsza aktualizacja zbiorcza dla programu SQL Server 2012 z dodatkiem SP3
Najnowsza aktualizacja zbiorcza dla programu SQL Server 2014 (SP1/SP2)
Więcej informacji
Domyślnie usługi Analysis Services używają sterty o niskiej fragmentacji systemu Windows (LFH, Low Fragmentation Heap) systemu Windows do przydzielania pamięci obiektów o stałym typie. Jest to kontrolowane przez ustawienie HeapTypeForObjects. W niektórych przypadkach sterta LFH może ulec fragmentacji i spowodować wąskie gardła wydajności. LFH zwykle ulega fragmentacji w przypadku alokacji większych niż 16 KB.
Ta aktualizacja zmienia zachowanie usług Analysis Services dla tych stałych alokacji obiektów typu i używanie sterty LFH systemu Windows tylko wtedy, gdy rozmiar obiektu jest mniejszy niż 16 KB. Jeśli rozmiar obiektu jest większy niż 16 KB, usługi Analysis Services używają implementacji sterty usług Analysis Services. Implementacja sterty usług Analysis Services może działać wolniej niż sterta LFH. Nie występuje jednak problem z fragmentacją.
Stan
Firma Microsoft potwierdziła, że jest to problem dotyczący produktów firmy Microsoft wymienionych w sekcji „Dotyczy”.
Źródła informacji
Dowiedz się więcej o terminologii używanej przez firmę Microsoft do opisywania aktualizacji oprogramowania.