Als «optimization» getaggte Fragen

Im Kontext einer Datenbank bezieht sich Optimierung auf den Prozess des Abfrageoptimierers, der einen effizienten physischen Ausführungsplan auswählt.

2
Warum ist das schneller und sicher zu bedienen? (WO der erste Buchstabe im Alphabet steht)
Kurz gesagt, wir aktualisieren kleine Personentabellen mit Werten aus einer sehr großen Personentabelle. In einem kürzlich durchgeführten Test dauert die Ausführung dieses Updates ca. 5 Minuten. Wir sind auf die scheinbar albernste Optimierung gestoßen, die scheinbar perfekt funktioniert! Dieselbe Abfrage wird jetzt in weniger als 2 Minuten ausgeführt und führt …

1
Welche Regeln bestimmen, wann SQL Server einen CTE als „Optimierungszaun“ verwendet?
Vor einiger Zeit veröffentlichte Brent Ozar einen Beitrag, in dem einige der Unterschiede zwischen SQL Server und PostgreSQL beschrieben wurden: Zwei wichtige Unterschiede zwischen SQL Server und PostgreSQL Der erste Punkt („CTEs sind Optimierungszäune“) ist mir aufgefallen, da es offensichtlich ist, dass SQL Server im bereitgestellten Beispiel den CTE und …


1
Wird B-Tree beim Löschen von Daten aus der SQL Server-Tabelle mit einem Clustered-Index neu ausgeglichen?
Ich habe eine Tabelle in einer SQL Server-Datenbank mit einem Clustered-Index für den Primärschlüssel. Die Tabelle enthält 1 Million Zeilen. Wenn ich 10K-Zeilen aus der Tabelle lösche, wird der Index während des Löschvorgangs umstrukturiert? Der Löschvorgang ist Teil der gespeicherten Prozedur. Es kann gleichzeitig mehr als ein Client die gespeicherte …



1
Die Typkonvertierung im Ausdruck kann sich auf "CardinalityEstimate" bei der Auswahl des Abfrageplans auswirken.
Ich verwalte eine Archivdatenbank, in der historische Daten in partitionierten Ansichten gespeichert werden. Die Partitionierungsspalte ist eine Datums- / Uhrzeitangabe. In jeder Tabelle unter der Ansicht werden Daten für einen Monat gespeichert. Wir beschränken die Ereignisse für jede Tabelle mit einer Prüfbeschränkung für die datetime-Spalte. Auf diese Weise kann der …


2
Postgres JOIN-Bedingungen vs WHERE-Bedingungen
Postgres Neuling hier. Ich frage mich, ob diese Abfrage optimiert ist oder nicht. Ich habe versucht, nur die Werte zu verbinden, die zu 100% erforderlich sind, und alle dynamischen Bedingungen in der WHERE-Klausel zu belassen. Siehe unten. SELECT * FROM myapp_employees JOIN myapp_users ON myapp_users.user_id=myapp_employees.user_id JOIN myapp_contacts_assoc ON myapp_contacts_assoc.user_id=myapp_users.user_id JOIN …

3
Self-Join auf Primärschlüssel
Betrachten Sie diese Abfrage, die aus NSelf-Joins besteht: select t1.* from [Table] as t1 join [Table] as t2 on t1.Id = t2.Id -- ... join [Table] as tN on t1.Id = tN.Id Es wird ein Ausführungsplan mit N Cluster-Index-Scans und N-1-Zusammenführungsverknüpfungen erstellt. Ehrlich gesagt sehe ich keine Gründe, nicht alle …

1
Anhaltende berechnete Spalte, die einen Scan verursacht
Das Konvertieren einer regulären Spalte in eine persistierte berechnete Spalte führt dazu, dass diese Abfrage keine Indexsuchen durchführen kann. Warum? Getestet auf mehreren SQL Server-Versionen, einschließlich 2016 SP1 CU1. Repros Mit einer berechneten Spalte Mit einer regulären Spalte Das Problem ist mit table1, col7. Die Tabellen und Abfragen sind eine …

3
Der Ausführungsplan verwendet NICHT INDEX, sondern den Tabellenscan
Ich weiß, wenn es um die Verwendung eines Index- oder Tabellenscans geht, verwendet SQL Server Statistiken, um festzustellen, welcher besser ist. Ich habe eine Tabelle mit 20 Millionen Zeilen. Ich habe einen Index für (SnapshotKey, Measure) und diese Abfrage: select Measure, SnapshotKey, MeasureBand from t1 where Measure = 'FinanceFICOScore' group …

5
Einen Scan bekommen, obwohl ich eine Suche erwarte
Ich muss eine SELECTAnweisung optimieren , aber SQL Server führt immer einen Index-Scan anstelle einer Suche durch. Dies ist die Abfrage, die sich natürlich in einer gespeicherten Prozedur befindet: CREATE PROCEDURE dbo.something @Status INT = NULL, @IsUserGotAnActiveDirectoryUser BIT = NULL AS SELECT [IdNumber], [Code], [Status], [Sex], [FirstName], [LastName], [Profession], [BirthDate], …


2
MySQL: delete… where..in () vs delete..from..join und gesperrte Tabellen beim Löschen mit subselect
Haftungsausschluss: Bitte entschuldigen Sie mein mangelndes Wissen über Datenbank-Interna. Hier kommt's: Wir führen eine Anwendung aus (nicht von uns geschrieben), die bei einem regelmäßigen Bereinigungsjob in der Datenbank ein großes Leistungsproblem aufweist. Die Abfrage sieht folgendermaßen aus: delete from VARIABLE_SUBSTITUTION where BUILDRESULTSUMMARY_ID in ( select BUILDRESULTSUMMARY_ID from BUILDRESULTSUMMARY where BUILDRESULTSUMMARY.BUILD_KEY …

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.