У меня есть сайт объявлений.Я использую SOLR для индексации и хранения данных.Затем у меня также есть база данных MySQL с дополнительной информацией о классифицированных, которые я не храню или не индексирую.
Теперь у меня есть довольно нормализованная база данных с 4 таблицами.на веб-сайте SOLR выполняет поиск и возвращает массив идентификаторов ID_numbers, которые затем будут использоваться для запроса mysql.Поэтому solr возвращает id: s, которые затем используются для получения всех объявлений из базы данных mysql с идентификатором THOSE: s.
Теперь все соединения и отношения между моими таблицами вызывают головную боль.
Что, кроме удобства обслуживания я могу получить за наличие нормализованной базы данных?
Могу ли я знать, сохранить всю информацию в одной таблице с примерно 50 столбцами.
Так что вместо этого длянайти одно объявление и показать его:
SELECT
category_option.option_name,
option_values.value
FROM classified, category_option, option_values
WHERE classified.classified_id=?id
AND classified.cat_id=category_options.cat_id
AND option_values.option_id=category_options.option_id
Я мог бы использовать это:
SELECT * FROM table_name WHERE classified_id = $classified_id
Разве последнее не является на самом деле быстрее?Или нормализованная БД работает быстрее?
Спасибо