Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 15 von 15

Thema: Zu viele Updates/Insert macht Probleme mit WAL

  1. #11
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Nähe Dresden
    Beiträge
    5.337

    Standard

    Zitat Zitat von traxanos Beitrag anzeigen

    aber aus interesse würde mich das schon interessieren, weshalb das update über die uniquefelde (sind 4 ints cols) innerhalb von einer funktion so sau lahm ist.
    Nun, die Funktion wird bei der Erstellung geplant. Zu diesem Zeitpunkt weiß der Planner allerdings nicht, welche aktuellen Parameter im WHERE sind. Dies führt leider oft zu seq-scans bei der Abarbeitung.
    Abhilfe wäre hier vielleicht mittels EXECUTE 'dynamisches SQL'.

    Wenn Du so viele Insert/Updates hast, würde ich aber generell anders vorgehen: alles erst einmal via COPY in eine Import-Tabelle werfen und aus dieser mittels Insert und Update die Daten in die eigentliche Zieltabelle bringen. Das geht mit Sicherheit erheblich schneller.


    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  2. #12
    traxanos ist offline Benutzer
    Registriert seit
    27.05.2008
    Beiträge
    96

    Standard

    Nun, die Funktion wird bei der Erstellung geplant. Zu diesem Zeitpunkt weiß der Planner allerdings nicht, welche aktuellen Parameter im WHERE sind. Dies führt leider oft zu seq-scans bei der Abarbeitung.
    Abhilfe wäre hier vielleicht mittels EXECUTE 'dynamisches SQL'.
    achso na das erklärt einiges

    Wenn Du so viele Insert/Updates hast, würde ich aber generell anders vorgehen: alles erst einmal via COPY in eine Import-Tabelle werfen und aus dieser mittels Insert und Update die Daten in die eigentliche Zieltabelle bringen. Das geht mit Sicherheit erheblich schneller.
    Das hast du mir bereits in dem anderen Beitrag empfohlen und das habe ich auch zu Herzen genommen, habe mich aber bewusst erstmal dagegen entschieden. Optimierungenspotezial muss ich mir auch noch lassen Aktuell sieht alles sehr gut aus und ich sag mal vielen Dank für deine Bemühungen.

  3. #13
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.020

    Standard

    Da wirst du wohl mal ein EXPLAIN auf das Problem werfen müssen.

    Oh, und zu deinen Einstellungen: du solltest mehr Transaktionslogs haben, so im Bereich ab 20 oder 30.
    Dann sollte das Problem weggehen.

    Beobachten kannst du das im Log, indem du "log_checkpoints" auf "on" setzt.
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

  4. #14
    traxanos ist offline Benutzer
    Registriert seit
    27.05.2008
    Beiträge
    96

    Standard

    Da wirst du wohl mal ein EXPLAIN auf das Problem werfen müssen.
    Jo hab ich bereits gemacht und es wurde ein Tablescan gemacht wie akretschmer schon vermutet hatte.

    Oh, und zu deinen Einstellungen: du solltest mehr Transaktionslogs haben, so im Bereich ab 20 oder 30.
    Dann sollte das Problem weggehen.

    Beobachten kannst du das im Log, indem du "log_checkpoints" auf "on" setzt.
    Das ist ja nur eine Erstbefüllung und keine Regelbefüllung. Dort werden die Mengen bei ca. 60k liegen. Aber es schadet ja nicht 20 zu setzten außerdem das im Fehlerfall mehr Transaktionen rückgängig gemacht werden, oder?

    Wenn Du so viele Insert/Updates hast, würde ich aber generell anders vorgehen: alles erst einmal via COPY in eine Import-Tabelle werfen und aus dieser mittels Insert und Update die Daten in die eigentliche Zieltabelle bringen. Das geht mit Sicherheit erheblich schneller.
    Ich glaube ich werde nun doch den Weg gehen, da es mich doch reizt hier noch was an Geschwindigkeit raus zu kitzeln

  5. #15
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.020

    Standard

    Zitat Zitat von traxanos Beitrag anzeigen
    da es mich doch reizt hier noch was an Geschwindigkeit raus zu kitzeln
    Dafür sollte man aber mal das gesamte System untersuchen ;-)
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

Seite 2 von 2 ErsteErste 12

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum