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

Итак:
Тестовый сервер
4-х ядерный Intel I5 3.6ГГц
Intel Matrix (soft) RAID 0 6HDD 2Тb (пиковые линейные (HDTune) чтение/запись 700/400 МБ/с) Все кеширование включено
Память 8Г

ПО
Операционка Win2008 R2 x64
FB V2.5.0.26074 CS Win32 (DefaultDbCachePages = 4096)
База 54G (размер страницы 16К)
Мониторинг Iarsn TasckInfo

Описание процесса тестирования.
Систему ничего не загружает кроме указанных задач.
Система и Win SWAP находитмся на отдельном физическом диске.
Все базы и их бекапы на другом RAID-диске
Из базы удаляем 100млн записей и запускаем Nbackup 0-го уровня.
Смотрим загрузку ядра процессом Nbackup.ехе (норминуем значение для 100% поскольку система на 4-х ядрах) Например TasckInfo показывает 25% для процесса Nbackup.ехе - это означает что Nbackup.ехе грузит свое ядро на 100% Нагрузку дисковой подсистемы смотрим тем же TasckInfo но уже для всей системы целиком Перед каждым тестом базу всегда восстанавливаем из backup-а (nbackup.exe -u sysdba -p masterkey -R localhost:e:\test_db\retail.fdb e:\test_db\retail_0.nbk) Время выполнения восстановления 4м 40с (нагрузка дисковой подсистемы 200-300 м/с) что равно файловому копированию.
Размер создаваемого дельтатафла ~9Гб

Удаление данных происходит в отдельном коннекте.

Сначала запускается шаг1, после паузы в 5 секунд шаг 2.

Тест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. Удаление данных


Результат1
Загрузка процесса Nbackup 8-12%
Дисковый I/O во время создания копии 100-200мб/с
Загрузка FB-процесса удаления данных 40-60%.
Дисковый I/O во время сброса дельтафайла 30-40мб/с
Время работы Nbackup до момента сброса дельтафайла (запуска FB процесса) 7m 20s
Время сброса дельтафайла 5m 07s
Время удаления данных 11m 14s
ВНИМАНИЕ: Синхронное завершение процесса сброса дельтафайла и процесса удаления данных.

Тест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


Результат2 приблизительно аналогичный Результат1


Тест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 3а. После ожидания 22 минут закрываем коннект в котором происходило удаление данных


Результат3
Загрузка процесса Nbackup: начало 60% - конец ~100%
Загрузка FB-процесса удаления данных: начало 15% конец 8%.
Дисковый I/O во время создания бекапа: начало 100мб/с конец 10мб/с
Рост нагрузки на проц и падение I/O линейное на протяжении всего этапа


... Данные удалились с коммитом. Коннект не закрываем. Время удаления данных 15m 13s. ... Прошло 22 минуты с момента старта теста, т.е. 7 мин после завершения удаления данных бекап прошел на 60%.
Загрузка процесса Nbackup 100%
Дисковый I/O 9м/с

... Надоело !!! Закрываем коннект в котором происходило удаление данных
Дисковый I/O 200-300мб/с
Загрузка процесса Nbackup 20%
Время работы Nbackup до момента сброса дельтафайла (запуска FB процесса) 27m 37s (т.е. за 5 мин прошло остальных 40% бекапа)

... Сброс дельтафайла
Время сброса дельтафайла 4m
Загрузка FB-процесса сброса дельтафайла: 20-30%
Дисковый I/O 60-80Мб/с

Тест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. Удаление данных

Результат4 приблизительно аналогичный Результат3


Тест5
1. nbackup.exe -u sysdba -p masterkey -L localhost:e:\test_db\retail.fdb
2. Удаление данных
3. Копировани базы на тот-же диск с помощью FAR

Результат4
Загрузка FB-процесса удаления данных: 20%
Скорость копирования базы 100-150мб/с
Время копирования 8m 50s

... После копирования файла
Загрузка FB-процесса удаления данных: 80%

Время удаления данных 13m 33s



Ответить