Sphinx против MySql -Поиск по списку друзей (эффективность/скорость)

Я переношу свои поисковые запросы приложений на Sphinx из MySQL, и мне трудно понять это, и нужно ли вообще его портировать (Я действительно хочу знать, стоит ли использовать sphinx для этого конкретного случая. по эффективности/скорости):

users
uid uname
  1    alex
  2    barry
  3    david

friends
uid | fid
  1     2
  2     1
  1     3
  3     1

Подробности:
-ИнноДБ
-пользователи:индекс по uid, индекс по uname
-друзья:комбинированный индекс по uid,fid

Обычно для поиска всех друзей Алекса с помощью mysql:

$uid = 1
$searchstr = "%$friendSearch%";
$query = "SELECT f.fid, u.uname FROM friends f 
          JOIN users u ON f.fid=u.uid
          WHERE f.uid=:uid AND u.uname LIKE :friendSearch";
$friends = $dbh->prepare($query);
$friends->bindParam(':uid', $uid, PDO::PARAM_INT);
$friends->bindParam(':friendSearch', $searchstr, PDO::PARAM_STR);
$friends->execute();

Будет ли эффективнее находить друзей Алекса с помощью sphinx или mysql, или это будет излишним?
Если бы sphinx был быстрее для этого, так как список охватывает тысячи людей, как будет выглядеть запрос на индексацию? Как удалить дружбу со сфинксом, которой больше нет, можно подробный пример в этом случае?Должен ли я изменить этот запрос, чтобы использовать Sphinx?

15
задан Wonka 24 August 2012 в 14:26
поделиться