За хората, които не изпитват огромно влечение към документацията на firebird ще го кажа по 2 начина (кратък и не толкова кратък:) ).
Краткия е - един backup/restore цикъл може да влее доста живот в базата (при база 170MB съм достигал разлика от рода на 5 пъти в изпълнението на някои операции).
За по-любознателните ще дам маалко повече обяснения за това какво се случва при този процес :
1 При backup се изтриват всички ненужни неща по базата и се свива чисто физическият обем на файла. За пример мога да дам база, която от 550MB пада до 510MB без допълнитени процедури. Въпросната база е в обект, който работи от преди официалното излизане на firebird 1.0 (по онова време имаше отворен interbase).
Възниква естествено въпроса - Защо чак тогава?
Дали сте забелязали, че един 4GB файл от NTFS изчезва преди да натиснете OK, но копирането му там е отнело доста повече време

При backup всичкия този "боклук" се събира.
2 Данните физически се дефрагментират. При нормална операция firebird заделя определено место. Използва го докато не остане опредлен свободен %, и заделя отново. В целия този процес малко или много се губи "плавността на потока".
3 При всяка преработка на поле в базата данни НЕ се променят.
"Това е абсурд?!?!" нали? Я си представете базата от 550(510) MB и ми кажете колко време ще трябва за физическото пренареждане при създаване/изтриване на колона? И аз така си мислех ...МНОГО

Реален ефект съм виждал с очите си до 5 пъти на 170MB база ...на по-големи нямам време да опитам
