Карта базы данных вопросов и ответов, например stackoverflow - отдельная таблица для заголовков вопросов - PullRequest
1 голос
/ 19 марта 2010

Я планирую сделать систему вопросов и ответов (довольно специфичной, не имеющей ничего общего с ИТ)

Я искал карту базы данных Stackoverflow: https://meta.stackexchange.com/questions/2677/anatomy-of-a-data-dump/2678#2678

И я думаю, не лучше ли составлять отдельную таблицу для заголовков вопросов. С "firstPostId".

Instead of  
|- PostTypeId  
|    - 1: Question  
|    - 2: Answer  

Итак, я хочу знать, почему stackoverflow не использовал отдельную таблицу для заголовка вопросов. Это «пока не оптимизировать» или за этим стоит какая-то логика?

1 Ответ

1 голос
/ 19 марта 2010

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

Я также подозреваю, что они используют базу данных ключ / значение (a.k.a. nosql) для резервного хранилища, что позволяет записям не обладать всеми возможными атрибутами. Например, вопрос может иметь теги, а ответ - нет. Базы данных ключ / значение не смущаются такими различиями.

Отказ от ответственности: я не знаю, как реализовано SO.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...