LINUX.ORG.RU
 
maxcom

Apache Lucene & Solr 3.5.0


0

1

Вышла новая версия библиотеки полнотекстового поиска Apache Lucene и построенного на ней поискового сервера Apache Solr.

Основные изменения в Lucene:

  • Существенное уменьшение объема оперативной памяти, используемого для хранения словарного индекса (LUCENE-2205)
  • Ускорение поиска по n-gramm'ам (LUCENE-3426)
  • Несколько новых API, упрощающих многопоточную работу с индексом
  • Поддержка wildcard запросов в модуле выделения найденного в результатах поиска
  • Различные багфиксы

Основные изменения в Solr:

  • Группировка результатов при распределенном поиске
  • Новый дополнительный стеммер "Hunspell" с поддержкой 99 языков
  • Дополнительный модуль для определения языка исходного текста, использующий детектор из Apache Tika или библиотеки Cybozu
  • Добавлен флаг, задающий положение пустых значений при сортировке - в начале списка или в конце
  • Различные багфиксы

>>> Подробности


[#]  
Nagwal

Они пофиксили работу на седьмой яве уже?

*** ()
[#]  

И это хорошо.

anonymous ()
[#] Ответ на: комментарий от maxcom 27.11.2011 11:20:18  
Nagwal

Т.е. баг все-таки в jdk был?

А то мне сейчас по работе не нужен апач с солром, не разбирался особо кто там виноват.

*** ()
[#] Ответ на: комментарий от Nagwal 27.11.2011 11:30:58  
maxcom

> Т.е. баг все-таки в jdk был?

Да, кстати он и в jdk 6 был с некоторыми опциями -XX, но там они выключены по-умолчанию

***** ()
[#]  

Чем оно лучше Sphinx?

anonymous ()
[#] Ответ на: комментарий от anonymous 27.11.2011 11:32:04  
maxcom

В Lucene гораздо больше возможностей

***** ()
[#]  
mikhalich

>Различные багфиксы

Надо посмотреть повнимательнее

** ()
[#] Ответ на: комментарий от anonymous 27.11.2011 11:32:04  
qbbr

в 3 раза больше жрёт оперативки...

** ()
[#] Ответ на: комментарий от anonymous 27.11.2011 11:32:04  
Ingwar

Как недавно на ЛОРе выясняли, Сфинкс найти Януковича по запросу "якунович", а Люцена умеет.

***** ()
[#]  
shahid

Можно ли сабж быстро заставить работать в режиме "съел текст - выдал лексемы, ничего не сохраняя"?

***** ()
[#] Ответ на: комментарий от shahid 27.11.2011 14:42:58  
real_maverick

> Можно ли сабж быстро заставить работать в режиме "съел текст - выдал лексемы, ничего не сохраняя"?

если ты стемминг имеешь в виду, то запросто ;)

*** ()
[#] Ответ на: комментарий от real_maverick 27.11.2011 15:17:07  
shahid

а язык текста перед стеммингом определить может?

***** ()
[#] Ответ на: комментарий от shahid 27.11.2011 15:23:08  

> а язык текста перед стеммингом определить может?

Естественно, иначе как стеммить? :)

* ()
[#] Ответ на: комментарий от nebm51 27.11.2011 15:34:50  
shahid

> Естественно, иначе как стеммить? :)

Последний раз, когда её ковырял, язык надо было задавать самому.

***** ()
[#] Ответ на: комментарий от Ingwar 27.11.2011 13:03:39  
qbbr

протисти, и я вступлю в беседу

** ()
[#] Ответ на: комментарий от shahid 27.11.2011 15:37:34  

> Последний раз, когда её ковырял, язык надо было задавать самому.

Пардон, меня проглючило. Последний раз я делал детект с помощью nutch'а.

* ()
[#] Ответ на: комментарий от qbbr 27.11.2011 15:39:58  
Ingwar

ну, я как бы Solr использую, не замечал за ним такого.

***** ()
[#] Ответ на: комментарий от shahid 27.11.2011 15:37:34  
maxcom

3.5 я еще не смотрел, в 3.4 надо было самому определять. Проще всего той же Apache Tika, нам ngramm'ный определитель вполне рабочий (впрочем со всеми недостатками таких определителей)

***** ()
[#]  
plus-one-is-not-needed

А чего с потреблением памяти у него? Ну если сравнить со Sphinx и Yandex Search Server.

Терабайтом памяти запасаться надо?

()
[#] Ответ на: комментарий от shahid 27.11.2011 15:56:37  
plus-one-is-not-needed

Зачем только для стемминга тянуть целый Solr/Lucene? Есть же standalone библиотеки для этого.

()
[#] Ответ на: комментарий от plus-one-is-not-needed 27.11.2011 19:09:33  
maxcom

> Терабайтом памяти запасаться надо?

Lucene очень много всякого умеет, все зависит от задачи.

***** ()
[#] Ответ на: комментарий от Nagwal 27.11.2011 11:30:58  
pitekantrop

> не разбирался особо кто там виноват

Что там разбираться? У них на главной странице до сих пор об этом написано.

*** ()
[#]  
pitekantrop

> Существенное уменьшение объема памяти, используемого для хранения словарного индекса (LUCENE-2205)

Сократили использование ОЗУ. Хранение индекса на диске не должно было измениться.

*** ()
[#]  
GblGbl

Кстати, насчёт стеммера - там только стеммер, или ещё морфологическая база есть? Я смотрел когда-то для русского языка - всё совсем уж платные были. Тот же "национальный корпус".

* ()
[#] Ответ на: комментарий от shahid 27.11.2011 15:23:08  
real_maverick

> а язык текста перед стеммингом определить может?

раньше было нельзя, сейчас вроде есть механизм для определения, у меня просто такой задачи не стояло

*** ()
[#] Ответ на: комментарий от GblGbl 28.11.2011 11:07:15  
real_maverick

> Кстати, насчёт стеммера - там только стеммер, или ещё морфологическая база есть?

aot.ru - сделано чужими для хищников, но там можно найт много вкусного ;)

*** ()
[#] Ответ на: комментарий от maxcom 28.11.2011 11:24:45  

А эта либа работает только в связке с люценой? Если да, то может быть вы посоветуете какие-нибудь ещё библиотеки? На PHP есть phpmorphy (на базе всё того же aot), хотелось бы что-то подобное для Java.

anonymous ()
[#] Ответ на: комментарий от Ingwar 28.11.2011 15:26:20  
KRoN73

Сфинкс «Януковича» находит в разных склонениях. Или я неверно распарсил исходное утверждение?

***** ()
[#] Ответ на: комментарий от pi11 28.11.2011 8:34:08  
Ingwar
>>-----Цитата---->>
>>-----Цитата---->>

Как недавно на ЛОРе выясняли, Сфинкс найти Януковича по запросу "якунович", а Люцена умеет.

<<-----Цитата----<<

http://sphinxsearch.com/docs/current.html#conf-wordforms

<<-----Цитата----<<

вы всерьёз думаете, что можно все варианты опечаток всех слов внести в словарь?

***** ()
[#] Ответ на: комментарий от KRoN73 28.11.2011 15:29:37  
Ingwar

угу. не верно. речь шла об опечатках: якунович->янукович

***** ()
[#] Ответ на: комментарий от Ingwar 28.11.2011 15:31:09  
KRoN73

Тьфу. Понятно. Ну и нафиг :)

***** ()
[#] Ответ на: комментарий от Ingwar 28.11.2011 15:29:46  

А Solr работает в данном случае?

** ()
[#] Ответ на: комментарий от Ingwar 28.11.2011 15:31:09  

На ЛОРе вот якунович'a только в этом треде находит.

** ()
[#] Ответ на: комментарий от pi11 28.11.2011 21:09:11  
Ingwar

Вполне у меня на сайте находит, "искаропки", что называется. (а на ЛОРе Solr стоит?)

***** ()
[#] Ответ на: комментарий от Ingwar 28.11.2011 21:23:03  

Ну покажи сайт что-ли.

** ()
[#] Ответ на: комментарий от pi11 28.11.2011 21:07:33  
maxcom
>>-----Цитата---->>

А Solr работает в данном случае?

<<-----Цитата----<<

У нас обычный стеммер, для опечаток нужно настраивать fuzzy поиск

***** ()
[#] Ответ на: комментарий от maxcom 28.11.2011 22:34:38  

даже мануал не накропать к поиску, так как сами не знаем всех возможностей :)

удивительно, как никто не заметил, что перелистывать поиск при выбранном разделе нет никакой возможности - сбрасывается выбор

***** ()
[#] Ответ на: комментарий от hizel 28.11.2011 22:54:17  
maxcom

ну в прошлой версии поиска перелистывания небыло совсем, и никто не жаловался :-)

***** ()
[#] Ответ на: комментарий от maxcom 28.11.2011 22:34:38  

Да, действительно. Интересная штука.

** ()