Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Sphinx криво ищет 
:(
    Опции темы
studentigor
Дата 4.7.2013, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 397
Регистрация: 14.11.2008

Репутация: нет
Всего: нет



Доброго дня.

Есть список продуктов питания. Он в принципе не маленький, и будет разрастаться.
И мне нужно сделать полнотекстовый поиск. Делаю его на сфинксе.

вот мои настройки
Код

source foodstuff_term_search
{

    type                    = mysql
    sql_host                = localhost
    sql_user                = root
    sql_pass                = ...
    sql_db                  = ...
    sql_port                = 3306  

    sql_query_pre           = SET NAMES utf8

    sql_query               = \
        SELECT id, name, description  \
        FROM foodstuffs

    sql_ranged_throttle = 0

    sql_query_info      = SELECT id FROM foodstuffs WHERE id=$id
}

index foodstuff_term_search
{

    source          = foodstuff_term_search

    path            = /var/lib/sphinxsearch/data/foodstuff_term_search
    docinfo         = extern
    mlock           = 0

    morphology      = stem_ru
    min_word_len        = 1
    charset_type        = utf-8

    html_strip              = 0

searchd
{
    listen                = 9312
    log                    = /var/log/sphinxsearch/searchd.log
    query_log            = /var/log/sphinxsearch/query.log
        crash_log_path        = /var/log/sphinxsearch/crash
    read_timeout        = 5
    client_timeout        = 300
    max_children        = 30
    pid_file            = /var/run/searchd.pid
    max_matches            = 1000
    seamless_rotate        = 1
    preopen_indexes        = 1
    unlink_old            = 1
    mva_updates_pool    = 1M
    max_packet_size        = 8M
    max_filters            = 256
    max_filter_values    = 4096
}

indexer
{
    mem_limit            = 32M



Вот вызов из PHP
Код

$sphinxClient = new SphinxClient();
$sphinxClient->setServer('localhost', 9312);
$sphinxClient->setMatchMode(SPH_MATCH_ANY);
$sphinxClient->setMaxQueryTime(3);
$sphinxClient->SetLimits(0, 999, 999);
$result = $sphinxClient->query($product, 'foodstuff_term_search');


Так вот. Если длинна искомого продукта 2 символа - то ищет, если 3,4,5,6 - ничего не находит, и 7+ -тоже находит.
То есть если я ввожу бу(есть результаты), бужени(тут нету результатов), и буженин(есть результаты). Ели запрос состоит из нескольких слов то тоже результаты ищутся(если даже в ответе присутствует одно из искомых).


Подскажите плиз, с чем может быть связано то что при длине искомого слова от 3-х до 6-и символов поиск не работает. Ошибок не выдает. просто нету matches

спасибо.
 

PM MAIL   Вверх
Fortop
Дата 4.7.2013, 21:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: нет
Всего: 42



Если выполнить такой же запрос через консоль - что отдает?


--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
studentigor
Дата 5.7.2013, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 397
Регистрация: 14.11.2008

Репутация: нет
Всего: нет



запускаю так
Код

/usr/bin/search -i 'exercise_term_search' -q 'буже'


вот результат
Код

1. 'буже': 0 documents, 0 hits

на набираю "буженин" - находит.


Смотрите, ещё у меня такая фишка, при индексации вываливается 
Код

indexing index 'foodstuff_term_search'...
WARNING: Attribute count is 0: switching to none docinfo
collected 2986 docs, 0.1 MB
sorted 0.0 Mhits, 100.0% done
total 2986 docs, 126414 bytes
total 0.014 sec, 8817940 bytes/sec, 208286.83 docs/sec


я на форумах почитал, говорят что это ничего страшного


PM MAIL   Вверх
Fortop
Дата 5.7.2013, 15:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: нет
Всего: 42



Попробуй отключить морфологию
Результаты будут?


--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
studentigor
Дата 8.7.2013, 14:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 397
Регистрация: 14.11.2008

Репутация: нет
Всего: нет



Всеравно никаких результатов.
PM MAIL   Вверх
Fortop
Дата 8.7.2013, 22:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: нет
Всего: 42



Добавь в индекс

min_infix_len = 3
enable_star = 1

Добавлено через 2 минуты и 8 секунд
Ну и искать нужно так

Код

./sphinx/bin/search -i food -c ./sphinx/test.conf  -a карт*
Sphinx 2.2.1-id64-dev (r3945)
Copyright (c) 2001-2013, Andrew Aksyonoff
Copyright (c) 2008-2013, Sphinx Technologies Inc (http://sphinxsearch.com)

using config file 'sphinx/test.conf'...
index 'food': query 'карт* ': returned 2 matches of 2 total in 0.000 sec

displaying matches:
1. document=4, weight=2647, name=картофель, description=сушеный картофель
2. document=5, weight=1607, name=картофель молодой, description=бельгия

words:
1. 'карт*': 2 documents, 3 hits




--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
studentigor
Дата 15.7.2013, 16:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 397
Регистрация: 14.11.2008

Репутация: нет
Всего: нет



не помогло, результат такой как и был

PM MAIL   Вверх
Fortop
Дата 15.7.2013, 17:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: нет
Всего: 42



Цитата(studentigor @  15.7.2013,  16:19 Найти цитируемый пост)
не помогло, результат такой как и был

не верю


индексы перестроил?
Кинь конечный свой конфиг сюда



--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | NoSQL | Следующая тема »


 




[ Время генерации скрипта: 0.1203 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.