Sümptomid
Oletagem, et kasutate Microsoft SQL Server 2014. Võivad ilmneda järgmised kaks probleemi, mis sisalduvad SQL Server 2014 Väljalaske märkmetes.
-
Puuduv indeksi üksikasjade valesti aru sisaldas veerge mälu optimeeritud tabeliprobleem: kui SQL Server 2014 tuvastab puuduva indeksi päringule mälu optimeeritud tabelis, kuvatakse showplan_xml puuduv indeks ning puuduv indeks DMVs (nt sys.dm_db_missing_index_details). Mõnel juhul sisaldavad puuduvate indeksite üksikasjad kaasatud veerge. Kuna kõik veerud on vaikimisi kaasatud kõik indeksid mälu optimeeritud tabelitesse, pole lubatud selgesõnaliselt määrata kaasatud veerge, kus on mäluga optimeeritud indeksid.
-
Puuduvate indeksite andmed puuduvad indeksid, kui räsi indeks on olemas, kuid see ei sobi päringuprobleemiks: kui teil on päringus viidatud mälu optimeeritud tabeli veergudes Hash indeksit, kuid registrit ei saa päringu jaoks kasutada, ei teata SQL Server 2014 alati puuduvast indeksist showplan_xml ja DMV sys.dm_db_missing_index_details. Kui päring sisaldab ka võrdsuse valikupredikaatide, mis hõlmavad indeksi võtme veergude alamhulka või kui see sisaldab ebavõrdseid valikupredikaatide, mis sisaldavad indeksi võtme veerge, siis ei saa te HASH-indeksit kasutada, kuna see on vajalik, et päringut tõhusalt täita.
Põhjus
Probleemid ilmnevad seetõttu, et päringu optimeerija puuduv indeksi loogika ei erista tavapäraste rühmitamata indeksite kettal asuvaid tabeleid ja uute indeksite tüüpi mälu optimeeritud tabelite jaoks.
Lahendus
Probleemid parandati esmalt järgmise SQL serveri kumulatiivse värskendusena.
Kumulatiivne Update 1 SQL Server 2014 /en-us/help/2931693
Iga uus koondvärskenduses SQL Server sisaldab kõiki käigultparandused ja kõik turvaparandusi, mis kuulusid eelmise koondvärskenduse. Vaadake SQL serveri kumulatiivseid värskendusi.
Lahendus
Nende probleemide lahendamiseks kasutage järgmisi lahendusi.
-
Probleemi lahendamine: puuduva indeksi üksikasjade puudumisel kuvatakse valesti lisatud veerud mälu optimeeritud tableDo pole määratud LISAMA klausel indeksid mälu optimeeritud tabeleid.
-
Probleemi lahendamine: puuduva indeksi andmed puuduvad indeksid, kui Hash indeks on olemas, kuid see ei sobi queryIn juhul, kui kasutate Hash indeksid, uurige päringute ja päringu plaanid, et teha kindlaks, kas päringuid saab indeksite otsimiseks kasutada indeks võtme alamhulga või indeks otsida toiminguid ebavõrdsuse valikupredikaatide. Kui teil on vaja otsida registri võtme alamhulga, kasutage kas RÜHMITAmata indeksit või kasutage täpselt neid veerge, mida teil on vaja otsida. Kui teil on vaja otsida ebavõrdset põhjust, kasutage HASHe asemel RÜHMITAmata indeksit.
Märkus. Ajutised lahendused on pärit SQL Server 2014 Väljalaske märkmetest
Olek
Microsoft on kinnitanud, et see probleem esineb jaotises "kehtib järgmiste toodete kohta" loetletud Microsofti toodetes.