База 1С:Документооборота разрослась: что удалять и в каком порядке

· 10 мин

Содержание

Очистить 1С:Документооборот от лишних файлов и данных можно в четыре хода: удалить помеченные объекты, убрать старые версии файлов, вынести файлы из базы в тома на диске и сократить служебные данные (журнал регистрации, историю версий объектов). Главный объём почти всегда дают файлы: в типичной базе ДО они занимают больше места, чем все документы и справочники вместе.

Поэтому начинайте не с удаления документов, а с измерения. Сначала узнайте, что именно раздуло базу, и только потом чистите. Иначе легко потратить вечер на удаление тысячи черновиков и выиграть 200 МБ из 80 ГБ.

С чего начать: измеряем, что занимает место

Без цифр очистка превращается в угадайку. Есть три способа понять, куда ушли гигабайты.

📊 Средствами платформы. С версии платформы 8.3.15 есть метод ПолучитьРазмерДанныхБазыДанных(). Он возвращает размер данных по указанным объектам метаданных. Администратор или программист запускает его из внешней обработки и получает таблицу «объект → объём».

🗄 Средствами СУБД. Для клиент-серверной базы на MS SQL Server размеры таблиц показывает стандартный отчёт «Disk Usage by Top Tables» в SQL Server Management Studio. Имена таблиц там служебные (_Reference45, _InfoRg1234). Сопоставить их с объектами 1С помогает метод ПолучитьСтруктуруХраненияБазыДанных().

💾 По размеру каталогов. Если файлы уже лежат в томах на диске, просто посмотрите размер папок томов. Это быстрее всего.

Что обычно оказывается в лидерах:

  • 📎 таблицы присоединённых файлов и их версий;
  • 📝 журнал регистрации (хранится отдельно, в каталоге 1Cv8Log рядом с базой или в каталоге кластера);
  • 🕓 история изменений объектов (версии объектов);
  • 🔍 индекс полнотекстового поиска;
  • ✉️ встроенная почта, если ею активно пользуются.

Запишите исходные цифры: размер базы, размер томов, размер журнала регистрации. После очистки сравните. Так вы увидите, какой шаг дал результат, и в следующий раз начнёте с него.

Удаление помеченных объектов: как работает «корзина» ДО

В Документообороте, как и в других программах на 8.3, удаление идёт в два этапа. Пользователь ставит на документ, файл или элемент справочника пометку на удаление. Объект остаётся в базе, в списке он перечёркнут. Пока пометка стоит, её можно снять, и объект вернётся в работу.

Физически объекты удаляет обработка «Удаление помеченных объектов». В конфигурациях на БСП она открывается из раздела администрирования, группа Обслуживание. Если не найдёте её в меню, наберите название в поиске по командам интерфейса.

Как пройти удаление без сюрпризов:

  1. Попросите пользователей завершить работу или выберите время, когда нагрузка минимальна.
  2. Откройте обработку и выберите режим с выборочным удалением, чтобы видеть список.
  3. Просмотрите, что попало в список. Иногда пометку ставят по ошибке на нужный договор.
  4. Запустите удаление.
  5. Разберите объекты, которые не удалились. Обработка покажет, на что они ссылаются, и где они используются.

Объект не удаляется, если на него есть ссылки. Пример: помечен вид документа «Служебная записка», а в базе 3 000 служебок этого вида. Пока они существуют, вид документа удалить нельзя. Это защита, а не сбой.

Удаление помеченных объектов необратимо. Вернуть удалённое можно только из резервной копии. Сделайте копию базы перед первым запуском, особенно если пометки копились годами и никто их не проверял.

Хранилище файлов и версии: где прячутся гигабайты

Каждое сохранение файла в ДО создаёт новую версию. Договор, который юрист правил 15 раз, хранится в базе 15 раз. При вложениях по 5 МБ это уже 75 МБ на один документ. Отсюда и рост базы на десятки гигабайт в год.

Удаление старых версий файлов

Версии видны в карточке файла, на закладке или в списке версий. Ненужные промежуточные версии можно пометить на удаление вручную и затем удалить обработкой из предыдущего раздела. Текущую версию программа не даст удалить, пока файл существует.

Для массовой очистки в актуальных редакциях на БСП 3.x есть настройка очистки ненужных файлов. Она удаляет устаревшие версии по правилам: например, версии старше заданного срока. Ищите её в настройках работы с файлами в разделе администрирования. Настройка запускается вручную или регламентным заданием.

Какие правила разумны на практике:

Тип файловЧто оставлятьКомментарий
Договоры и ОРДвсе версииспорные редакции могут понадобиться в суде
Входящая корреспонденцияпоследнюю версиюправок обычно нет
Внутренние черновики, служебкиверсии за 6–12 месяцевдальше не нужны
Сканы с повторным распознаваниемпоследнюю версиюкопии одного скана

