Лучше ли хранить пользовательский текст (например, запись в блоге или личные сообщения) в базе данных или в виде простых файлов? - PullRequest
0 голосов
/ 31 марта 2012

Я создаю сайт типа социальной сети, в котором будут храниться большие куски текста, вводимого пользователями, например записи в блогах и личные сообщения. Таким образом, они будут введены один раз, с минимальными изменениями, но со временем многие из них будут прочитаны несколькими пользователями. Кстати, я использую MySQL.

Мои опасения:

  1. Хранение больших блоков текста в базе данных в конечном итоге приведет к заполнению базы данных.

  2. Я где-то читал, что хранение пользовательского текста в простых файлах представляет собой угрозу безопасности? (Имена файлов будут генерироваться динамически PHP, а не пользователем.)

  3. Хранение их в виде текстовых файлов может привести к их рассинхронизации, если мне когда-нибудь придется повторно инициализировать базу данных и восстановить ее из резервных копий.

Каковы все ваши мысли и советы, плюсы и минусы?

Ответы [ 2 ]

2 голосов
/ 31 марта 2012

Учитывая эти факты:

  1. Диск дешевый
  2. Базы данных очень быстрые, очень хорошие и очень простые в управлении такими данными
  3. Пропускная способность редко является проблемой для таких вещей, как записи в блоге (если вы не Facebook)

Вы должны хранить его в БД.

Кроме того, вы нарушаете одно из «золотых правил» разработки программного обеспечения: Не оптимизируйте рано . Ваша файловая идея - это оптимизация , так что не делайте этого - просто используйте (проще) базу данных. Если это становится проблемой, тогда беспокойтесь об этом (вероятно, никогда не будет).

1 голос
/ 31 марта 2012

Сохраните файл в отдельной таблице со ссылкой на запись. Таким образом, вы не берете ресурс ххх для определенного поля в БД, когда оно является пустым. Также перед сохранением блога сожмите содержимое. Но это всего лишь мнение о реализации.

...