Большинство систем управления документами корпоративного класса НЕ хранят объектный файл в базе данных. То, что вы можете не означает, что вы должны . Если для вас важны масштабируемость и производительность, и у вас есть большой набор документов, вы должны быть очень осторожны с хранением объектов в БД. Учтите следующее:
В случае визуализации документов 200 миллионов файлов TIFF можно считать относительно большой, но не массивной системой. В больших системах может быть более 1 миллиарда объектных файлов. Скажем, при 20 КБ на битовый TIFF у вас может быть 4 ТБ хранилища объектных файлов. Сколько времени займет резервное копирование вашей БД? Сколько времени займут ваши запросы? Какова частота доступа к этим объектам? Если эти объекты имеют высокую частоту доступа, хотите ли вы, чтобы ваш высокопроизводительный сервер БД все свое время занимался обслуживанием файлов? Если у вас есть миллионы объектов, вам нужно быть очень осторожным в том, как вы разрабатываете решение, в котором объекты хранятся в БД.
Предположим, что перед вами стоит задача конвертировать эти 200M TIFF-файлы в PDF-файлы. Будьте готовы поставить свое решение на колени, поскольку сервер базы данных тратит впустую свое время на обслуживание каждого объектного файла в процессе преобразования, а затем повторно сохраняет результаты.
В качестве примера, Sharepoint славится хранением объектов в БД. Sharepoint также известен проблемами масштабируемости.
Мой ответ:
Для небольших систем (<1M файлов) можно рассмотреть возможность хранения файлов в БД.
Для больших систем (> 1M файлов) хранение файлов в БД является ошибкой.