Мне удалось наконец заставить Solr работать с помощью всех вас, ребята, так что СПАСИБО!
И я должен сказать, теперь я понимаю, почему вы рекомендовали это, это действительно мощно.
Теперь к вопросу ...
Я проиндексировал всю информацию для поиска в Solr
, и я планирую запросить Solr, а затем получить ID:s
результатов запроса (для всех записей, каждая из которых имеет значение поля ID) , который я затем использую для query MySQL
и получения остальной информации.
Итак, первый запрос Solr, следующий solr отправляет обратно id: s для всех объявлений, которые соответствуют запросу, затем я использую ID: s, чтобы запросить MySQL для остальной информации.
Мой вопрос: при выполнении части с MySql я должен сохранить все полученные ID: s в array
, а затем query mysql
, чтобы найти все записи с этими ID: s?
Должен ли я сделать что-то подобное? (может содержать некоторые ошибки кода):
for ($i=0; $i<$id_from_solr.length; $i++){
mysql_query("SELECT * FROM table_name WHERE ad_id=$id_from_solr[$i]");
}
Вышеупомянутое не похоже на хорошее решение, потому что он выполняет «новый запрос» каждый раз, когда снова зацикливается!
Как бы вы это сделали?
Дополнительный вопрос:
Замедляет ли добавление функции сортировки в MySQL запрос по сравнению с БЕЗ использования функции сортировки? например:
ORDER BY insert_date ASC
И последнее Q:
Есть ли способ кэшировать результаты MySQL, поэтому при сортировке мне не нужно делать новый запрос?
Большое спасибо!
Если вам нужно больше информации, дайте мне знать, и я обновлю этот вопрос!