Als «memory-grant» getaggte Fragen

3
Zu viel Arbeitsspeicher gewährt
Warum wird dieser einfachen Abfrage so viel Speicherplatz eingeräumt? -- Demo table CREATE TABLE dbo.Test ( TID integer IDENTITY NOT NULL, FilterMe integer NOT NULL, SortMe integer NOT NULL, Unused nvarchar(max) NULL, CONSTRAINT PK_dbo_Test_TID PRIMARY KEY CLUSTERED (TID) ); GO -- 100,000 example rows INSERT dbo.Test WITH (TABLOCKX) (FilterMe, SortMe) …

1
Wann warnt SQL Server vor einer übermäßigen Speicherzuweisung?
Unter welchen Bedingungen wird eine Warnung zum Ausführungsplan "Übermäßige Gewährung" ausgegeben? Die Speicherzuweisung für Abfragen hat "ExcessiveGrant" festgestellt, was sich auf die Zuverlässigkeit auswirken kann. Zuschussgröße: anfänglich 5128 KB, endgültig 5128 KB, verwendet 16 KB. SSMS Plan Explorer Showplan xml <Warnings> <MemoryGrantWarning GrantWarningKind="Excessive Grant" RequestedMemory="5128" GrantedMemory="5128" MaxUsedMemory="16" /> </Warnings>


2
Große Speichergewährungsanforderungen
Ich habe eine Abfrage mit mehreren Ausführungsplänen. Der einem Plan zugewiesene Speicher ist im Vergleich zum zweiten sehr groß basierend auf diesem Artikel https://blogs.msdn.microsoft.com/sql_server_team/addressing-large-memory-grant-requests-from-optimized-nested-loops/ Das Problem tritt auf, wenn die äußere Tabelle des Nested-Loop-Joins ein Prädikat enthält, das das Ergebnis nach einer kleinen Eingabe filtert, die Stapelsortierung jedoch anscheinend eine …
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.