Перенос файлов из базы в тома

Если файлы хранятся прямо в информационной базе, она растёт быстрее всего, а резервная копия становится тяжёлой. Правильная схема — хранить файлы в томах на диске, а в базе держать только ссылки.

Порядок такой:

  1. Создайте каталог для тома на сервере. Если сервер 1С работает под отдельной учётной записью (например, USR1CV8), дайте ей полный доступ к каталогу.
  2. В разделе администрирования откройте настройки работы с файлами и включите хранение файлов в томах на диске.
  3. Создайте том хранения файлов: укажите путь (для сервера — сетевой путь вида \\fileserver\DO_Volumes\Vol01) и, при желании, максимальный размер.
  4. Запустите перенос файлов из базы в тома. Это отдельная команда рядом с настройками томов.
  5. После переноса сожмите базу (см. раздел про технические методы), иначе освободившееся место останется внутри файлов СУБД.

Тома не входят в выгрузку .dt и в бэкап SQL-базы. После переноса копируйте базу и каталоги томов вместе и в один момент времени. Копия базы без томов — это копия без файлов.

Регламентные задания: очистка без ручного труда

Ручную очистку раз в год быстро забывают. Надёжнее настроить регламентные задания, которые работают по расписанию. Список открывается в разделе администрирования: Обслуживание → Регламентные операции → Регламентные и фоновые задания.

Что стоит проверить в списке:

  • 🗑 Удаление помеченных объектов по расписанию. В БСП можно включить автоматическое удаление помеченных объектов. Удобно, если в базе дисциплина и пометки ставят осознанно. Если нет — оставьте ручной режим с просмотром списка.
  • 📎 Очистка ненужных файлов. Применяет правила удаления устаревших версий.
  • 🕓 Очистка устаревших версий объектов. Удаляет историю изменений карточек старше заданного срока.
  • 🔍 Обновление и слияние индекса полнотекстового поиска. Индекс сам по себе не чистится, но без слияния он разрастается из множества мелких частей.
  • 📄 Извлечение текста. Нужно для поиска по содержимому файлов. Если поиск по тексту файлов не используется, задание можно отключить и сэкономить место и ресурсы сервера.

Расписание тяжёлых заданий ставьте на ночь или выходные. Удаление тысяч объектов днём заметно тормозит работу пользователей.

В клиент-серверной базе регламентные задания выполняет сервер 1С. Проверьте, что для базы не установлена блокировка регламентных заданий в свойствах информационной базы в консоли кластера, иначе расписание будет красивым, но ничего не запустится.

Регламентная очистка настроена, если
Выполнено: 0 / 6

Архив и «холодное» хранение старых документов

Не всё старое нужно удалять. Часть документов закон обязывает хранить годами. Здесь работают два механизма: холодное хранение файлов и законное уничтожение дел.

Холодное хранение файлов

Документы прошлых лет открывают редко. Хранить их на быстром SSD дорого. Практичный приём:

  1. Создайте новый том на быстром диске и поставьте его первым в порядке заполнения.
  2. Старому тому задайте максимальный размер, равный текущему. Новые файлы в него больше не попадут.
  3. Перенесите каталог старого тома на медленное и дешёвое хранилище и поправьте путь в настройках тома.

Файлы остаются доступны из карточек документов, просто открываются чуть медленнее. Перенос каталога делайте в нерабочее время: пока путь не исправлен, пользователи получат ошибку при открытии старых файлов.

Уничтожение дел по истечении сроков

Удалять из ДО документы, которые входят в номенклатуру дел, правильно через делопроизводство, а не обработкой удаления. В Документообороте документы раскладываются по делам номенклатуры, у каждой статьи номенклатуры есть срок хранения.

Когда срок истёк, экспертная комиссия отбирает дела к уничтожению, оформляется акт о выделении дел к уничтожению. Только после этого документы удаляют из базы. Сроки берут из перечня типовых управленческих документов, утверждённого приказом Росархива № 236, и из отраслевых перечней.

Что удаляемКаким способом
Черновики, дубли, ошибочно созданные карточкипометка на удаление + удаление помеченных
Документы в деле с истёкшим сроком храненияакт о выделении к уничтожению, затем удаление
Документы постоянного или длительного храненияне удаляем, переносим файлы в «холодный» том

Удаление документа, срок хранения которого не истёк, — нарушение правил архивного хранения. Отвечать за это будет организация, а не программа.

Технические методы очистки базы данных

После удаления объектов и переноса файлов база на диске может не уменьшиться. Место освобождается внутри файлов, а не возвращается операционной системе. Для этого нужны технические операции.

Файловая база

