Ich sehe extrem niedrige Verarbeitungszeiten nach einem Postgres-Upgrade von 9.5 auf 9.6 im Zusammenhang mit Abfragen Osmosis (die Befehlszeilen-Java-Anwendung für die Verarbeitung von OpenStreetMap-Daten). Spezifische Synchronisierung einer lokalen Osm-Datenbank mit dem Master-Osm-Repo (Postgis 2.3 von 2.2). Die Synchronisation fand jeden Tag statt und dauerte durchschnittlich etwa 500 Sekunden. Nach dem Upgrade, nach 48 Stunden, ist es noch nicht vorbei. Ich bemerke sehr langsam (unter Null) Objektverarbeitungszeiten (Log-Record unten) im Vergleich zu vorher. Ich bin ziemlich sicher, dass das Problem mit dem Postgres-Update ist. Ich kann nicht herausfinden, was ich reparieren soll. pg_stat_activity gibt die folgende Abfrage (derzeit):Extrem langsame Abfrageausführung nach Postgres 9.6 Upgrade
UPDATE ways w
SET linestring = (
SELECT ST_MakeLine(c.geom) AS way_line
FROM (
SELECT n.geom AS geom
FROM nodes n
INNER JOIN way_nodes wn ON n.id = wn.node_id
WHERE (wn.way_id = w.id)
ORDER BY wn.sequence_id) c)
WHERE w.id IN (
SELECT w.id
FROM ways w
INNER JOIN way_nodes wn ON w.id = wn.way_id
WHERE wn.node_id = $1
GROUP BY w.id)
Log Rekord nach dem Update:
Oct 31, 2017 12:23:59 PM org.openstreetmap.osmosis.core.Osmosis run
INFO: Osmosis Version 0.45
Oct 31, 2017 12:24:00 PM org.openstreetmap.osmosis.core.Osmosis run
INFO: Preparing pipeline.
Oct 31, 2017 12:24:00 PM org.openstreetmap.osmosis.core.Osmosis run
INFO: Launching pipeline execution.
Oct 31, 2017 12:24:00 PM org.openstreetmap.osmosis.core.Osmosis run
INFO: Pipeline executing, waiting for completion.
Oct 31, 2017 12:24:16 PM org.openstreetmap.osmosis.core.progress.v0_6.ChangeProgressLogger process
INFO: Processing Node 26022046 with action Modify, 0.06660006660006661 objects/second.
Oct 31, 2017 4:12:49 PM org.openstreetmap.osmosis.core.progress.v0_6.ChangeProgressLogger process
INFO: Processing Node 26022047 with action Modify, 7.292125918680253E-5 objects/second.
Oct 31, 2017 6:54:27 PM org.openstreetmap.osmosis.core.progress.v0_6.ChangeProgressLogger process
INFO: Processing Node 26022053 with action Modify, 1.0311411856040729E-4 objects/second.
Oct 31, 2017 9:39:22 PM org.openstreetmap.osmosis.core.progress.v0_6.ChangeProgressLogger process
INFO: Processing Node 26022056 with action Modify, 1.0106204077408672E-4 objects/second.
Nov 01, 2017 5:07:11 AM org.openstreetmap.osmosis.core.progress.v0_6.ChangeProgressLogger process
INFO: Processing Node 26022057 with action Modify, 3.72178939465691E-5 objects/second.
Nov 01, 2017 7:43:20 AM org.openstreetmap.osmosis.core.progress.v0_6.ChangeProgressLogger process
INFO: Processing Node 26022058 with action Modify, 1.0673723278600615E-4 objects/second.
Log Datensatz vor dem Update:
Oct 22, 2017 11:00:01 PM org.openstreetmap.osmosis.core.Osmosis run
INFO: Osmosis Version 0.45
Oct 22, 2017 11:00:02 PM org.openstreetmap.osmosis.core.Osmosis run
INFO: Preparing pipeline.
Oct 22, 2017 11:00:02 PM org.openstreetmap.osmosis.core.Osmosis run
INFO: Launching pipeline execution.
Oct 22, 2017 11:00:02 PM org.openstreetmap.osmosis.core.Osmosis run
INFO: Pipeline executing, waiting for completion.
Oct 22, 2017 11:00:17 PM org.openstreetmap.osmosis.core.progress.v0_6.ChangeProgressLogger process
INFO: Processing Node 557521 with action Modify, 0.06700616456714018 objects/second.
Oct 22, 2017 11:00:22 PM org.openstreetmap.osmosis.core.progress.v0_6.ChangeProgressLogger process
INFO: Processing Node 49820266 with action Modify, 58.15347721822542 objects/second.
Oct 22, 2017 11:00:27 PM org.openstreetmap.osmosis.core.progress.v0_6.ChangeProgressLogger process
INFO: Processing Node 81804664 with action Modify, 40.64719810576164 objects/second.
Oct 22, 2017 11:00:32 PM org.openstreetmap.osmosis.core.progress.v0_6.ChangeProgressLogger process
INFO: Processing Node 109690032 with action Modify, 24.57577530719719 objects/second.
Oct 22, 2017 11:00:38 PM org.openstreetmap.osmosis.core.progress.v0_6.ChangeProgressLogger process
INFO: Processing Node 124684125 with action Modify, 58.35490938060148 objects/second.
Welche Methode haben Sie zum Aktualisieren verwendet - pg_upgrade? Wenn ja, haben Sie nach dem Upgrade einen ANALYSE in der Datenbank durchgeführt? – harmic
Danke für den Kommentar. Ja. Es war pg_upgrade. Und nein, habe keine ANALYSE durchgeführt. Ich werde es versuchen. –
'pg_upgrade' erstellt eine Shell-Skript/Batch-Datei namens' analyze_new_cluster', die genau dafür gedacht ist –