Autor Téma: Čo je vhodnejšie UPDATE alebo INSERT  (Přečteno 949 krát)

Offline František

  • Guru
  • *****
  • Příspěvků: 519
  • Karma: 6
    • Verze Delphi: primárne v XE5, občas 10.2.3 comunity
Čo je vhodnejšie UPDATE alebo INSERT
« kdy: 21-01-2016, 15:29:51 »
V začiatkoch môjho projektu som používal UPDATE na aktualizáciu tabuliek, ale neskôr - už teraz mne z neznámeho dôvodu - som prešiel na systém DELETE a INSERT (aj keď boli zhodné - netestujem). A pýtam sa, čo je rýchlejšie. ... jedná sa o denný import cca 400.000 záznamov, 36 stĺpcov cca 4000  znakov UNICODE na záznam. teraz mi to robí i3 na 3,7GHz cca 35-45min, databaza je na SSD.

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 2594
  • Karma: 133
    • Verze Delphi: D2007, XE3, DX10
Re:Čo je vhodnejšie UPDATE alebo INSERT
« Odpověď #1 kdy: 21-01-2016, 21:23:09 »
V začiatkoch môjho projektu som používal UPDATE na aktualizáciu tabuliek, ale neskôr - už teraz mne z neznámeho dôvodu - som prešiel na systém DELETE a INSERT (aj keď boli zhodné - netestujem). A pýtam sa, čo je rýchlejšie. ... jedná sa o denný import cca 400.000 záznamov, 36 stĺpcov cca 4000  znakov UNICODE na záznam. teraz mi to robí i3 na 3,7GHz cca 35-45min, databaza je na SSD.
Pri update bys mel usetrit indexovani PK, ale zase muze byt vetsi overhead pri realokovani stranek. IMHO nejlepsi je to zmerit.
Jinak jak psal Stano: pro bulk inserty/updaty samozrejme transakce - cim delsi si muzes dovolit, tim lepsi. Jeji izolace zalezi na  rezimu v jakem se s DB pracuje po cas importu. A jsou-li nad daty indexy, tak je povypinat a zapnout po skonceni importu.