Wie teuer sind Transactions auf Sybase?



  • Hallo,

    habe hier gerade einen Import der diesem Muster abläuft:

    lese/parse zeile.
    Schaue in DB
    begin transcation
    insert/update
    commit transaction
    

    Frage mich jetzt, ob es nicht besser ist, erstmal alle Zeilen auszulesen, und dann auf einmal in die DB zu schreiben, anstatt dies Zeilenweise zu tun.
    Auch frage ich mich, wie sich die vielen Begin/Commit/Rollback Transactions auswirken.



  • Allgemein würde das mehr Zeit kosten jedes Statement in einer Transaktion zu packen, bei "alle Stmts in einer XAct" sammeln sich viele Undo-Informationen an. Das Optimum liegt irgendwo in der Mitte. Kannst Du die Daten so gruppieren das immer Blöcke zu 100-1000 Stmts von einer XAct gekapselt werden? Alternativ kannst du mal schauen ob es Direkt-Ladewerkzeuge gibt die das SQL-Parsen umgehen können wie z.B. Direct-Path in Oracle.



  • Ja, das wäre wohl zu klären. Muss nochmal einen guten Blick auf das SQL Log nehmen, und den entsprechenden Code anschauen.


Anmelden zum Antworten