У меня довольно большой сайт типа социальной сети, над которым я работаю около 2 лет (высокий трафик и сотни файлов). Я экспериментировал последние пару лет с настройкой для максимальной производительности трафика, и я узнал, что много. Теперь передо мной стоит огромная задача, я планирую полностью перекодировать мою социальную сеть, чтобы перепроектировать базы данных mysql и все остальное.
Ниже приведена фотография, которую я сделал из пары таблиц mysql, по которым у меня есть вопрос. В настоящее время у меня есть таблица входа в систему, которая используется в процессе входа в систему, когда пользователь входит на сайт, ему очень редко приходится снова попадать в таблицу, если только он не редактирует электронную почту или пароль. Затем у меня есть пользовательская таблица, которая в основном представляет собой настройки пользователя и данные профиля для сайта. Здесь у меня есть вопросы, должна ли быть лучшая производительность разбивать пользовательскую таблицу на меньшие таблицы? Например, если вы просматриваете пользовательскую таблицу, вы увидите несколько полей, которые я пометил как «setting_», я должен просто создать отдельную таблицу настроек? У меня также есть поля, помеченные "count", которые могут быть общим количеством комментариев, фотографий, друзей, почтовых сообщений и т. Д. Так я должен создать другую таблицу для хранения только общего количества вещей?
Причина, по которой у меня их все по одной таблице сейчас, заключается в том, что я подумал, что, может быть, было бы лучше, если бы я мог сократить запросы mysql, вместо того, чтобы нажимать на 3 таблицы, чтобы получить информацию о каждой загрузке страницы, которую я могу нажать 1.
Извините, если это сбивает с толку, и спасибо за любые советы.
альтернативный текст http://img2.pict.com/b0/57/63/2281110/0/800/dbtable.jpg