Mam bardzo ogólne pytanie:Czy duże transakcje mają liniowo lub wykładniczo rosnący koszt wydajności/zasobów?
1.) Biorąc pod uwagę, że mam transakcję (w mysql), która obejmuje modyfikację dziesięciu- lub stu tysięcy, a nawet milionów rekordów. Czy taka transakcja jest liniowo kosztowna w porównaniu z bardzo "małą" transakcją? Czy duże transakcje pochłoną wykładniczo więcej zasobów niż mała transakcja? (Mówiąc innymi słowami, należy ich unikać).
2.) Czy to prawda, że po dokonaniu tak dużej transakcji obciążenie mysql przeskoczy do bardzo wysokiej wartości, dopóki transakcja nie zostanie całkowicie przetworzona?
Pytanie dotyczy głównie MySQL, ale jeśli istnieje serwer "o wiele lepszy", byłoby ciekawie o nich usłyszeć. I tak, serwer/system ma sporo obciążenia z innych procesów (więc nie jest to jedyna transakcja przetwarzana w systemie = średnia/wysoka rywalizacja). Poziomy izolacji to "wyższe/najwyższe" poziomy izolacji (które przynoszą wszystkie korzyści z rzeczywistych transakcji).
Dziękuję bardzo
Wyobrażam sobie, że wykorzystywany SILNIK jest również czynnikiem dobrej odpowiedzi. (Może być dobrze dodać do posta.) –
Myślę, że nie zależy to tylko od wielkości transakcji, ale także od jej [poziomu izolacji] (http://dev.mysql.com/doc/refman/5.0/ pl/set-transaction.html) i współbieżność z innymi wątkami, jeśli transakcja jest * przekształcalna do postaci szeregowej * lub * do odczytu powtarzalnego *. To jest dobre pytanie i jestem zainteresowany widząc również odpowiedzi. – Benjamin