Есть любопытный компонент SQL Server — FILESTREAM. И этот компонент представляет собой хранилище файлов не внутри базы(на мой взгляд идея не очень), а внутри файловой системы (что уже обнадеживает). В целом штука нужная и полезная, но со своими особенностями. И вот, волею судьбы, мне пришлось в эти особенности вникать.
Не так давно на проекте S решили использовать FILESTREAM. Проект старый и изначально файлы хранились внутри базы. Почему такое решение было принято мне трудно сказать т.к. дело было давно и принималось это решение другой командой программистов. Лично я бы постарался всячески этого не делать т.к рано или поздно файлов станет много и база станет большой и медленной. И вообще контролировать хранение файлов лучше программно, хотя это и труднее.
База проекта S в итоге стала весить около 80 гигов и регулярные бекапы базы стали большой проблемой. Решили перейти на FILESTREAM и перешли. База на сервере, в части данных, усохла до 5 гигов. Ну и остальные файлы теперь поселились в файловой системе сервера. Результатом остались довольны. Локальная база (сильно урезанная для целей разработки) тоже благополучно обновилась миграциями и все заработало.
Через некоторое время в один прекрасный воскресный вечер я решил установить себе языковое обновление на свою Windows 7 Home Premium т.е. захотел всего-то чтобы моя винда была на английском языке, вот такая вот странная прихоть?! Да и чем же еще заняться в воскресенье вечером? В этой идее была одна проблема: W7 Home Premium смену языков интерфейса явно не поддерживает, да и не явно видимо тоже, как покажут дальнейшие события.
Читать далее SQL Server FILESTREAM и уменьшение размеров хранилища файлов