В практике администрирования 1С часто встречается ситуация, когда файл выгрузки информационной базы (.dt) оказывается значительно меньше файла самой базы данных (.1CD). Обычно разница составляет в 3–5 и более раз, так как .dt представляет собой сжатый архив данных без индексов и свободного пространства (дырок), которые присутствуют в файловом варианте. Однако, если база объемом 6 Гб превращается в выгрузку объемом 4 Гб, это повод для детального анализа. Рассмотрим подробнее, почему так происходит и какими инструментами можно выяснить истинную причину разрастания данных.
Для начала разберем, что именно попадает в файл .dt. Это не просто копия базы, а сериализованные данные всех таблиц. В процессе выгрузки платформа 1С выполняет следующие действия:
.dt).Важный момент: если данные внутри базы уже находятся в сжатом или бинарном виде (например, файлы PDF, JPG, архивы или зашифрованные пакеты ЭДО), то повторное сжатие при создании выгрузки практически не дает результата. Именно поэтому высокий удельный вес .dt относительно .1CD всегда указывает на наличие большого объема "тяжелых" данных в объектах типа ХранилищеЗначения.
Выясним причину разрастания, проанализировав физическую структуру таблиц. Для этого воспользуемся проверенными инструментами, которые в сообществе называют "пузометрами".
Во-первых, проанализируем базу с помощью утилиты Tool1CD. Она позволяет открыть файл .1CD напрямую и увидеть список всех таблиц с указанием их размера. Нас должны интересовать таблицы со следующими префиксами:
_InfoRg — регистры сведений._Reference — справочники._DataHistory — таблицы истории данных (версионирование).Во-вторых, рассмотрим специализированную утилиту DT-Менеджер. С ее помощью можно распаковать файл выгрузки и увидеть, какие именно объекты метаданных занимают в нем место. Если после распаковки вы видите огромные файлы данных в папках определенных регистров или справочников, это и будет ответом на вопрос.
Проанализируем наиболее вероятные ситуации, характерные для "1С:Бухгалтерии 3.0", которые приводят к росту .dt:
1. Хранение присоединенных файлов в базе данных. Это самая частая причина. Если в настройках системы не указано "Хранить файлы в томах на диске", то все сканы договоров, актов и чеков сохраняются непосредственно в справочнике ПрисоединенныеФайлы. Поскольку изображения и PDF уже сжаты, файл .dt будет расти пропорционально количеству загруженных документов.
2. Версионирование объектов. Если в базе включена история изменений и установлена настройка "Хранить бессрочно", то при каждом изменении документа система сохраняет его полную копию в формате XML/JSON в специальных таблицах. При активной работе пользователей за месяц база может легко вырасти на несколько гигабайт. Проверить это можно в разделе Администрирование — Обслуживание — История изменений.
3. Адресный классификатор (ФИАС/ГАР). В современных версиях БП 3.0 загрузка классификатора может происходить незаметно для администратора. Если пользователи загрузили полные данные по нескольким крупным регионам, это добавит сотни мегабайт в таблицы базы, которые практически не сжимаются в .dt.
4. Итоги и границы итогов. Иногда причиной раздувания именно файла .1CD (и, как следствие, выгрузки) является некорректно установленная граница итогов или наличие огромного количества записей в таблицах итогов регистров бухгалтерии. Разберем по шагам, как это проверить:
Администрирование — Обслуживание — Регламентные операции — Управление итогами.Не стоит забывать, что в конфигурациях на базе БСП (Библиотека стандартных подсистем) есть встроенный отчет. Перейдем в раздел Администрирование — Обслуживание — Отчеты и обработки — Отчеты администратора — Анализ состава файлов в информационной базе. Этот отчет наглядно покажет:
Если в ходе диагностики выяснилось, что место занимают файлы или версии, выполним следующие действия:
Для того чтобы облегчить базу и выгрузку, перенесем файлы на внешний диск или сетевое хранилище. Для этого в 1С предусмотрена стандартная процедура:
// Пример логики переноса файлов (выполняется через интерфейс)
1. Создать "Том хранения файлов" на сервере.
2. Указать путь к папке (например, \\Server\1C_Files).
3. Запустить обработку "Перенос файлов в тома".
После этой операции размер .dt значительно уменьшится, так как внешние файлы перестанут попадать в архив выгрузки.
Проанализируем настройки версионирования. Если нам не нужна история за прошлые годы, настроим расписание удаления старых версий (например, старше 6 месяцев). Это освободит место в таблицах _DataHistory.
В завершение отметим, что размер .dt в 4 Гб при базе 6 Гб — это явный признак того, что 66% вашей базы составляют полезные данные, не являющиеся индексами. Если после очистки классификаторов и переноса файлов размер не уменьшился, значит, такова реальная плотность заполнения таблиц данными вашего учета.