Добрый день.
Подскажите пожалуйста, пытаемся настроить shingle analyzer для того, чтобы учитывать порядок вхождения слов.
Обычный анализатор работает, а этот что-то не хочет. Подскажите пож-та, может что не так:
Много проиндексированных полей, все проиндексированы следующим образом:
"ARTICLE":{"type":"text","norms":false,"fields":{"shingle":{"type":"text","analyzer":"shingle_analyzer"},"translit":{"type":"text","analyzer":"translit_analyzer"},"translit_ru":{"type":"text","analyzer":"translit_to_russian_analyzer"}}}
Данный вид запроса ничего не возвращает. Виды запроса мы отличаем по возвращенному эластиком score, прибавляем разную сумму и там понятно что какой возвращает.
Срабатывает другой вид запроса, который с фуззи.
Игорь, спасибо за подсказку, поправили. Но сейчас есть такая проблема:
Запросы: диспенсер для туалетной бумаги, туалетная бумага для диспенсеров. Наибольший из токенов - "token" : "диспенсер для туалетн бумаг", или соответственно "туалетн бумаг для диспенсер".
Но при этом, у товара "диспенсер для туалетной бумаги ..." score совпадает по обоим запросам, а интуитивно кажется что должно различаться, т.к. в одном из запросов этот токен содержится полностью.
Расшифровка:
{"_index":"mg1520866322","_type":"products","_id":"2852120","_version":1,"found":true,"took":6,"term_vectors":{"NAME.shingle":{"field_statistics":{"sum_doc_freq":621743,"doc_count":9587,"sum_ttf":628868},"terms":{"124548":{"term_freq":1,"tokens":[{"position":9,"start_offset":75,"end_offset":81}]},"126091":{"term_freq":1,"tokens":[{"position":8,"start_offset":67,"end_offset":73}]},"126091 124548":{"term_freq":1,"tokens":[{"position":8,"start_offset":67,"end_offset":81}]},"professional":{"term_freq":1,"tokens":[{"position":5,"start_offset":37,"end_offset":49}]},"professional больш":{"term_freq":1,"tokens":[{"position":5,"start_offset":37,"end_offset":58}]},"professional больш бумаг":{"term_freq":1,"tokens":[{"position":5,"start_offset":37,"end_offset":66}]},"professional больш бумаг 126091":{"term_freq":1,"tokens":[{"position":5,"start_offset":37,"end_offset":73}]},"professional больш бумаг 126091 124548":{"term_freq":1,"tokens":[{"position":5,"start_offset":37,"end_offset":81}]},"больш":{"term_freq":1,"tokens":[{"position":6,"start_offset":51,"end_offset":58}]},"больш бумаг":{"term_freq":1,"tokens":[{"position":6,"start_offset":51,"end_offset":66}]},"больш бумаг 126091":{"term_freq":1,"tokens":[{"position":6,"start_offset":51,"end_offset":73}]},"больш бумаг 126091 124548":{"term_freq":1,"tokens":[{"position":6,"start_offset":51,"end_offset":81}]},"бумаг":{"term_freq":2,"tokens":[{"position":3,"start_offset":24,"end_offset":30},{"position":7,"start_offset":60,"end_offset":66}]},"бумаг 126091":{"term_freq":1,"tokens":[{"position":7,"start_offset":60,"end_offset":73}]},"бумаг 126091 124548":{"term_freq":1,"tokens":[{"position":7,"start_offset":60,"end_offset":81}]},"бумаг лайм":{"term_freq":1,"tokens":[{"position":3,"start_offset":24,"end_offset":36}]},"бумаг лайм professional":{"term_freq":1,"tokens":[{"position":3,"start_offset":24,"end_offset":49}]},"бумаг лайм professional больш":{"term_freq":1,"tokens":[{"position":3,"start_offset":24,"end_offset":58}]},"бумаг лайм professional больш бумаг":{"term_freq":1,"tokens":[{"position":3,"start_offset":24,"end_offset":66}]},"диспенсер":{"term_freq":1,"tokens":[{"position":0,"start_offset":0,"end_offset":9}]},"диспенсер для":{"term_freq":1,"tokens":[{"position":0,"start_offset":0,"end_offset":13}]},"диспенсер для туалетн":{"term_freq":1,"tokens":[{"position":0,"start_offset":0,"end_offset":23}]},"диспенсер для туалетн бумаг":{"term_freq":1,"tokens":[{"position":0,"start_offset":0,"end_offset":30}]},"диспенсер для туалетн бумаг лайм":{"term_freq":1,"tokens":[{"position":0,"start_offset":0,"end_offset":36}]},"для":{"term_freq":1,"tokens":[{"position":1,"start_offset":10,"end_offset":13}]},"для туалетн":{"term_freq":1,"tokens":[{"position":1,"start_offset":10,"end_offset":23}]},"для туалетн бумаг":{"term_freq":1,"tokens":[{"position":1,"start_offset":10,"end_offset":30}]},"для туалетн бумаг лайм":{"term_freq":1,"tokens":[{"position":1,"start_offset":10,"end_offset":36}]},"для туалетн бумаг лайм professional":{"term_freq":1,"tokens":[{"position":1,"start_offset":10,"end_offset":49}]},"лайм":{"term_freq":1,"tokens":[{"position":4,"start_offset":31,"end_offset":36}]},"лайм professional":{"term_freq":1,"tokens":[{"position":4,"start_offset":31,"end_offset":49}]},"лайм professional больш":{"term_freq":1,"tokens":[{"position":4,"start_offset":31,"end_offset":58}]},"лайм professional больш бумаг":{"term_freq":1,"tokens":[{"position":4,"start_offset":31,"end_offset":66}]},"лайм professional больш бумаг 126091":{"term_freq":1,"tokens":[{"position":4,"start_offset":31,"end_offset":73}]},"туалетн":{"term_freq":1,"tokens":[{"position":2,"start_offset":14,"end_offset":23}]},"туалетн бумаг":{"term_freq":1,"tokens":[{"position":2,"start_offset":14,"end_offset":30}]},"туалетн бумаг лайм":{"term_freq":1,"tokens":[{"position":2,"start_offset":14,"end_offset":36}]},"туалетн бумаг лайм professional":{"term_freq":1,"tokens":[{"position":2,"start_offset":14,"end_offset":49}]},"туалетн бумаг лайм professional больш":{"term_freq":1,"tokens":[{"position":2,"start_offset":14,"end_offset":58}]}}}}}
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.