2015-03-04 2 views
0

В настоящее время я разрабатываю приложение для Win, Linux Mac. Цель приложения заключается в том, что несколько пользователей могут создавать проекты на основе единой статьи. Каждая статья имеет до 15 различных полей/опций (также может быть больше в будущем). Поля Статьи должны быть изменены, поэтому я должен иметь возможность добавлять, редактировать или удалять их.MYSQL - лучшая структура данных

поле Я хочу сохранить:

  • Число
  • Текстов (в основном варианты [1 слово], иногда Комментарии [некоторые предложения])
  • Пути/Ссылки на файлы

Что я хочу делать с дБ:

  • нагрузки все проекты пользователя при входе в систему

  • добавить, редактировать, удалять, удалять отдельные проекты

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

Каков наилучший способ управления такого рода данных? Должен ли я создавать таблицу для каждого пользователя и создавать только столбец идентификатора и один, где все значения всех полей (которые объединены с одной большой строкой)? Должен ли я создавать таблицы для каждого проекта и создавать столбцы для каждого поля/опции, а также для пользователя/владельца? Или есть другие возможности?

+0

Если вам не помогло, вы можете принять ответ, который помог вам вместо добавления текста '[resolved]' в заголовок. – GolezTrol

ответ

0

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

Пару таких баз данных, на которые нужно обратить внимание, это MongoDB, Cassandra, ElasticSearch, но вы можете найти большой список on Wikipedia.

+0

спасибо, я думаю, вот что я искал! –