Выбор способа влияет на производительность, удобство переноса данных и требования к резервному копированию.
При выборе следует учитывать суммарный объём всех подключаемых материалов. Хранение внутри базы удобно, если файлов немного, они сравнительно небольшие. Следует заметить, что если файл был ранее загружен к одному объекту, то при загрузке его же к следующему объекту он загружается повторно. Хранение ссылок предпочтительно, если к объектам предполагается подключать большое количество фотографий, сканов, паспортов, схем или других объёмных материалов. В этом случае размер базы данных практически не зависит от суммарного размера подключённых файлов.
![]() | Предупреждение |
|---|---|
|
Важно понимать, если 1000 объектам подключить по одному файлу размером 10 МБ и сохранять эти файлы непосредственно в базе, общий объём данных увеличится примерно на 10 ГБ. И многие, особенно бесплатные СУБД не будут работать с таким объемом. Это критично скажется на скорости открытия, резервного копирования и общей производительности. Поэтому оценивайте не размер одного файла, а общее количество записей и их суммарный объём. |
При хранении файлов в базе выбор их может осуществляться только с рабочего места, при хранении ссылок выбор может осуществляться как с рабочего места, так и с сервера.
Таблица 7.
| Способ | Количество файлов | Место хранения файла | Тип поля | Тэг | Свойство | Указание папки | Выбор файла |
|---|---|---|---|---|---|---|---|
| Способ 1 | 1 | Внутри базы (размер БД растёт) | — | — | Не требуется | С рабочего места | |
| Способ 2 | 1 | На диске (размер БД НЕ растёт) | — | Да (корневая папка) | С рабочего места или сервера | ||
| Способ 3 | 2+ | Внутри базы (размер БД растёт) | Не требуется | С рабочего места | |||
| Способ 4 | 2+ | На диске (размер БД НЕ растёт) | Да (корневая папка) | С рабочего места или сервера | |||
| Способ 5 | 2+ | Или на диске или внутри базы (растет или не растет БД зависит от способа добавления файла) | , | Да (корневая папка) | С рабочего места или сервера |
![]() | Примечание |
|---|---|
|
Изменение способа хранения: В системе предусмотрен специальный мастер, который позволяет:
Это позволяет без потери данных перейти от хранения внутри базы к хранению ссылок, когда объём файлов становится критическим. |
Как выбрать подходящий вариант
Таблица 8.
| Единичные документы | до 50 объектов по 1 файлу → Способ 1 |
| Небольшая галерея | ограниченное количество объектов, суммарно до 50 файлов → Способ 3 |
| Много документов | для сотен и тысяч объектов → Способ 2 |
| Большой архив документов | для сотен и тысяч объектов → Способ 4 |
| Большой архив документов, опытные проинструктированные пользователи | для сотен и тысяч ссылок и суммарно загруженных до 50 файлов → Способ 5 |
Хранение внутри базы (Способы 1 и 3)
Преимущества
Все файлы переносятся вместе с базой автоматически.
Не нужно следить за путями к папкам.
Файлы защищены паролем базы данных.
Недостатки
Размер базы растёт пропорционально объёму файлов.
При больших объёмах (>1 Гб) замедляется открытие и работа.
Для резервного копирования требуется много места.
Ограничение на максимальный размер файла БД (зависит от СУБД).
Хранение ссылок на диске (Способы 2 и 4)
Преимущества
Размер базы практически не меняется.
Высокая скорость работы даже с большими файлами.
Файлы можно редактировать стандартными средствами ОС.
Нет ограничений по размеру хранимых файлов.
Недостатки
При переносе нужно копировать базу + папку с файлами.
Переименование или перемещение файла делает ссылку «битой».
Резервное копирование требует сохранения двух сущностей.
Требуется организовать доступ к файлам для всех пользователей.
Комбинированный способ, хранение или внутри базы или хранение ссылок на диске (Способы 5)
Преимущества
Выбор варианта хранения зависит от пользователя
Файлы, которые загружены в базу переносятся вместе с базой автоматически.
Для файлов, которые загружены в базу не нужно следить за путями к папкам.
Недостатки
Если загружено много файлов, размер базы растёт пропорционально объёму файлов.
При больших объёмах (>1 Гб) замедляется открытие и работа.
Для резервного копирования требуется много места.
Ограничение на максимальный размер файла БД (зависит от СУБД).