В Конфигураторе: Администрирование → Тестирование и исправление, флажок «Сжатие таблиц информационной базы». Операция требует монопольного доступа: все пользователи должны выйти из базы. Перед запуском сделайте копию каталога базы.

Клиент-серверная база на MS SQL

Сжатие выполняют средствами СУБД:

-- имя базы замените на своё
USE DO_PROD;
DBCC SHRINKDATABASE (DO_PROD);

После сжатия индексы фрагментируются, поэтому следом перестройте их. Удобнее всего настроить план обслуживания в SQL Server Management Studio с перестроением индексов и обновлением статистики. Сжатие делайте разово после крупной чистки, а не по расписанию: регулярный shrink лишь гоняет файл туда-обратно.

Журнал регистрации

Журнал регистрации живёт отдельно от базы и может весить десятки гигабайт. Сократить его можно в Конфигураторе: Администрирование → Журнал регистрации, команда сокращения с выбором даты, до которой удалить записи. Там же можно выгрузить удаляемые записи в файл, если их нужно сохранить.

Чтобы журнал не рос снова, уменьшите уровень детализации. Для рабочей базы обычно хватает регистрации ошибок и предупреждений, без всех событий.

Поиск дублей и мусора в справочниках

Дубли не столько занимают место, сколько мешают работе: два «ООО Ромашка» в справочнике, письма разнесены по обоим, поиск выдаёт половину переписки.

В конфигурациях на БСП есть обработка «Поиск и удаление дублей». Она находится в разделе администрирования, в группе корректировки данных. Порядок работы:

  1. Выберите справочник: контрагенты, физические лица, корреспонденты.
  2. Задайте правило сравнения: наименование по похожести, ИНН на точное совпадение.
  3. Просмотрите найденные группы и выберите в каждой оригинал.
  4. Запустите замену. Ссылки на дубли во всех документах заменятся на оригинал, а дубли пометятся на удаление или удалятся сразу.

Для контрагентов ищите по ИНН и КПП, а не только по наименованию. «Ромашка ООО» и «ООО “Ромашка”» по тексту похожи слабо, а по ИНН совпадают точно.

Отдельный вид мусора — одинаковые файлы, прикреплённые к разным карточкам. Типовой отчёт по дублям файлов есть не во всех редакциях. Если нужно найти такие файлы, программист может сравнить их по размеру и контрольной сумме внешней обработкой. Удалять их стоит осторожно: каждая копия может быть юридически самостоятельным приложением к своему документу.

Чего делать нельзя

Несколько способов «почистить» базу, которые приносят больше вреда, чем пользы:

  • ❌ Удалять файлы из каталога тома вручную. База будет ссылаться на несуществующие файлы, пользователи получат ошибку при открытии. Проверку целостности тома потом придётся проводить заново.
  • ❌ Чистить таблицы SQL-запросами DELETE. Нарушается ссылочная целостность, а итоги регистров перестают сходиться. Только средствами 1С.
  • ❌ Удалять документы с действующими процессами. Сначала завершите или прервите процессы и задачи, иначе в базе останутся задачи без предмета.
  • ❌ Запускать удаление помеченных днём в рабочей базе. Операция долгая, нагружает сервер и конфликтует с правками пользователей.
Сколько места освобождает удаление старых версий файлов?
Чем активнее в базе согласуют и правят документы, тем больше. Один договор с 15 редакциями по 5 МБ освобождает около 70 МБ. Точную цифру по всей базе покажет замер до и после.
Можно ли удалить документ, если он включён в дело?
Технически это зависит от прав пользователя. По правилам делопроизводства документ из дела с неистёкшим сроком хранения удалять нельзя. Для истёкших сроков нужен акт о выделении дел к уничтожению.
Почему после удаления помеченных объектов база не уменьшилась?
Место освободилось внутри файлов базы. Чтобы вернуть его на диск, сожмите таблицы в файловой базе или выполните сжатие средствами СУБД в клиент-серверной.
Как часто нужна полная очистка?
Если регламентные задания настроены, ручная чистка нужна раз в год, после закрытия года. Без заданий — раз в квартал, иначе пометки и версии копятся быстрее, чем их успевают разобрать.
Удаляются ли файлы из тома, когда удаляется карточка файла?
Да, при удалении объекта программа удаляет и связанный файл в томе. Поэтому удаление через 1С безопасно, а ручное удаление из каталога — нет.

Источники

  • Федеральный закон от 22.10.2004 № 125-ФЗ «Об архивном деле в Российской Федерации»
  • Приказ Росархива от 20.12.2019 № 236 «Об утверждении Перечня типовых управленческих архивных документов, образующихся в процессе деятельности государственных органов, органов местного самоуправления и организаций, с указанием сроков их хранения»