Я имею в виду схему базы данных для публикации и ее комментарии в контексте приложения для социальных сетей, и я подумываю, какая из этих двух функций даст лучшую производительность:
Я храню комментарии к записи в «Комментарии» Таблица и сообщения в «Сообщения» Таблица.Теперь моя схема для таблицы комментариев выглядит следующим образом:
postId commentId postsBy Date CommentBody
Since, чтобы получить комментарии к сообщениюЯ должен был бы искать все посты, чей postId соответствует postId этого конкретного поста, и даже мой postId не может стать первичным ключом, поскольку postId будет не уникальным в столбце (так как несколько комментариев для одного поста), поэтому Iдумал, что если бы я мог объединить postId и commentId в один комментарий (это становится первичным ключом) , используя который postId также можно получить .Вот как я думаю:
CommentId будет сгенерирован как postId * 100 + i (где i - i-й комментарий к сообщению)
, таким образом, чтобыизвлекать комментарии для поста (скажем, с postId = 8452) Я бы искал все посты с commentId (это был бы первичный ключ), лежащий между 845200 и 845299 .. вместо поиска всех комментариев с postId = 8452 .. (конечно это ограничиваетмаксимальное количество комментариев до 100).Но приведет ли это к повышению производительности?