Файловый поток SQL для объектов размером менее 1 МБ - PullRequest
0 голосов
/ 29 июля 2011

Я храню много небольших изображений в базе данных и хочу использовать функцию файлового потока сервера SQL.Но Microsoft рекомендует использовать его для объектов размером более 1 МБ, но мой средний размер объекта составляет 300 КБ.Итак, я хотел бы знать, будет ли работать Filestream?Если так, каковы недостатки?Я использую SQL Server Express 2008 R2 и надеюсь, что эта функция поможет мне сохранить размер базы данных, в противном случае она увеличится до экспресс-версии с ограниченным размером.Спасибо

1 Ответ

1 голос
/ 02 августа 2011

Microsoft рассматривает это в своей документации :

Когда использовать FILESTREAM

В SQL Server BLOB могут быть стандартными varbinary (max) данными, которыехранит данные в таблицах или объектах FILESTREAM varbinary (max), которые хранят данные в файловой системе.Размер и использование данных определяет, следует ли использовать хранилище базы данных или хранилище файловой системы.Если выполняются следующие условия, вам следует рассмотреть возможность использования FILESTREAM:

  • Размер хранимых объектов в среднем превышает 1 МБ.
  • Важно быстрое чтение.
  • Вы разрабатываете приложения, которые используют средний уровень для логики приложения.

Для небольших объектов, хранение varbinary (max) BLOB в базе данных часто обеспечивает лучшую производительность потоковой передачи.

Так что это должно работать (при условии, что Express поддерживает это) - у вас может быть просто снижение производительности по сравнению с-базы данных для небольших объектов.

...