KB3191487 – versioonides SQL Server 2014 ja 2016 täiustatud SQL Server stabiilsus ja samaaegne päringu täitmine.

Rakenduskoht
SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Sümptomid

Vaatame järgmist näidet.

  • Teil on tabel, mis sisaldab kobartulppdiagrammide indekseid ja tabelil on palju veerge (sadades).
  • Nende veergude andmed (andmetüüp) on väga tihendatavad andmed( nt varchar).
  • Selle tabeli jaoks suure alamhulga või kõigi veergude valimiseks käivitage selle tabeli suhtes SELECT-lause.
  • Teie select-lausel on WHERE-klausel, mis piirab väljundi vaid mõne reaga (päring on väga valikuline).

Selle stsenaariumi puhul võib ilmneda mõni järgmistest sümptomitest.

  • Samaaegne töökoormus (muud päringud, mis käivitatakse serveris selle päringuga samal ajal) võivad jõudluse ja läbilaskevõime väheneda.
  • Võite näha aeg-ajalt suurt protsessorikasutust.
  • Kui esitate päringu sys.dm_os_ring_buffers ja vaatate schedulerMonitori tüüpi kirjeid, leiate selle päringu täitmise ajal aeg-ajalt logitud "mittesaavutava ajasti" teated.
  • Tõrkelogis võidakse kuvada mittesisaldav ajastitõrge ja võidakse luua sümptomaatiline mälutõmmisefail.

        
      

Lahendus

Probleem lahendati esmalt järgmises SQL Server koondvärskenduses:

Soovitus: installige SQL Server uusim koondvärskendus

Iga uus koondvärskendus SQL Server sisaldab kõiki kiirparandusi ja kõiki turbeparandusi, mis olid kaasatud eelmise koondvärskenduse. Soovitame teil alla laadida ja installida SQL Server uusimad koondvärskendused.

      

Veel teavet

Üksikasjade parandamineTöölised, kes töötlevad veerusegmente (lahtipakkivad ja otsivad sobivaid ridu), mida kasutatakse protsessorikasutuse toomiseks teistele töötajatele/samaaegsetele päringute käivitamisele, kui väljastati teatud läve arv ridu. Kui WHERE-klausel oli väheste ridade tootmiseks väga valikuline, töötlesid seda päringut töötlevad töötajad tihendamata ja suurt hulka segmente (kuna kvalifitseeruvad väga vähesed read), enne kui nad loobusid CPU-st koostöö kaudu, et teised töötajad saaksid oma töökoormust töödelda. See põhjustas samaaegse töökoormuse ebaregulaarse protsessorikasutuse ja läbilaskevõime halvenemise. Parandus optimeerib ja parandab CPU ühiskasutuse algoritmi selliste veergude talletamise päringute jaoks.

Viited

Lisateave Microsofti tarkvaravärskenduste terminoloogia kohta.