Сжатие базы 1С 8.3

1. podder 10.03.23 15:50 Сейчас в теме
Добрый день. Выгрузка базы 1С 808 МБ. База простая, самописная - хранит список документов-карточек. Снес 3/4 документов, провел "Тестирование и исправление", тут же сделал выгрузку базы - опять 808 МБ. База крутится на MS SQL, что я пропустил? По идее, она должна была ужаться как минимум вдвое.
Галка "Сжатие базы данных" в окне "Тестирования и исправления" отсутствует.
Спасибо.
По теме из базы знаний
Найденные решения
8. user856012 14 10.03.23 23:31 Сейчас в теме
(1)
хранит список документов-карточек
А что за "карточки", какая у них природа? Если сканы или картинки, то, может быть, документы удалились, а сохраненные изображения - остались.

По хорошему, надо бы проверить размер всех таблиц базы до и после выгрузки с помощью какой-нибудь обработки типа:
https://infostart.ru/public/169499/
https://infostart.ru/public/609070/
https://infostart.ru/public/1060195/
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. lefthander 10.03.23 16:33 Сейчас в теме
(1)
По идее, она должна была ужаться как минимум вдвое.
Поясните Вашу идею.
3. RustamZz 10.03.23 18:18 Сейчас в теме
(1) Какую цель преследуете?
8. user856012 14 10.03.23 23:31 Сейчас в теме
(1)
хранит список документов-карточек
А что за "карточки", какая у них природа? Если сканы или картинки, то, может быть, документы удалились, а сохраненные изображения - остались.

По хорошему, надо бы проверить размер всех таблиц базы до и после выгрузки с помощью какой-нибудь обработки типа:
https://infostart.ru/public/169499/
https://infostart.ru/public/609070/
https://infostart.ru/public/1060195/
4. podder 10.03.23 21:57 Сейчас в теме
Я хочу уменьшить размер выгрузки dt, это первое, ну и размер базы данных. Я так предполагаю, что эти величины взаимосвязаны, верно?
5. RustamZz 10.03.23 22:12 Сейчас в теме
(4) Ну на цель это не тянет. Да и 808 МБ это совсем немного. Сейчас пустые типовые столько весят
Прикрепленные файлы:
10. -AI- 12.03.23 14:06 Сейчас в теме
13. podder 13.03.23 07:05 Сейчас в теме
11. user1863362 12.03.23 14:26 Сейчас в теме
(4)
предполагаю, что эти величины взаимосвязаны
Верно. Но вот почему ты думаешь, что связаны равенством, а не каким либо другим отношением сравнения - пока неизвестно.
6. podder 10.03.23 23:09 Сейчас в теме
Хотелось бы понять другое: почему после удаления 3/4 документов база "не похудела"?
7. XAKEP 10.03.23 23:23 Сейчас в теме
что я пропустил....?

Теорию о скл и автоувеличении.
И да .Теорию о размере чистой конфигурации и со снятым "замком".

И вашу конфу никто никогда в глаза не видел на инфостарте.
Гадалки не здесь.
9. podder 10.03.23 23:59 Сейчас в теме
Есть тексты, небольшие. Файлов нет.
Размеры таблиц проверю, спасибо.
12. user1863362 12.03.23 14:28 Сейчас в теме
(9) Запусти MSSMS. Подключись, выбери базу, нажми на ней правую кнопку мыши. Выбери в контекстном меню "Properties". Посмотри на страницу "General", группу "Database", значения "Size" и "Space Available". Подумай.
14. podder 20.07.23 21:38 Сейчас в теме
Руки дошли до проверки, но опять не понимаю поведения базы данных.

Я проверил размер файлов. Больше всего размера занимала таблица с файлами. Именно там сосредоточилось 75% объема.

Ок. Я навалял обработку, которая все файлы пережала. 1С-сжатие помогло не везде, некоторые файлы уменьшились всего на 15%, но есть и такие, который "стухли" на 2/3 размера. Жму "Выгрузить" и получаю...файл выгрузки того же самого размера, что и ДО сжатия. Даже больше на 1-2 МБ (хотя объем файлов внутри базы должен был усохнуть минимум на 20%).

Применил тестирование и исправление со сжатием (тест провожу на файловой базе) - ноль результата.

Я так понял, лекарство - только хранение файлов в файловой системе ИЛИ я что-то не так сделал (опять)?

Сжимал так: выдрал ДвоичныеДанные из реквизита с типом Хранилище, а потом записал туда же с Новый "СжатиеДанных(9)".
16. GeraltSnow 182 21.07.23 11:04 Сейчас в теме
(14)
Жму "Выгрузить" и получаю...файл выгрузки того же самого размера, что и ДО сжатия. Даже больше на 1-2 МБ (хотя объем файлов внутри базы должен был усохнуть минимум на 20%).


При выгрузке в DT содержимое базы и так жмется хорошим алгоритмом. Каким образом можно ещё сильнее сжать сжатый файл? А по поводу того, что после сжатия внутренностей выгрузка становится больше - разве никогда не пробовал помещать в архив другой архив и сравнивать размер получившегося файла с исходным?
17. podder 21.07.23 13:50 Сейчас в теме
(15)
Насчет SQL: учту, но меня больше интересует вопрос, почему в ФАЙЛОВОМ варианте разницы нет. Конечно, я тот еще нубяра, и представляю так: если новые данные в Хранилище значений заняли меньше места - и занимаемое место в БД должно уменьшится. В моем случае этого не происходит. Где-то пробел в знаниях, видимо, может, кто натолкнет на ликбез.

(16)
Речь идет о "взять из базы файл, например, 500 КБ, сжать до 250 КБ, снова поместить его в реквизит. Итоговый размер объекта на диске не уменьшился. Вот этого я не могу понять.

Я уже созрел и переделал хранение на "в файловой системе", но мне сам вопрос интересен, почему так?
Возможно, это связано как-то с резервированием места под изначальный файл? Ведь я достаю из базы файл 500 КБ, потом сжимаю и записываю обратно уменьшенный размер. Но записываю в уже созданный объект.
18. GeraltSnow 182 21.07.23 14:19 Сейчас в теме
(17) Файл базы сам по себе не уменьшится после изменения объема данных в меньшую сторону. Для уменьшения физически занимаемого файлом этой базы места нужно делать сжатие через тестирование и исправление, если база файловая, или шринк, если клиент-серверная. При сжатии происходит перестроение таблиц, можно сказать данные начинают храниться на диске друг за другом без пробелов.

И ещё раз - при выгрузке базы в DT не важно в сжатом или в не сжатом виде изначально были данные в базе - результат будет одинаковым, потому что при выгрузке автоматически сожмется всё, что могло быть сжато. А что итак было сжато - до меньшего размера не сожмется.

P.S. Вообще расширение DT расшифровывается как Data Transfer. Этот формат предназначен исключительно для перехода между файловым и клиент-серверным вариантом работы. Использовать его для бэкапов не рекомендуется, о чем написано на ИТС, потому что платформа при выгрузке данных в файл DT не гарантирует, что из этого файла можно будет загрузить данные обратно. Битые DT совсем не редкое явление.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот