Я работаю над приложением для управления репертуаром театра. Я хотел бы данные в моей базе данных, такие как: залы, актеры, спектакли и события.
Отношения актер-зрелище многие-ко-многим.
Событие должно указывать на зал, конкретное зрелище и актеров этого зрелища. Может случиться так, что актер не примет участия в мероприятии и его заменит кто-то другой. Я должен быть в состоянии удалить определенные и добавить новые для данного события. Должен ли я копировать идентификаторы актеров из спектакля в новый массив, хранящийся в объекте события? Я хотел бы отметить, что количество событий можно исчислять тысячами.
Мой основной вопрос: должен ли я использовать mongodb для этого типа приложений или выбрать mysql или что-то еще?
В объекте события мне нужны ссылки на актеров, спектакль и зал. В объекте зрелища мне нужны ссылки на актеров.
Не слишком ли велико число этих ссылок для mongodb?
На мой взгляд:
//theater
{
_id: 'A123',
name: 'AAAA',
address: {
street
...
},
halls: [id1, id2, id3],
spectacles: [id4, id5, id6],
actors: [id7, id8, id9]
}
//hall
{
_id: id1,
name: 'Hall #1'
}
//actor
{
_id: id7,
name: 'Joe'
}
//spectacle
{
_id: id4,
name: 'Test',
actors: [id7, id8]
}
//event
{
_id: 'ABC1',
theater_id: 'AAAA',
actors: [id7, id9],
hall_id: id2,
spectacle_id: id5
}
Я тоже неуверен, что смогу встраивать залы, актеров и очки в театральные объекты и иметь легкий доступ к ним, например, при создании нового события (мне нужны ссылки на эти объекты).
Заранее благодарю за помощь