Subject Re[2]: [firebird-support] Re: backup very slow and how often sweep a database ?
Author Dmitry Kuzmenko
Hello, Vander!

Tuesday, December 20, 2011, 6:22:54 PM, you wrote:

VCS> thanks dmitry !

>> What is the size of database?

VCS> 120 GB

one of our client have ~118gb database,
and performance is much better than yours. Since that database have
~300 concurrent users, they paid attention to the storage, and bought
new raid (md3220 from dell with 8 or 12 hard drives).
Now they have
sweep - from 5 to 40 minutes, depending on garbage amount
restore - ~7 hours
backup - ~2 hours

VCS> ok thanks now i will do like this. Run Sweep only if OIT < next
VCS> transaction + 20000

formula is incomple :-)
look at
http://www.ib-aid.com/articles/item66

there are explanation of relation between Oldest, Oldest snapshot,
oldest active and next transaction.

>> yes, up to 2-4 times faster. we made tests 3 years ago and found that.
VCS> hmm i not understand why ?

when gbak runs itself, it also makes backup by itself, telling
server to read the data. So, here is "intercommunication" between
2 processes - gbak and server.

when backup/restore is made via services api (or by gbak -se option),
it is being done by server itself, so, only 1 process involved.
Thus, no "intercommunication", and speed is faster.

VCS> everyday the difference between oldest transaction and next transaction
VCS> grow by more than 20 000 :(

Then you need to check transaction management in your applications.
First task is to eliminate long running transactions whenever
possible, or use read read committed transactions for reading
(they do not affect garbage collection).

--
Dmitry Kuzmenko, www.ib-aid.com