Должен ли текстовый файл храниться в моей базе данных SQL Server? - PullRequest
0 голосов
/ 10 января 2012

Мы используем несколько текстовых файлов в качестве шаблонов для создания результатов вызова служб данных WCF - Service Operation.

Максимальное количество текстовых файлов - не более 3000 байт.

Каковы преимущества и недостатки хранения файлов шаблонов в файловой системе вместе с файлами служб данных WCF по сравнению с хранением их в SQLСервер 2008 R2 сервер?

Ответы [ 3 ]

1 голос
/ 10 января 2012

Есть много плюсов и минусов для любого способа хранения.В настоящее время (мое мнение изменилось и может измениться когда-нибудь), я бы сосредоточился на безопасности и управляемости.

  • Если это конфиденциальные данные, вы можете получить немного больше безопасности, храня ихбаза данных.Если ничего другого, взломать базу данных может быть сложнее, чем файловую систему.Если безопасность не так важна, ее проще хранить в ОС.
  • Для управления, если данные обновляются (и как часто это происходит), насколько легко их обновить?Один экземпляр в базе данных проще обновлять (или повреждать ...), чем экземпляр на каждом из множества серверов вашей веб-фермы.(1 сервер, нет проблем, 20 серверов, возможна головная боль.)
1 голос
/ 10 января 2012

До выпуска SQL Server 2008 я настоятельно рекомендовал не хранить большие объекты, такие как текстовые файлы, в базе данных.Это приводило к замедлению доступа и усложняло работу с ними.Вместо этого я обычно рекомендовал хранить ссылки на файлы, о которых идет речь.

Конечно, это означало, что база данных не будет защищать файлы в случае, если кто-то удалит что-то, что им не следует, и файлы должны быть скопированыи передается отдельно от базы данных.

В SQL Server 2008 я думаю, что многие из прежних проблем были преодолены с помощью функций файлового потока, и я думаю, что хранение файлов с использованием файлового потока может быть весьма полезным время от времени.Он продолжает хранить фактические данные за пределами базы данных, что позволяет избежать многих из предыдущих осложнений.Но он по-прежнему связывает их вместе и позволяет базе данных защищать файлы, а не полагаться на правильность ссылок в базе данных.

0 голосов
/ 11 января 2012

Я думаю, что лучше хранить данные непосредственно в базе данных. Это делает его еще более быстрым, поскольку база данных более эффективна при чтении и обработке данных. Вы всегда можете хранить фильмы в базах данных - это не проблема. Тогда также возможна потоковая передача больших данных.

По соображениям безопасности существует больше возможностей для настройки базы данных. А если вы кластеризуете свою базу данных - это еще более масштабируемо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...