Хранить данные в базе данных или файлах? - PullRequest
0 голосов
/ 14 июля 2011

У меня есть некоторые сомнения, я разрабатываю веб-приложение в GWT, используя модель MVP. Допустим, я создаю форум, чтобы пользователи могли оставлять комментарии, мне интересно, как сохранить эти данные?

Например, сообщение может иметь 2000 .. 3000 символов, я думаю о файлах ... каждая категория имеет свои сообщения, поэтому я могу хранить категорию для файла .. Или другая идея - хешировать данные.

Буду рад узнать больше мнений и подходов ..

Спасибо, ребята.

Edit.

Я вижу из комментариев, что база данных - правильное решение, но должен ли я вставлять посты напрямую или переделывать их как-то, а потом вставлять?

Ответы [ 3 ]

3 голосов
/ 14 июля 2011

База данных.Без вариантов.

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

Кроме того, как насчет относительных данных?Как упомянул @ The Elite Gentlemen, хранение относительных данных в файлах также болезненно.Да, вы будете индексировать посты в категориях по именам каталогов, но как вы сохраните автора поста?Ссылка на его профиль?Количество постов автора или его аватара?

1 голос
/ 14 июля 2011

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

Первый уровень в базе данных - напр.использование некоторой табличной памяти (но с риском), процедурного языка в базе данных и стандартных инструментов в качестве индекса и т. д.

Второй уровень в http - если вы используете gwt, вы можете кэшировать потоки с форума.Для этого вам не нужен механизм gwt, нужна только специальная конфигурация сервера.

Третий уровень - это gwt / javascripts - на уровне клиента gwt browse вы можете сохранять вновь созданные темы форума.

достаточно просто, чтобы быстро ...

0 голосов
/ 14 июля 2011

Сохранение данных в файлах приведет к ошибке во время выполнения из-за перегрузки ЦП. Использование базы данных является единственным способом на самом деле

...