13.01.2011 14:39, Viktor Belzetskiy пишет:

Повторяю серию тестов на базе меньшего размера и рядом измерений.

На меньшем размере не так интересно, файловый кеш будет по-другому влиять.

Тест1
1. nbackup.exe -u sysdba -p masterkey -D OFF -B 0
localhost:e:\test_db\retail.fdb e:\test_db\retail_0_1.nbk
2. Удаление данных

Тест2
1. Удаление данных
2. Запуск nbackup.exe -u sysdba -p masterkey -D OFF -B 0
localhost:e:\test_db\retail.fdb e:\test_db\retail_0_1.nbk

Оба процесса (фб и нбекап) читают базу через файловый кеш. Получается это у них неплохо вроде бы.

Тест3 (без ключа -D OFF)
1. Удаление данных
2. nbackup.exe -u sysdba -p masterkey -B 0
localhost:e:\test_db\retail.fdb e:\test_db\retail_0_1.nbk

Тест4
1. nbackup.exe -u sysdba -p masterkey -D ON -B 0
localhost:e:\test_db\retail.fdb e:\test_db\retail_0_1.nbk
2. Удаление данных

Эти два варианта делают одно и тоже, на винде у нбекапа режим direct_io по дефолту ON. НБекап читает файл БД напрямую с диска, фб-сервер - через кеш.

Иногда это работает быстрее, иногда наоборот. Зависит от версии виндов и размера базы. Кроме того, приоритеты у всех разные - кому-то надо быстрее бекап выполнить, а кому-то - чтобы он не сильно мешал работать. Поэтому и сделали этот ключ доступным.


--
Дмитрий Еманов

Ответить