Система для полнотекстового поиска
От: Other Sam Россия  
Дата: 03.12.09 21:23
Оценка:
Не знает ли кто-нибудь какую-нибудь систему для полнотекстового поиска?
Что-нибудь куда можно закидывать id, type, text и по строке запроса
получать список id, quote (и желательно отсортированным по релевантности)?
Posted via RSDN NNTP Server 2.1 beta
Re: Система для полнотекстового поиска
От: Аноним  
Дата: 03.12.09 21:43
Оценка: +1
Здравствуйте, Other Sam, Вы писали:

OS>Не знает ли кто-нибудь какую-нибудь систему для полнотекстового поиска?

OS>Что-нибудь куда можно закидывать id, type, text и по строке запроса
OS>получать список id, quote (и желательно отсортированным по релевантности)?

http://lucene.apache.org/solr/
Re: Система для полнотекстового поиска
От: Mr.Cat  
Дата: 03.12.09 21:46
Оценка: +1
Здравствуйте, Other Sam, Вы писали:
OS>Не знает ли кто-нибудь какую-нибудь систему для полнотекстового поиска?
OS>Что-нибудь куда можно закидывать id, type, text и по строке запроса
OS>получать список id, quote (и желательно отсортированным по релевантности)?
А средствами СУБД это делать — не вариант? У Oracle Text, например, озвученное получается прямо-таки на ура.
Re: Система для полнотекстового поиска
От: and_vs Россия  
Дата: 04.12.09 08:41
Оценка:
Здравствуйте, Other Sam, Вы писали:

OS>Не знает ли кто-нибудь какую-нибудь систему для полнотекстового поиска?

OS>Что-нибудь куда можно закидывать id, type, text и по строке запроса
OS>получать список id, quote (и желательно отсортированным по релевантности)?

compass, lucene
Re: Система для полнотекстового поиска
От: Other Sam Россия  
Дата: 05.12.09 12:43
Оценка:
> Не знает ли кто-нибудь какую-нибудь систему для полнотекстового поиска?
> Что-нибудь куда можно закидывать id, type, text и по строке запроса
> получать список id, quote (и желательно отсортированным по релевантности)?

Еще дополнительное требование возникло.
Нужно чтобы поиск работал с учетом прав пользователей.
Т.е. у меня есть куча документов, но каждый из них доступен для чтения
различным группам пользователей. Поиск для конкретного пользователя
должен искать только среди тех документов, которые доступны этому
пользователю.
Вот примерно такие структуры данных. Allows и denyes — списки ролей,
чтобы пользователь увидел какой-то документ, у него должна быть как
минимум одна роль из списка allows и не должно быть ни одной роли из
списка denyes.
[javascript]
var doc1 = {
id:1,
type:"Text",
allows:[1,5,7],
denyes:[3],
texts:[
{type:"text", value:"blah-blah-blah", weight:5},
{type:"title", value:"blah", weight:6}
]
};
var doc2 = {
id:1,
type:"UserInfo",
allows:[7],
denyes:[],
texts:[
{type:"firstname", value:"firstname", weight:4},
{type:"title", value:"Mr. FirstName LastName", weight:7},
{type:"lastname", value:"lastname", weight:4}
]
};

var results = searchEngine.find(
{
types:["UserInfo","Texts"],
query:"query text",
roles:[7,3] // <======================= Роли пользователя
}
);
[/javascript]
Posted via RSDN NNTP Server 2.1 beta
Re[2]: Система для полнотекстового поиска
От: Other Sam Россия  
Дата: 05.12.09 12:45
Оценка:
Здравствуйте, Other Sam, Вы писали:

>> Не знает ли кто-нибудь какую-нибудь систему для полнотекстового поиска?

>> Что-нибудь куда можно закидывать id, type, text и по строке запроса
>> получать список id, quote (и желательно отсортированным по релевантности)?

Еще дополнительное требование возникло.
Нужно чтобы поиск работал с учетом прав пользователей.
Т.е. у меня есть куча документов, но каждый из них доступен для чтения
различным группам пользователей. Поиск для конкретного пользователя
должен искать только среди тех документов, которые доступны этому
пользователю.
Вот примерно такие структуры данных. Allows и denyes — списки ролей,
чтобы пользователь увидел какой-то документ, у него должна быть как
минимум одна роль из списка allows и не должно быть ни одной роли из
списка denyes.
var doc1 = {
   id:1,
   type:"Text",
   allows:[1,5,7],
   denyes:[3],
   texts:[
     {type:"text", value:"blah-blah-blah", weight:5},
     {type:"title", value:"blah", weight:6}
   ]
};
var doc2 = {
   id:1,
   type:"UserInfo",
   allows:[7],
   denyes:[],
   texts:[
     {type:"firstname", value:"firstname", weight:4},
     {type:"title", value:"Mr. FirstName LastName", weight:7},
     {type:"lastname", value:"lastname", weight:4}
   ]
};

var results = searchEngine.find(
   {
     types:["UserInfo","Texts"],
     query:"query text",
     roles:[7,3] // <=======================  Роли пользователя
   }
);
Re[2]: Система для полнотекстового поиска
От: брюн Украина  
Дата: 05.12.09 16:58
Оценка: +1
Здравствуйте, Other Sam, Вы писали:

>> Не знает ли кто-нибудь какую-нибудь систему для полнотекстового поиска?

>> Что-нибудь куда можно закидывать id, type, text и по строке запроса
>> получать список id, quote (и желательно отсортированным по релевантности)?

OS>Еще дополнительное требование возникло.

OS>Нужно чтобы поиск работал с учетом прав пользователей.
OS>Т.е. у меня есть куча документов, но каждый из них доступен для чтения
OS>различным группам пользователей. Поиск для конкретного пользователя
OS>должен искать только среди тех документов, которые доступны этому
OS>пользователю.
OS>Вот примерно такие структуры данных. Allows и denyes — списки ролей,
OS>чтобы пользователь увидел какой-то документ, у него должна быть как
OS>минимум одна роль из списка allows и не должно быть ни одной роли из
заводишь еще 2 текстовых поля — allows и denies, чтобы там хранились айдишники ролей через пробел. и потом просто при поиске добавляешь к запросу нужное условие
Re: Система для полнотекстового поиска
От: MayB  
Дата: 07.12.09 08:52
Оценка:
Здравствуйте, Other Sam, Вы писали:

OS>Не знает ли кто-нибудь какую-нибудь систему для полнотекстового поиска?

OS>Что-нибудь куда можно закидывать id, type, text и по строке запроса
OS>получать список id, quote (и желательно отсортированным по релевантности)?

Попробуй Луцен от Апача:
http://lucene.apache.org/java/docs/
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.