Optimierung einer Postgres PDS Datenbank

Da unser PDS System teilweise recht unperformant reagiert hat – und das trotz eines hervorragenden Hardware-Setups – habe ich begonnen die Performance zu analysieren.

Im ersten Step habe ich die Datenbank unter die Lupe genommen.  Eine Postgres Datenbank im Windows Server Umfeld.

Hier bin ich schnell auf die ersten Probleme gestossen. Eine Reindexierung der Datenbank findet hier zu keinem Zeitpunkt statt. Also habe ich ein Windows Batch Script geschrieben, welches die Indexierung der Datenbank vornimmt. Hier können einzelne Tabellen – oder aber die komplette Datenbank Reindexiert werden.

@echo off
echo Reindexierung der PDS Datenbank von Daniel Nowak daniel@nowak-it.com
echo DatenbankUser:
set /p user=
echo Welche Tabelle soll reindexiert werden (A fuer alle)
set /p table=
if "%table%"=="A" ( 
 echo Reindexierung aller Tabellen gestartet
*:\***\"pds Software"\***\pgsql\bin\reindexdb.exe -d pdserp -U %user%
) 
else ( 
 echo Reindexierung der Tabelle %table% gestartet
 *:\***\"pds Software"\***\pgsql\bin\reindexdb.exe -d pdserp -U %user% -t %table%
)

Erstes Ergebnis: Nach Reindexierung der Produkte Tabelle waren die Indexes von 6,8 GB auf 1,9 GB geschrumpft.

Eine deutliche Verbesserung der Performance war im Anschluss beim Laden der Artikel zu sehen!

SCORE!!!

Als nächstes kümmere ich mich um die Auslagerung der DMS Datenbank, hier kann ich viel teuren SSD Speicher sparen ::)

More to come soon



Schreibe einen Kommentar