Sdílet prostřednictvím


Vlastnosti paměti

platí pro: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Služba Analysis Services předem při spuštění přiděluje skromné množství paměti, aby bylo možné žádosti zpracovat okamžitě. Při nárůstu úloh dotazování a zpracování se přiděluje další paměť. Zadáním nastavení konfigurace můžete řídit prahové hodnoty vydané v paměti.

Poznámka:

QueryMemoryLimit je jediná vlastnost Memory, která se vztahuje na Power BI.

Výchozí konfigurace paměti

Ve výchozí konfiguraci každá instance při spuštění přidělí malou velikost paměti RAM (40 MB až 50 MB), i když je instance nečinná. Nastavení konfigurace jsou pro každou instanci. Pokud používáte více instancí, jako je tabulková a multidimenzionální instance na stejném hardwaru, každá instance přidělí svou vlastní paměť nezávisle na ostatních instancích.

Setting Description
LowMemoryLimit U multidimenzionálních instancí je nižší prahová hodnota, při které server poprvé začne vydávat paměť přidělenou zřídka používaným objektům.
VertiPaqMemoryLimit U tabulkových instancí je nižší prahová hodnota, při které server nejprve začne vydávat paměť přidělenou zřídka používaným objektům.
TotalMemoryLimit Horní prahová hodnota, při které služba Analysis Services začne vydávat paměť agresivněji, aby se uvolnil prostor pro požadavky, které se provádějí, a také nové požadavky s vysokou prioritou.
HardMemoryLimit Další prahová hodnota, při které služba Analysis Services začne odmítat požadavky přímo kvůli zatížení paměti.

Vlastnosti

Hodnoty mezi 1 a 100 představují procento celkové fyzické paměti nebo virtuálního adresního prostoru, podle toho, co je menší. Hodnoty nad 100 představují limity paměti v bajtech.

DefaultPagesCountToReuse

Rozšířená vlastnost, kterou byste neměli měnit, s výjimkou pokynů podpory Microsoftu.

HandleIA64AlignmentFaults

Rozšířená vlastnost, kterou byste neměli měnit, s výjimkou pokynů podpory Microsoftu.

HardMemoryLimit

Určuje prahovou hodnotu paměti, po které instance agresivně ukončí aktivní uživatelské relace, aby se snížilo využití paměti. U všech ukončených relací se zobrazí chyba týkající se zrušení zatížení paměti. Výchozí hodnota nula (0) znamená, že HardMemoryLimit bude nastavena na střední hodnotu mezi TotalMemoryLimit a celkovou fyzickou pamětí systému; Pokud je fyzická paměť systému větší než virtuální adresní prostor procesu, použije se místo toho k výpočtu HardMemoryLimit virtuální adresní prostor. Tato hodnota není konfigurovatelná pro Službu Azure Analysis Services.

HeapTypeForObjects

Rozšířená vlastnost, kterou byste neměli měnit, s výjimkou pokynů podpory Microsoftu. Platné hodnoty jsou následující:

Setting Description
-1 (výchozí) Automatické. Modul se rozhodne, který z nich se má použít.
0 Halda Windows LFH.
1 Alokátor slotu Analysis Services
3 Každý objekt má vlastní haldu služby Analysis Services.
HighMemoryPrice

Rozšířená vlastnost, kterou byste neměli měnit, s výjimkou pokynů podpory Microsoftu.

LowMemoryLimit

64bitová 64bitová číselná vlastnost s plovoucí desetinnou čárkou s dvojitou přesností, která definuje první prahovou hodnotu, při které služba Analysis Services začne vydávat paměť pro objekty s nízkou prioritou, jako je například zřídka použitá mezipaměť. Jakmile je paměť přidělena, server nevyvolá paměť pod tímto limitem. Výchozí hodnota je 65; značí, že limit paměti je 65% fyzické paměti nebo virtuálního adresního prostoru, podle toho, co je menší.

MemoryHeapType

Rozšířená vlastnost, kterou byste neměli měnit, s výjimkou pokynů podpory Microsoftu. Platné hodnoty v SQL Serveru 2016 SP1 a novější službě Analysis Services jsou následující:

Setting Description
-1 (výchozí) Automatické. Modul se rozhodne, který z nich se má použít.
1 HEAP služby Analysis Services.
2 Windows LFH.
5 Hybridní alokátor. Tento alokátor použije systém Windows LFH pro <přidělení = 16 kB a haldu AS pro >přidělení 16 kB.
6 Intel TBB alokátor. K dispozici v SQL Serveru 2016 SP1 (a novějším) Analysis Services.
MidMemoryPrice

Rozšířená vlastnost, kterou byste neměli měnit, s výjimkou pokynů podpory Microsoftu.

