Als «query-performance» getaggte Fragen

Bei Fragen zur Verbesserung der Leistung und / oder Effizienz von Datenbankabfragen.


1
Unerwünschte Nestschleife vs. Hash Join in PostgreSQL 9.6
Ich habe Probleme mit der Abfrageplanung für PostgreSQL 9.6. Meine Anfrage sieht folgendermaßen aus: SET role plain_user; SELECT properties.* FROM properties JOIN entries_properties ON properties.id = entries_properties.property_id JOIN structures ON structures.id = entries_properties.entry_id WHERE structures."STRUKTURBERICHT" != '' AND properties."COMPOSITION" LIKE 'Mo%' AND ( properties."NAME" LIKE '%VASP-ase-preopt%' OR properties."CALCULATOR_ID" IN (7,22,25) …

1
Langsame Bestellung von SQL Server
In meiner Anwendung habe ich eine Abfrage, die eine Suche in der Tabelle "files" durchführt. Die Tabelle "files" ist durch "f". "Created" partitioniert (siehe Tabellendefinition) und hat ~ 26 Millionen Zeilen für den Client 19 ("f". "Cid = 19). Der Punkt hier ist, wenn ich diese Abfrage mache: SELECT "f"."id" …


3
Sehr langsame einfache JOIN-Abfrage
Einfache DB-Struktur (für ein Online-Forum): CREATE TABLE users ( id integer NOT NULL PRIMARY KEY, username text ); CREATE INDEX ON users (username); CREATE TABLE posts ( id integer NOT NULL PRIMARY KEY, thread_id integer NOT NULL REFERENCES threads (id), user_id integer NOT NULL REFERENCES users (id), date timestamp without …

2
Kann ich diese Abfrage umgestalten, damit sie parallel ausgeführt wird?
Ich habe eine Abfrage, deren Ausführung auf unserem Server ungefähr 3 Stunden dauert - und die Parallelverarbeitung wird nicht ausgenutzt. (ungefähr 1,15 Millionen Datensätze in dbo.Deidentified, 300 Datensätze in dbo.NamesMultiWord). Der Server hat Zugriff auf 8 Kerne. UPDATE dbo.Deidentified WITH (TABLOCK) SET IndexedXml = dbo.ReplaceMultiWord(IndexedXml), DE461 = dbo.ReplaceMultiWord(DE461), DE87 = …


1
Die Leistung von postgres_fdw ist langsam
Die folgende Abfrage für einen Fremdcode dauert ungefähr 5 Sekunden und wird in 3,2 Millionen Zeilen ausgeführt: SELECT x."IncidentTypeCode", COUNT(x."IncidentTypeCode") FROM "IntterraNearRealTimeUnitReflexes300sForeign" x WHERE x."IncidentDateTime" >= '05/01/2016' GROUP BY x."IncidentTypeCode" ORDER BY 1; Wenn ich dieselbe Abfrage für eine normale Tabelle ausführe, wird sie in 0,6 Sekunden zurückgegeben. Die Ausführungspläne …

1
So optimieren Sie eine Abfrage so, dass sie zuerst einen Index und danach einen anderen Index durchsucht
Ich habe zwei Sätze von Erdmessungen aus Satellitendaten, jeweils mit Zeitfeldern (mjd für Mean Julian Date) und geografischen Positionen (GeoPoint, Spacial), und ich suche nach Übereinstimmungen zwischen den beiden Sätzen, so dass ihre Zeiten mit einem Schwellenwert von übereinstimmen 3 Stunden (oder .125 Tage) und deren Entfernungen bis zu 200 …

2
Eine effiziente Möglichkeit, zwei große Datensätze in SQL zu vergleichen
Derzeit vergleiche ich zwei Datensätze, die eindeutige StoreKey/ProductKeyKombinationen enthalten . Der 1. Datensatz enthält die eindeutigen StoreKey/ProductKeyKombinationen für Verkäufe zwischen Anfang Januar 2012 und Ende Mai 2014 (Ergebnis = 450.000 Zeilen). Der 2. Datensatz enthält die eindeutigen StoreKey/ProductKeyKombinationen für den Verkauf ab Juni 2014 bis heute (Ergebnis = 190.000 Zeilen). …


3
Warum ist eine aggregierte Abfrage mit einer GROUP BY-Klausel wesentlich schneller als ohne?
Ich bin nur neugierig, warum eine aggregierte Abfrage mit einer GROUP BYKlausel so viel schneller ausgeführt wird als ohne. Die Ausführung dieser Abfrage dauert beispielsweise fast 10 Sekunden SELECT MIN(CreatedDate) FROM MyTable WHERE SomeIndexedValue = 1 Während dieser dauert weniger als eine Sekunde SELECT MIN(CreatedDate) FROM MyTable WHERE SomeIndexedValue = …

2
Wie kann DISTINCT ON in PostgreSQL schneller gemacht werden?
Ich habe eine Tabelle station_logsin einer PostgreSQL 9.6-Datenbank: Column | Type | ---------------+-----------------------------+ id | bigint | bigserial station_id | integer | not null submitted_at | timestamp without time zone | level_sensor | double precision | Indexes: "station_logs_pkey" PRIMARY KEY, btree (id) "uniq_sid_sat" UNIQUE CONSTRAINT, btree (station_id, submitted_at) Ich versuche …


2
Warum wird eine DELETE-Abfrage in einem Format viel länger ausgeführt als in einem anderen?
Ich habe einen speziellen Bereinigungscode, der versucht, einige Duplikate zu entfernen. Dies läuft auf vielen Kundenstandorten perfekt. Aus den Protokollen geht hervor, dass diese Abfrage mindestens 1 bis 45 Sekunden dauert: DELETE FROM [tbl] WHERE [Id] NOT IN ( SELECT MIN([Id]) FROM [tbl] GROUP BY [IdProject], [IdRepresentative], [TimeStart] ) Aber …

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.