Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите плиз спроектировать БД на MongoDB 
:(
    Опции темы
lvl0nax
Дата 23.7.2012, 21:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 23.7.2012

Репутация: нет
Всего: нет



Решил сделать проект для себя, и в целях изучения выбрал MongoDB. Есть следующая проблема.
 
Модель юзера с ролями учитель и ученик.
 Модель мероприятие может создавать и ученик и учитель.
 Модель конференция может создавать учитель только. 
Соответствено, пользователи, могут подавать заявки на участие в мероприятии или конференции. И создатель либо подтверждает, либо отклоняет заявку. Заявки будут видны на странице мероприятия/конференции, и у пользователя на странице.

 Возникла мысль сделать это через 4 отдельные модели - юзеры, конференции, мероприятия и заявки(Сообщение, user_id, event_id). Но есть ощущение, что это не сильно правильно. 
Наверно имеет смысл что-то вложенными сделать. Была мысль объединить модели мероприятий(не много пугает существенное различие в полях, но монго вроде позволяет такое делать), а модель заявок сделать вложенной(user_id, message). Но тогда вопрос, если мероприятий будет много в БД, как сделать оптимально-быстрый выбор заявок на страницу пользователя? Наверно малость преждевременный вопрос, но тем не менее хочется сделать со взглядом в будущее) 

В общем, если у кого-то есть идеи буду благодарен, если Вы их озвучите. Гугл как-то не очень помог решить проблему. 
PM MAIL   Вверх
lukas
Дата 18.9.2012, 11:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 771
Регистрация: 23.2.2007

Репутация: нет
Всего: 15



Стоит делать 4 таблицы, как вы и задумали. Хранить в данном случае что-то внутри объекта - совершенно ошибочно. 


--------------------
http://code.google.com/p/orionphp/ - opensource скриптовой язык Orion (аналог PHP) для freepascal/delphi.
PM MAIL WWW   Вверх
DissDoc
Дата 9.4.2013, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 463
Регистрация: 13.7.2006

Репутация: нет
Всего: нет



Хм, странно! А почему не сделать коллекцию таким образом?
Код

{
    _id: 1,
    name: "test"
    role: "teacher"
    meeting: [
        { ids: id_meet }
    ]
    forum: [
        {ids: id_forum}
    ]
}

привет пример. По-моему прекрасно ложиться на модель монги. Причем, конференция как может существовать, так ее может и не быть. И не нужно городить кучи таблиц. Все в одну коллекцию помещается

Добавлено через 4 минуты и 53 секунды
Да, тут кстати. А кто подал заявки, можно сделать вот так
Код

....
forum: [
{id: id_forum,
  accepts: [user1, user2]
}
]
....


Это сообщение отредактировал(а) DissDoc - 9.4.2013, 15:30
PM MAIL WWW   Вверх
ArtIllustrator
  Дата 25.12.2014, 11:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 27.10.2012

Репутация: нет
Всего: нет



Есть мысль где можно применить рекомендательные системы.
Скажу лишь, что мне известно, что проект повторит взрывной рост pinterast.com youcomedy.me и прочих рекомендалок. А это миллионы подписчиков в первый же год.
Поскольку это тоже рекомендалка(гуглите). Лишь область приложения её несколько(чрезвычайно) расширена. Областей применения много. Лишь пиши код, да пиши.
Суть идеи описана. Расписывать избегу, чтобы избежать воровства.
От вас:
1) мгновенное начало работы.
2) Постоянное творчество каждую неделю от 12 часов.
3) мы будем обсуждать то или иноге решение. окончательное слово за мной. (в этом проекте военная диктатура для получения наилучших итогов)
От меня:
1) Постоянные идеи по мере развития сайта. (сохранение скорости роста,избежание "закисания")
2) 40% от дохода с проекта. (поскольку чтобы мне иметь вдохновение бразды правления будут находиться в моих руках)

связь https://vk.com/artillustrator
скайп andruhakotovskype
PM MAIL   Вверх
xamloru
Дата 28.1.2015, 13:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 35
Регистрация: 2.8.2007

Репутация: нет
Всего: нет



Цитата(lvl0nax @ 23.7.2012,  21:26)
Решил сделать проект для себя, и в целях изучения выбрал MongoDB. Есть следующая проблема.

Лучше брось каку. Уже 3 года работаю с mongoDB. Поверь постгрес намного шустрее. а еще там есть массивы,  что иногда бывает очень полезно. Если чисто для изучения то можно попробовать, но на больших проектах, потом сложно её выкидывать,  а приходится. чтобы не приходилось, лучше и не притрагиваться.
PM MAIL   Вверх
Google
  Дата 24.5.2019, 16:34 (ссылка)  





  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | NoSQL | Следующая тема »


 




[ Время генерации скрипта: 0.1111 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.