MinimumAllocatedMemory

Rozšířená vlastnost, kterou byste neměli měnit, s výjimkou pokynů podpory Microsoftu.

Předběžné přidělení

Rozšířená vlastnost, kterou byste neměli měnit, s výjimkou pokynů podpory Microsoftu.

QueryMemoryLimit

Platí jenom pro Power BI, Azure Analysis Services a SQL Server 2019 a novější Analysis Services. Pokročilá vlastnost, která určuje, kolik paměti lze použít během dotazu.

V SQL Serveru 2019 a novější službě Analysis Services se toto nastavení vztahuje pouze na fondy paměti, ve kterých se během zpracování dotazů vytvářejí zprostředkující výsledky dotazu DAX. Nevztahuje se na dotazy MDX.

Pokud je v Power BI, Azure Analysis Services a SQL Server 2022 a novější službě Analysis Services povolená vlastnost funkceResourceTrackingEnabled, toto nastavení není omezeno pouze na fond paměti. Vztahuje se pouze na veškerou paměť využívanou dotazy DAX i MDX v tabulkovém režimu.

Zadané v procentech až do 100. Když je více než 100, je to v bajtech. Nastavení hodnoty 0 znamená, že není zadán žádný limit.

Pro Službu Azure Analysis Services je výchozí hodnota určená vaším plánem.

Plán Výchozí
D1 80
Všechny ostatní 20
SessionMemoryLimit

Rozšířená vlastnost, kterou byste neměli měnit, s výjimkou pokynů podpory Microsoftu.

TotalMemoryLimit

Definuje prahovou hodnotu, která při dosažení způsobí, že server zruší přidělení paměti pro jiné požadavky. Po dosažení tohoto limitu se instance začne pomalu vymazat paměť z mezipamětí ukončením relací s vypršenou platností a uvolněním nepoužívaných výpočtů. Pro SLUŽBU SQL Server Analysis Services je výchozí hodnota 80% fyzické paměti nebo virtuálního adresního prostoru, podle toho, co je menší. Výchozí hodnota služby Azure Analysis Services je založená na vašem plánu a není konfigurovatelná. TotalMemoryLimit musí být vždy menší než HardMemoryLimit.

VertiPaqMemoryLimit

Pouze u tabulkových instancí, pokud je povoleno stránkování na disk, určuje tato vlastnost úroveň spotřeby paměti (jako procento celkové paměti), na které se stránkování spustí. Výchozí hodnota je 60. Pokud je spotřeba paměti menší než 60 procent, server nebude stránkovat na disk. Tato vlastnost závisí na VertiPaqPagingPolicyProperty, který musí být nastaven na hodnotu 1, aby stránkování mohlo dojít.

VertiPaqPagingPolicy

Pouze u tabulkových instancí určuje chování stránkování v případě, že server má nedostatek paměti. Platné hodnoty jsou následující:

Setting Description
0 (výchozí nastavení pro Azure Analysis Services a Power BI) Zakáže stránkování. Pokud paměť není dostatečná, zpracování selže s chybou nedostatku paměti. Pokud stránkování zakážete, musíte účtu služby udělit oprávnění systému Windows. Pokyny najdete v tématu Konfigurace účtů služeb (Analysis Services).
1 (výchozí nastavení pro SQL Server Analysis Services) Tato vlastnost umožňuje stránkování disku pomocí stránkovacího souboru operačního systému (pagefile.sys).

Pokud je nastavená hodnota 1, zpracování je méně pravděpodobné, že selže kvůli omezením paměti, protože server se pokusí stránkovat na disk pomocí metody, kterou jste zadali. Nastavení vlastnosti VertiPaqPagingPolicy nezaručuje, že k chybám paměti nikdy nedojde. K chybám nedostatku paměti může docházet za následujících podmínek:

  • Pro všechny slovníky není dostatek paměti. Během zpracování server uzamkne slovníky pro každý sloupec v paměti a všechny tyto sloupce nemohou být větší než hodnota zadaná pro VertiPaqMemoryLimit.

  • Pro zpracování procesu není k dispozici dostatek virtuálního adresního prostoru.

Pokud chcete vyřešit trvalé chyby nedostatku paměti, můžete se pokusit model přepracovat tak, aby se snížil objem dat, která potřebují zpracovat, nebo můžete do počítače přidat další fyzickou paměť.

VirtualMemoryLimit

Rozšířená vlastnost, kterou byste neměli měnit, s výjimkou pokynů podpory Microsoftu.

WaitCountIfHighMemory

Rozšířená vlastnost, kterou byste neměli měnit, s výjimkou pokynů podpory Microsoftu.

Viz také

Vlastnosti serveru ve službě Analysis Services
Určení režimu serveru instance služby Analysis Services