GNU/Linux >> Znalost Linux >  >> Panels >> Plesk

Proč SQL Standard/Enterprise nepoužívá příliš mnoho paměti RAM?

Proč SQL nevyužívá příliš mnoho paměti RAM? Windows má několik různých způsobů, jak mohou aplikace přidělovat paměť.
V SQL 2012 Express i v předchozích „placených“ edicích SQL Server, když SQL potřebuje RAM, použije běžný způsob vyžádání paměti. Díky tomu ukazuje vysoké využití paměti ve správci úloh, kde jste vy, já a většina lidí zvyklí hledat.
Nicméně v SQL Server 2012 „zaplaceno“ (Standard, Enterprise atd.), když SQL potřebuje RAM, může použít alokaci "AWE". což se nezobrazuje ve využití paměti procesu správcem úloh, pokud se však podíváte na zatížení serveru (karta Výkon), uvidíte, že se využívá mnohem více paměti, než uvádí seznam procesů.
K zobrazení „skutečného“ využití paměti z SQL používáme RAMMAP, protože SQL je jednou z mála aplikací, které provádějí alokaci AWE.
http://technet.microsoft.com/en-us/sysinternals/ff700229. aspx
Pokud se podíváte na RAMMAP a poté restartujete SQL (a obnovíte RAMMAP), uvidíte, že se alokace AWE uvolní.
Na základě nejlepších informací, které bylo možné získat od Microsoftu, důvod, proč Microsoft přešel na AWE bylo proto, že "běžná" paměť může být stránkována, ale paměť AWE může být uzamčena na skutečnou RAM. Použití AWE zabrání SQL v tom, aby požadoval tunu paměti RAM, pouze aby operační systém stránkul svou RAM zpět na disk. Zde je jako příklad snímek obrazovky alokací AWE před a po restartu SQL a snímek obrazovky správce úloh:Před: Po: Správce úloh:
Plesk
  1. Proč Centos stále nepoužívá nejnovější jádro

  2. Použití chown ke změně skupinového vlastníka adresáře není povoleno....Proč?

  3. Proč můj systém ukazuje jen 3,2 GiB RAM, když mám určitě 4,0 GiB

  1. Použití Ansible k nasazení Microsoft SQL Server 2019 na Red Hat Enterprise Linux 8

  2. Kolik RAM používá jádro?

  3. Proč neblokovat ICMP?

  1. Proč není CD program?

  2. Df vs. Du:Proč tolik rozdílů??

  3. Měření využití Ram programu?