SQLServer: Buffer Cache Hit ratio er en god indikasjon på MULIG flaskehals i minnet?

Jeg leter etter en indikasjon (hvis noen) som enten vil se bort fra alternativet for flaskehals i minnet, eller godta det, eller få meg til å undersøke nærmere.

for eksempel:

forventet levetid på siden:

SELECT [object_name], [counter_name], [cntr_value] FROM sys.dm_os_performance_counters WHERE [object_name] LIKE "%Manager%" AND [counter_name] = "Page life expectancy" 

skriv inn bildebeskrivelse her

I denne anledningen har jeg i mitt nåværende miljø en server som har 8 GB RAM, vil jeg be ledelsen for mer minne. Jeg tror dette er en minneflaskehals.

hva som bruker RAM, vil være en annen undersøkelse.

Er denne e-postadressen nedenfor gyldig for å identifisere mulige minneflaskehalser?

vi må se på SQLServer: Buffer Cache Hit ratio

Hvis dette forholdet er mindre enn 95% enn serveren er under minnetrykk

Håper dette hjelper,

skriv inn bildebeskrivelse her

Kommentarer

  • Ikke baser ditt forslag om minne på Buffer Cache hit ratio . Vennligst les Stor SQL Server-debatt om BCHR , fordi jeg aldri stoler på denne telleren. Du kan stole på PLE, men du må se PLE for alle NUMA-noder (hvis du har det)
  • PLE-verdien ser ut til å være veldig mindre, men andre tellere er fine. Du merket spørsmål med to versjoner, jeg kan gi deg en liste over tellere for å overvåke minnebruk, men siden det er to versjoner involvert, er det litt forskjell. Hvilken versjon ser du nøyaktig på

Svar

Vi må se på SQLServer: Buffer Cache Hit ratio. Hvis dette forholdet er mindre enn 95% enn serveren er under minnetrykk

Slutt å se på Buffer Cache hit ratio for å bestemme minnetrykk. Dette er fordi med Les videre mekanismen i SQL Server er det mer enn nok sider i bufferen for å tilfredsstille spørringen, slik at BCHR ikke gir nøyaktig figur om minnetrykk. Du kan til og med se at BCHR til og med ikke vil falle når det er minnetrykk. Alt dette har blitt forklart i Stor SQL Server-debatt om BCHR

PLE-utdata du la ut virker veldig lav, men vi kan ikke bare bruke en teller til måle minnetrykk. PLE er mer indikasjon på I / O-aktivitet på serveren. Det kan være mulig at på grunn av tung I / O-aktivitet falt PLE. Hvis du merker at Target og Total serverminne fortsatt er det samme. Noe som er godt tegn.

For Edition upto 2008 R2. Du kan bruke tellere nedenfor

  1. SQLServer: Buffer Manager – CheckpointPages / sec:

  2. SQLServer: Buffer Manager – Memory Grants Venter:

  3. SQLServer: Buffer Manager – Målserverminne:

  4. SQLServer: Buffer Manager – Totalt serverminne

  5. SQLServer: Buffer Manager – Gratis sider

  6. SQLServer: Buffer Manager – Free List Stall / sec

  7. SQLServer: Buffer Manager – Sidens forventede levetid

For SQL Server 2012 onwards få av Buffer Bassengteller er utfaset, og så må vi bruke Memory Manger-tellere

  1. SQL Server: Memory Manager – Target Server Memory (KB)

  2. SQL Server: Memory Manager – Total Server Memory (KB)

  3. SQL Server: Memory Manager- Free Memory (KB)

  4. SQL Server: Memory Manager – Database Cache Memory (KB)

  5. SQLServer: Buffer Manager – Gratis sider

  6. SQLServer: Buffer Manager – Free List Stall / sec

  7. SQLServer: Buffer Manager – Sidens forventede levetid

Merk at hvis du har tung diskaktivitet, ikke glem å henvise til diskrelaterte tellere også. Lag et datasamlersett og la det kjøre i 4-5 timer når belastningen på systemet er på topp, og legg deretter til øyeblikksbildet av datasamleren i spørsmålet ditt. Så kan vi avgjøre om SQL Server trenger mer minne eller ikke.

Personlig er 8G litt mindre RAM med tanke på arbeidsmengde og OS-krav i disse dager. På baksiden av hodet ditt bør du alltid tenke på å øke RAM.

Svar

vi må se på SQLServer: Buffercache Hit ratio

Hvis dette forholdet er mindre enn 95% enn serveren er under minnetrykk

Håper dette hjelper,

Dette er ikke noe som vil hjelpe deg med å bestemme minneflaskehalsen helt sikkert. Snarere det jeg foretrekker er å samle inn data for tellere nedenfor i det minste for en dag i løpet av tung belastning / arbeidstid.

Memory – Available MBytes SQLServer: Buffer Manager – Page Life Expectancy SQLServer: Memory Manager – Memory Grants Pending SQLServer: Memory Manager – Target Server Memory SQLServer: Memory Manager – Total Server Memory SQLServer: SQL Statistics – Batch Requests/sec SQLServer: SQL Statistics – Compilations/sec 

Det beste ville være Baseline SQL-serveren som foreslått Tilbake til det grunnleggende: Fange grunnlinjer for produksjons SQL Servere som også vil samle de nødvendige perfmon-tellere sammen med ventestatistikker for ethvert problem ..

Dessuten kan det hende at 8 GB RAM ikke er det som passer i dagens env, men igjen avhenger det belastningen på systemet sammen med størrelsen på databaser som er vert for forekomsten \ forekomster.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *