powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Nbackup. Размер инкрементного бэкапа
17 сообщений из 17, страница 1 из 1
Nbackup. Размер инкрементного бэкапа
    #39854871
Atanas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый вечер,

Мы делаем через nbackup бэкап 0-го уровня по утрам. И потом каждый час бэкап 1-го уровня.
При размере БД 100Гб, один-два раза в месяц размер инкрементного бэкапа 1-го уровня может стать 50Гб. Причем сделанного через 3-4 часа от нулевого.
Есть ли возможность выяснить причину? Таблиц размером в половину БД у нас нет, самая большая, думаю не более 10%.
Обновлений кучи таблиц одновременно тоже не делаем. Но размер бэкапа говорит что происходит что-то очень нехорошее...
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39854877
Atanas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SS x64, ver: 3.0.3.32900
Размер страницы: 16K
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39854879
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atanas,

ну если ткнуть пальцем в небо. Автоматический sweep между этими бекапами не запускается случайно?
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39854956
Atanas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денис,

Да, Sweep запускается в обед, когда народу немного.
Получается он способен половину страниц БД пометить?
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39854994
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atanas,

видимо, не надо делать нбэкап 0 уровня, когда в базе застряла активная транзакция, в результате чего по всей базе куча версий.

Инкремент всегда содержит те страницы, которые менялись относительно предыдущего уровня. Если этих страниц пол-базы, значит пол-базы менялось.
Я вообще видел систему, в которой 3-4 раза в день менялись ВСЕ данные.
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39855011
Atanas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kdv,

Понял, спасибо. Но нулевой и инкрементные нам нужны. Поэтому хочу попробовать такую тактику.
1. Утром перед бэкапом 0-го уровня отстреливаю коннекты с write-транзакциями более получаса;
2. Запускаю сборку мусора;
3. Запускаю бэкап 0-го уровня.

А read-транзакции тоже при делах могут быть?
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39855035
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atanas,

read - нет, они меняют только tip и header page, а этих страниц мало.

В принципе, тактика с "отстрелом" имела бы смысл, если бы 50% базы не модифицировались. Но они так или иначе модифицируются.
Sweep же не просто так меняет флаг страницы на swept, если убрал там мусор. А если там был мусор, значит там были версии, значит данные на этих страницах менялись.

Впрочем, тактика хорошая - по крайней мере здесь точно по размерам инкрементов уровня 1 будет ясно, когда происходят массовые обновления "всего".
Но всё равно, я писал об этом тут
http://www.ibase.ru/files/firebird/nbackup_ru.pdf
если одна страница менялась 50 раз, то в инкремент запишется только одна эта страница.
если 50 страниц менялось хотя бы 1 раз, то в инкремент запишутся 50 страниц.

p.s. кстати, якобы было, что в 3.0 после рестора все страницы содержат флаг swept = false, в результате первый свип проходит по всей базе, и меняет вообще все страницы БД. Я вот не помню, сейчас это поправили. Видимо нет, ибо
C:\Firebird3\gbak -c e.fbk e.fdb

C:\Firebird3>nbackup -b 0 e.fdb e.nb0
time elapsed 0 sec
page reads 315
page writes 315

C:\Firebird3>gfix -sweep e.fdb

C:\Firebird3>nbackup -b 1 e.fdb e.nb1
time elapsed 0 sec
page reads 110
page writes 110


То есть, после рестора запуск sweep приводит к обновлению всех страниц БД в базе. В результате чего инкремент после свипа будет максимальным.
Вполне может быть, что у вас страниц данных в базе как раз 50%. Остальное - индексы и прочее.
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39855036
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvв 3.0 после рестора все страницы содержат флаг swept = false, в результате первый свип проходит по всей базе, и меняет вообще все страницы БД.Да, так и есть
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39855037
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv,

не "всех страниц в базе", а всех страниц данных, хотя после рестора там нет ни версий ни мусора.
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39855038
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad,

в IB это как-то победили. То есть, при ресторе у страниц данных swept=true.
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39855039
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvhvlad,

в IB это как-то победили. То есть, при ресторе у страниц данных swept=true.Возможно, они вообще не хранят этот флаг на DP.
Я буду рассматривать этот вариант на следующую ODS.
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39855045
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad,

http://docwiki.embarcadero.com/InterBase/2017/en/What's_New
" First Sweep of a Restored Database is now a Fast Sweep

With InterBase 2017, any database that you restore is immediately marked as swept, therefore the first sweep of that database is a fast sweep. In order to take advantage of this feature, you need to perform a database restore with InterBase 2017 and use either ODS 15 or ODS 16. See Sweep Interval and Automated Housekeeping for more information about sweeping. "

Отсюда не очень понятно, но "now a fast sweep" как бы намекает.
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39855061
Atanas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денис, kdv, hvlad

Спасибо! Как проверю, отпишусь.
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39855076
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atanas2. Запускаю сборку мусора;

А Вы уверены, что вам нужен этот костыль для кривой работы с транзакциями в приложении?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39855092
Atanas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

Пока нужен. Не все отловили и исправили.
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39855341
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atanas, kdv

ну значит моя догадка про swept флаг верна
...
Рейтинг: 0 / 0
Nbackup. Размер инкрементного бэкапа
    #39862157
Atanas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо за участие!
Три недели полет нормальный. С момента настройки больше огромных бэкапов не было.
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Nbackup. Размер инкрементного бэкапа
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]