KB4057280 – PATAISA: didelis CPU naudojimas, kai atminčiai optimizuotos lentelės užklausoje naudojamas didelis indeksas „SQL Server“

Taikoma
SQL Server 2016 Service Pack 1 SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2017 Developer SQL Server 2017 Enterprise SQL Server 2017 Enterprise Core 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)

Požymiai

Apsvarstykite šį scenarijų:

  • Atminties internetinių operacijų apdorojimą (OLTP) naudojate "Microsoft „SQL Server“ 2017", 2016 ir 2014 m.
  • Vykdote užklausą atminčiai optimizuotoje lentelėje, kurioje yra didelis indeksas.

Tokiu atveju, jei naudosite didelį indeksą vykdydami užklausą, CPU naudojimas gali labai greitai išaugti iki 100 procentų. Jei turite daugiau nei vieną loginį procesorių, tik vieno iš procesorių naudojimas gali greitai išaugti iki 100 procentų.

Priežastis

Ši problema kyla dėl to, kad atminties OLTP šiukšlių surinkimas gali ilgai užtrukti, jei vykdant užklausą naudojamas didelis indeksas.

Sprendimas

Ši problema išspręsta šiuose kaupiamuosiuose "„SQL Server“" naujinimuose:

4 kaupiamasis naujinimas, skirtas „SQL Server“ 2017

7 kaupiamasis naujinimas, skirtas „SQL Server“ 2016 SP1

2 kaupiamasis naujinimas, skirtas „SQL Server“ 2014 SP3

Atkreipkite dėmesį Įdiegę šį naujinimą, turite įgalinti sekimo vėliavėlę (TF) 9945, kad išspręstumėte šią problemą. Norėdami įgalinti TF 9945, žr. temą Sekimo vėliavėlės (Transact-SQL) "Microsoft" programų kūrėjų tinkle (MSDN).

Apie "„SQL Server“" kaupiamuosius naujinimus:

Kiekviename naujame „SQL Server“ kaupiamajame naujinime yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo įtrauktos į ankstesnį kaupiamąjį naujinimą. Peržiūrėkite naujausius "„SQL Server“" kaupiamuosius naujinimus:

Naujausias "„SQL Server“ 2017" kaupiamasis naujinimas

Naujausias kaupiamasis naujinimas, skirtas „SQL Server“ 2016

Naujausias "„SQL Server“ 2014" kaupiamasis naujinimas

Būsena

„„Microsoft““ patvirtino, kad tai yra „„Microsoft““ produktų, išvardytų dalyje „Taikoma“, problema.

Nuorodos

Sužinokite daugiau apie terminus, kuriuos „„Microsoft““ naudoja apibūdindama programinės įrangos naujinimus.