Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.07;
Скачать: CL | DM;

Вниз

IBase   Найти похожие ветки 

 
dmi-vancev ©   (2003-03-16 01:19) [0]

Мастера нужен совет!
Размер базы данных постоянно увеличивается!!!
Программа следит за всеми записями и периодически удаляет
самые старые, таким образом в БД храняться данные только
за определённый диапазон времени + удалённые(помечанные записи).
На сегодняшний момент Администратору БД периодически
приходиться делать SWEEP-BUCKUP-RESTORE - ну очень долго, а главное неудобно, так клиетнские программы постоянно-непрерывно
работают с БД и их приходится принудительно отключать.
Мастера, может есть трюк? или IBASE :( или ...


 
Alexandr ©   (2003-03-16 08:25) [1]

достаточно только sweep делать.
Тогда старые ненужные версии записей будут очищаться и место из-под них будет отдаваться новым записям.
Объем застабилизируется.
Или у вас винт маленький? Тогда это клиника.


 
y-soft ©   (2003-03-16 08:38) [2]

Чем меньше размер страницы, тем медленнее растет объем. Но и скорость работы уменьшается


 
y-soft ©   (2003-03-16 08:42) [3]

Backup/Restore все же делать периодически надо, хотя бы для того, чтобы иметь резервные копии базы


 
Alexandr ©   (2003-03-16 08:56) [4]

для резервных копий базы достаточно backup


 
y-soft ©   (2003-03-16 08:59) [5]

Restore позволяет избавиться от мусора и автоматически исправляет некоторые ошибки


 
y-soft ©   (2003-03-16 09:01) [6]

Кроме того во всех руководствах настоятельно рекомендуется делать контрольный Restore после Backup


 
y-soft ©   (2003-03-16 09:04) [7]

>>Restore позволяет избавиться от мусора и автоматически >>исправляет некоторые ошибки

Следует читать:

Backup/Restore позволяет избавиться от мусора и автоматически исправляет некоторые ошибки



 
Alexandr ©   (2003-03-16 09:07) [8]

кто бы спорил....


 
dmi-vancev ©   (2003-03-16 16:53) [9]

SWEEP - это замечательно, но на мой взгляд он проблеммы не снимает:
1. SWEEP - занимает продолжительное время и ресурсы у сервера,что ОЧЕНЬ замедляет работу клиентских приложений, что в нашем случае непреемлемо;
2. Где гарантии того, что база не будет расти пусть и медлеенно, даже при периодических SWEEP? т.е. без BUCKUP-RESTORE не обойтись ?:(


 
Alexandr ©   (2003-03-17 06:12) [10]


> SWEEP - это замечательно, но на мой взгляд он проблеммы
> не снимает:
> 1. SWEEP - занимает продолжительное время и ресурсы у сервера,что
> ОЧЕНЬ замедляет работу клиентских приложений, что в нашем
> случае непреемлемо;


юзай yaffil, выдели время специальное для sweep


> 2. Где гарантии того, что база не будет расти пусть и медлеенно,
> даже при периодических SWEEP? т.е. без BUCKUP-RESTORE не
> обойтись ?:(


:) а с храна-ли она расти будет, если количество данных не меняется. Вообще и sweep делать необязятельно - при выборках он сам худо-бедно делаться будет....
А вообще все зависил от порядка, в том числе и в головах...


 
dmi-vancev ©   (2003-03-18 01:01) [11]

Привет, Alexandr :)
Был бы порядок, я бы тебя не звал !
Реально прирост БД состовляет 15 Мб в сутки.
Система удаляет "старые" записи и добавляет новые.
Выборка данных происходит не реже записи данных.
Настройки сервера - SWEEP на 20000.
Добавление данных: INSERT или UPDATE.
Теперь смотри :))) удалили 100 записей, а изменили (UPDATE) - 1000, количество данных меньше а,вот объёмчик вырос!!!.
Или Вот:
1. DATA.GDB ->33 898 496 байт
2. SWEEP DATA.GDB ->33 898 496 байт
3. DELETE FROM DATA WHERE DATA_DATE<"01.02.2003"->47 443 968 байт
о как подросли!
4. BACKUP-RESTORE-> 34 844 672 !:O (тоже фокус)
5. RESTORE-> 33 894 496 :), вот теперь вроде порядок.
Буду рад, если поможешь!


 
Rad ©   (2003-03-18 05:19) [12]

См http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1047932551&n=1


 
Alexandr ©   (2003-03-18 07:27) [13]


> Привет, Alexandr :)
> Был бы порядок, я бы тебя не звал !
> Реально прирост БД состовляет 15 Мб в сутки.


это реально в нынешней ситуации. Увы.

> Система удаляет "старые" записи и добавляет новые.

это хорошо, что работает.


> Настройки сервера - SWEEP на 20000.

а вот это лучше отключить в 0 от греха подальше.



> Добавление данных: INSERT или UPDATE.


логично. А как же по-другому



> Теперь смотри :))) удалили 100 записей, а изменили (UPDATE)
> - 1000, количество данных меньше а,вот объёмчик вырос!!!.


сервер не удаляет и не обновляет - он создает НОВЫЕ ВЕРСИИ записей, поэтому объем растет. Но если эти версии окажется никому не нужными (т.е. нет заинтересованных в них транзакций), то при сборке мусора (хоть теневой - при последущем select или backUp с выключенным "disable garbage collection"), хоть явной - при sweep) место, занятое старыми версиями записей пометится как свободное и будет использовано в будущем под новые версии записей.
Обращаю внимание - размер файла не уменьшится, но в файле появятся пустые места, в которые будут писаться новые записи.


> 1. DATA.GDB ->33 898 496 байт
> 2. SWEEP DATA.GDB ->33 898 496 байт

естественно. Размер файла никогда не уменьшается. (backup - restore не рассматриваем, т.к. это пересоздание БД)


> 3. DELETE FROM DATA WHERE DATA_DATE<"01.02.2003"->47 443
> 968 байт
> о как подросли!


конечно. Версий записей стало больше их же надо куда-то писать.
И как только все заитересованные в старых версиях записей (которые были запущены ранее delete и не были завершены) закончатся, так первый же селект пометит эти версии как ненужные и место станет свободным, для последующего занятия новыми значениями.


> 4. BACKUP-RESTORE-> 34 844 672 !:O (тоже фокус)
> 5. RESTORE-> 33 894 496 :), вот теперь вроде порядок.


после backup\resore старых версий записей нет, естественно. База становится девственно чистой.

Накдеюсь, понятно объяснил.
тебе еще поможет
www.ibase.ru



Страницы: 1 вся ветка

Текущий архив: 2003.04.07;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.015 c
7-19893
Alexandr3
2003-02-12 23:48
2003.04.07
Как распечатать...


14-19832
Bboy
2003-03-20 19:58
2003.04.07
Вопрос по Ворду


1-19646
Мария В.
2003-03-25 17:07
2003.04.07
Можно ли из Delphi создавать отчеты в OpenOffice?


7-19902
Alex Shulg
2003-02-14 09:32
2003.04.07
NT Service & CreateProcess


1-19649
Мыш
2003-03-25 10:44
2003.04.07
рисование