Я создаю систему дискуссий с использованием Parse.comАнализировать DB Design: Как получить все сообщения для конкретной категории
В моей [упрощенном] системе есть Post
s, Category
s и Comment
s.
Как вы, вероятно, предположили, Post
s может принадлежать одному или нескольким Category
s и может иметь несколько Comment
s.
Однако часто пользователи захотят увидеть все Post
s в Category
. Если я создал свою базу данных как этот
Post (name, content, categories)
Category(name)
Я беспокоюсь, что запрашивая все Post
с в Category
будет очень ineffeficient (так как он должен будет проверить categories
поле каждого Post
.
Тем не менее, если я проектирую базы данных, как
Post (name, content)
Category(name, posts)
это будет неэффективно для меня, чтобы запросить, что Category
са Post
принадлежит, так как он должен будет опалить ch все массивы Post
s во всех Category
s.
Я уверен, что это должно быть обычной дилеммой проектирования баз данных, но я все еще новичок в этом. Как лучше всего подойти и решить эту проблему?
С Вариантом 2 каждый раз, когда создается новая 'Post' или новая' Category', мне нужно сделать запись в таблице «CategoryPosts»? Это будет очень скоро, особенно потому, что 'Post' может иметь более 10 категорий? – CodyBugstein
Правильно, эта таблица может стать большой. Это нормально. Он еще эффективнее, чем столбец массива типов. – picciano
ОК, это здорово. Я думаю, что я сделаю это, поэтому у меня нет дублированной информации и проблем позже – CodyBugstein