|
Добавление индексов
|
|||
---|---|---|---|
#18+
SQL*Plus Как обстоят дела в ElasticSearch с контекстным поиском на русском языке? Вы знаете ответ? Я отвечу так. Я использовал ElasticSearch для поиска в логах сведений об ошибках. Разумеется логи - англоязычные. Поддерживает ли конкретно ElasticSearch русский я не знаю. Но по стеку технологий. Эластик использует Apache Lucene а тот в свою очередь имеет модули поддержки русского языка. Есть алгоритмы стемминга. По поводу как "обстоят дела" - я не могу ответить. Это слишком размытый вопрос. Это вопрос требующий глубокого погружения в область. У меня нет столько времени. Если у вас есть сведенья о дефекте ElasticSearch - то прошу вас эти сведенья предоставить. Подача намёков на дефект, согласитесь выглядит как легкий троллинг. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 10:28 |
|
Добавление индексов
|
|||
---|---|---|---|
#18+
mayton SQL*Plus Как обстоят дела в ElasticSearch с контекстным поиском на русском языке? Вы знаете ответ? Я отвечу так. Я использовал ElasticSearch для поиска в логах сведений об ошибках. Разумеется логи - англоязычные. Поддерживает ли конкретно ElasticSearch русский я не знаю. Но по стеку технологий. Эластик использует Apache Lucene а тот в свою очередь имеет модули поддержки русского языка. Есть алгоритмы стемминга. По поводу как "обстоят дела" - я не могу ответить. Это слишком размытый вопрос. Это вопрос требующий глубокого погружения в область. У меня нет столько времени. Если у вас есть сведенья о дефекте ElasticSearch - то прошу вас эти сведенья предоставить. Подача намёков на дефект, согласитесь выглядит как легкий троллинг. Я вообще не знаю, что такое ElasticSearch. Но я знаю, что у многих (большинства?) заграничных программных продуктов есть проблемы лексической обработки информации на русском языке. (Они есть и у Oracle Context без RCO) Поэтому я спрашиваю: корректно ли обрабатывает ElasticSearch русскоязычную информацию? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2021, 20:03 |
|
Добавление индексов
|
|||
---|---|---|---|
#18+
SQL*Plus, а ты "русскоязычную информацию" в транслит засунь ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2021, 20:54 |
|
Добавление индексов
|
|||
---|---|---|---|
#18+
бабушкин зайчик SQL*Plus, а ты "русскоязычную информацию" в транслит засунь И чем это поможет? [spoiler] Товарищ не понимает ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2021, 23:12 |
|
Добавление индексов
|
|||
---|---|---|---|
#18+
SQL*Plus, во1, будет занимать в 2 раза меньше пространства а во2, будет искать быстрее и без проблем с кириллицей ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2021, 23:24 |
|
Добавление индексов
|
|||
---|---|---|---|
#18+
точнее пространства надо будет больше, потому что будет основной текст + транслит но не сильно больше, потому что транслит займёт только горячие кеи ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2021, 01:55 |
|
Добавление индексов
|
|||
---|---|---|---|
#18+
Товарищ бабушкин зайчик, вы понимаете о чём идет речь? Догадываетесь, что такое "поиск с учетом словоформ"? Или так просто прикалываетесь s etim samym translitom? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2021, 14:11 |
|
Добавление индексов
|
|||
---|---|---|---|
#18+
бабушкин зайчик SQL*Plus, а ты "русскоязычную информацию" в транслит засунь Нет. Это так не работает. Обычно текстовый поиск индексирует токены. Это ключи которые покрывают отражают документ и по которым впоследствии строится формула рейта. Тоесть насколько близок документ к искомому поисковому выражению. Токены для разных языков получаются по разному. Для русского языка обычно используется алгоритм 1) отбрасывания стоп-слов. 2) Стемминга, тоесть свёртки всех падежей и склонений к основе. Apache Lucene (engine для Elastic) под капотом использует алгоритм SnowBall для стеммингования русских слов. SnowBall последовательно отсекают суффиксы и окончания от слова до тех пор пока оно не достигнет некого устойчивого состояния. И эта основа - идет в индекс как ключ. Отдельно также идет алгоритм лемматизации. Правда я не знаю используется ли лемматизация в Elastic. Также нет точной информации подключается ли модуль русского языка в Elastic. Это надо смотреть в настройках Elastic. Для каждого языка или группы языков - существует в открытых исходниках своя реализация преобразования документа в токены. Все прочие алгоритмы упрощения текстового поиска - идут обычно от незнания. Люди которые не разбираются в текстовом поиске часто представляют себе задачу по другому. Или представляют себе что текстовый поиск это просто очередная разновидность grep или не дай бох B+Tree индекса в БД. Поэтому сама по себе идея замены русских букв на транслитерацию ничего хорошего на дает для текстового поиска а лишь ухудшает селективность результата. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2021, 14:35 |
|
Добавление индексов
|
|||
---|---|---|---|
#18+
я не прикалываюсь. что с того что морфологический поиск? там точно также будут разные окончания, которые можно отбросить и искать по словам во фразах возможно в эластике надо словарик создавать, но возможно кто-то уже додумался ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2021, 14:37 |
|
Добавление индексов
|
|||
---|---|---|---|
#18+
mayton, так то можно сначала отбросить окончания, а потом сделать транслитерацию но оно и сразу должно сработать в эластике ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2021, 14:39 |
|
Добавление индексов
|
|||
---|---|---|---|
#18+
Я-же говорю - селективность упадет. Как ты будешь различать русское "море" и английское "more" ? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2021, 15:02 |
|
Добавление индексов
|
|||
---|---|---|---|
#18+
[quot mayton#22370394] бабушкин зайчик Токены для разных языков получаются по разному. Для русского языка обычно используется алгоритм 1) отбрасывания стоп-слов. 2) Стемминга, то есть свёртки всех падежей и склонений к основе. Apache Lucene (engine для Elastic) под капотом использует алгоритм SnowBall для стеммингования русских слов. SnowBall последовательно отсекают суффиксы и окончания от слова до тех пор пока оно не достигнет некого устойчивого состояния. И эта основа - идет в индекс как ключ. Этот алгоритм без словаря русских слов даст весьма неточные токены. Классические примеры: Ходить, иду, шёл, прошёл. + разные значения одного слова Посол (человек), посла, послом, послы. Посол (засолка чего-либо), посола, посолом, посолы. Правда тут они приводятся к единому токену "посол" Короче, нужен помощник (дополнительный модуль) по местному языку, чтобы все работало правильно. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2021, 16:49 |
|
|
start [/forum/topic.php?fid=32&msg=40096585&tid=1539783]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
33ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 268ms |
total: | 390ms |
0 / 0 |