|
|
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
У меня вот какой вопрос. Как удалить содержимое BLOBa? Как я понимаю, если в таблице sometbl имеется блоб-поле BLOB_field, то "delete from sometbl" или "alter... set BLOB_field=null ..." удаляет только ссылку. И при частых вставках/удалениях больших блобов размер файла базы очень быстро увеличивается. Вообщем, как можно решить эту проблему или где можно об этом узнать? Зараннее благодарен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2004, 10:50 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
автор"alter... set BLOB_field=null ..." удаляет только ссылку. Ась? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2004, 10:57 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
уменьшить размер базы можно только с помощью backup/restore ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2004, 10:59 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
ну если хочет человек ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2004, 11:25 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
2 srf2000: сенкс 2 Мимопроходящий: Ну разумеется не "alter...", а "update..." - просто очепятка ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 12:07 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
Ну почему. Есть еще один вариант кажется: 1. Сделать таблицу BLOBS(ID INTEGER, DAT BLOB SUB_TYPE 0 SEGMENT SIZE 80) 2. В таблице куда подвязываются данные вместо поля BLOB занести ID из таблицы BLOBS 3. Вместо чистки основной таблицы просто удалять запись из таблицы BLOBS, ну потом при желании можно еще мусор собрать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 12:37 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
2 Andrew Kruchinin авторну потом при желании можно еще мусор собрать А есть возможность динамически собирать мусор, не выполняя бекап? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 13:16 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
Мусор и так собирается автоматически . Если конечно, не предпринять некоторых дополнительных телодвижений, кои не рекомендуется проводить, без особой на то надобности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 13:20 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
И при частых вставках/удалениях больших блобов размер файла базы очень быстро увеличивается. Вот помнится, такая же проблема с MEMO - полями в FoxPro была. Не было повторного использования освобожденного пространства. И с перестройкой .CDX - файлов аналогично. Пока не сотрешь его нафиг и повторно не построишь. Тут нет такой траблы? (я BLOB - поля имею в виду) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 15:41 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
Например, имеется файл базы с начальным размером 1 М. Я добавляю в таблицу два блоба по 5 М. Соответственно размер файла становится 11 М. У удаляю эти два блоба. Потом опять добавляю один блоб размером 5 М. Размер файла становится 11+5=16 М. Можно ли записывать содержимое блобов на неиспользуемое место. Или это невозможно? И вообще, где можно взять информацию о том, как в интербейсе хранятся блобы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 15:42 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
Ну, блин, заинтересовал. Сейчас проведу эксперимент. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 15:58 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
>ils >Размер файла становится 11+5=16 М. "Это вряд ли" (с) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 16:04 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
автор>Размер файла становится 11+5=16 М. "Это вряд ли" (с) Легко! Место на страничках будет достопно для повторного использования только после того, как по ним пройдётся GC. А способов "оттянуть" сборку мусора предостаточно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 16:36 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
Проверил. Ты нас обманул. Я записал 10 песенок в формате .MP3 - база стала размером 32,1 мегов. Все стер. Записал еще 5 песенок по 3,5 мега - размер не изменился. Хотя, конечно, возможно некоторое увеличение и-за задействования внутренних механизмов оптимизации (например, сегментирование свободного пространства). Так что не надо лохматить бабушку. Удачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 16:38 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
А какая разница? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 16:44 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
Интересно, поэкспериментировал со значением PageSize. Когда установил 4096 вместо 1024 - скорость записи/извлечения Blob - полей увеличилась в разы. Интересно, как изменение SegmentSize повлияет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 16:54 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
Никак. Разве что только в том случае, если используемая тобой библиотека доступа обращает на него внимание. Я таких не знаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 16:56 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
А какое тогда значение SegmentSize устанавливать при проектировании? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 17:00 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
Монопенисуально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 17:00 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
Ну, попробовал, разницы действительно большой нет. Может, имеет смысл учитывать при записи большого числа не очень больших массивов данных в целях, чтобы дисковое пространство не так сильно использовалось? (Типа, если размер массива соизмерим с размером сегмента, и размер массива переменный) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 17:08 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
По умолчанию - 80 байт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 17:14 |
|
||
|
Как удалить BLOB?
|
|||
|---|---|---|---|
|
#18+
А вот тут по поводу чистки мосора после удаления есть инструкции. Кстати, по поводу добавления третьего файла - в какой транзакции добавлял? В этой же? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2004, 18:37 |
|
||
|
|

start [/forum/topic.php?fid=40&fpage=480&tid=1578981]: |
0ms |
get settings: |
5ms |
get forum list: |
8ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
42ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 258ms |
| total: | 363ms |

| 0 / 0 |
