Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
 Помогите выбрать  [new]
Gold
Member

Откуда: Харьков
Сообщений: 2947
Привет. Стоит задача хранения и обработки XML-документов (RSS-фидов).
Объём документов порядка 2-3 Гб.
Нужно выполнять сложный, но быстрый поиск по документам.
Требования к поиску:
1) высокая скорость (время поиска до 2-х секунд)
2) поддержка символов подстановки (фактически то, что позволяет LIKE в SQL)
3) поиск фраз
4) строка запроса в несколько киллобайт (например в SQL это выглядело бы так:
WHERE (DESCRIPRION LIKE '%sport' OR DESCRIPRION LIKE 'health%' OR DESCRIPRION LIKE '%life%') AND (DESCRIPRION LIKE '%vita%' OR ...) ....
и таких LIKE штук 500)
5) поддержка немецкого и английского языка

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

Железо: 2-х процессорный сервер. Какие процессоры не знаю. Памяти - гиг.

Заказчик хочет выложить за систему (СУБД или отдельную поисковую систему) порядка 2000 евро.

Кто чё посоветовать может?

Уже отпали в силу ряда причин: MySQL, MSSQL, OpenFTS, dotlucene, MaxDB XML, exist, FireBird :-(
14 мар 05, 17:40    [1384371]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
AAron
Member

Откуда: Москва
Сообщений: 4324
ну остались Oracle, DB2, Sybase ASA/ASE
14 мар 05, 17:47    [1384395]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
zass
Member

Откуда: Minsk
Сообщений: 1043
Уже отпали в силу ряда причин: MySQL, MSSQL, OpenFTS, dotlucene, MaxDB XML, exist, FireBird :-(

Плохому танцору...
14 мар 05, 18:04    [1384441]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
Gold
Member

Откуда: Харьков
Сообщений: 2947
Ну вот смотрите:
1) MySQL - не подходит реализация Full-text search
2) MSSQL - Full-text search не поддерживает некоторых нужных функций да и слишком дорого, учитывая что 2 сервера надо
3) OpenFTS - не поддерживает некоторых нужных функций
4) dotlucene - не поддерживает некоторых нужных функций
5) MaxDB XML - нет класоов доступа из .NET
6) exist - нет класоов доступа из .NET

Рассматриваем вариант самодельного Full text search, но:
1) есть опасения что реальные запросы будут слишком длинные
2) некоторые серверы неудовлетворительным образом обрабатывают LIKE '..' OR LIKE '..' ... (например мой любимый FireBird)
3) убогие средства разработки (проработав с IBExpert несколько лет я с ужасом смотрю на MSSQL Enterprise Manager, PGAdmin3). Если EM хоть по функциям ещё более-менее нормальный, то PGAdmin не умеет даже процедуры отлаживать :-(
14 мар 05, 18:39    [1384549]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
Alexey Rovdo
Member

Откуда: Москва
Сообщений: 913
Versant FastObjects .NET .
14 мар 05, 19:33    [1384676]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
segun
Member

Откуда: Москва
Сообщений: 504
Gold
Ну вот смотрите:
2) MSSQL - Full-text search не поддерживает некоторых нужных функций да и слишком дорого, учитывая что 2 сервера надо
какие именно функции не поддерживает и зачем 2 сервера? Объясните подробнее.
14 мар 05, 20:18    [1384754]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
2 Gold
А как Вы собираетесь хранить XML документы? Как одну большую запись в BLOBе или потрошить на несколько записей?

И кстати - что такое RSS? Хотя бы как расшифровывается
15 мар 05, 00:21    [1384966]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
Gold
Member

Откуда: Харьков
Сообщений: 2947
Не поддерживаются функции поиска с символами подстановки когда эти символы расположены в начале выражения, например поиск типа LIKE '%zzz'
Две СУБД т.к. будет сервер-зеркало и репликация между ними.
XML будет храниться в разложенном виде, т.к. структура RSS известна.
15 мар 05, 11:07    [1385610]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
Gold
Member

Откуда: Харьков
Сообщений: 2947
По версанту пока-что ничего не прояснилось.
Вот смотрел в сторону Линтера, но у них нет документации английской или немецкой, хотя судя по описанию поиск там супер :-(
15 мар 05, 11:47    [1385860]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
LSV
Member [заблокирован]

Откуда: Киев
Сообщений: 30817
>> Уже отпали в силу ряда причин....
Вот и хорошо ! За такую сумму вполне можно отказаться от такой малознакомой Вам темы.
17 мар 05, 18:14    [1395624]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
AntonGart
Member

Откуда:
Сообщений: 303
См. Oracle Text и будет вам щастье :)
11 апр 05, 10:59    [1456222]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
Gold
Member

Откуда: Харьков
Сообщений: 2947
Заказчик не потянет Oracle Text, тем более что 2 сервера будет.
11 апр 05, 12:08    [1456576]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
Alexey Sh
Member

Откуда: SPB
Сообщений: 1930
ИМНО за 2000 евро задача не имеет адекватного решения,или денег добавлять, или потребности сокращать
11 апр 05, 12:17    [1456626]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
Gold
Member

Откуда: Харьков
Сообщений: 2947
Вобще-то есть движок dtSearch - 1000 $ стоит. Но пока что заказчик не решился его купить.
Также есть СУБД Линтер. Если там прикрутят к полнотекстовому поиску поддержку фраз, то будет неплохой вариант.

А пока-что мы мучаемся с dotLucene
11 апр 05, 15:41    [1457739]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
c127
Guest
Посмотрите на Sybase ASA. Очень недорого и надежно, поддерживается .НЕТ, есть поиск в ХМЛ, очень быстро развивается и хорошо поддерживается. Полнотекстовый поиск в последних релизах вроде появился, но в принципе написать свой поиск ничего не стоит, это пара дополнительных таблиц и пара запросов в десяток строчек каждый. У нас так работает, ищет множество слов по включению, по исключению и то же с фразами. Ничего нестандартртного нет, нужен только хороший оптимизатор запросов, а в АСА он очень хороший. Стандартный поиск не использовали, потому что раньше не было.
12 апр 05, 04:12    [1459117]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
Gold
Member

Откуда: Харьков
Сообщений: 2947
2 c127:

Так я не понял, какая у Sybase единица индексирования? Слово? Я вобще не представляю себе алгоритмы индексирования, которые позволяют искать по началу фразы, по окончанию, по середине, слова на расстоянии и слова с ошибками и с поддержкой стемминга. Из всех полнотекстовых поисков, встроенных в БД, которые я пересмотрел, ни один фразы обрабатывать толком не умеет :-(

Поиск по словам я бы и сам смог смастерить, а вот с фразами сложнее :-(
12 апр 05, 12:03    [1460272]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
ASCRUS
Member

Откуда: МО Электросталь
Сообщений: 5994
Gold
2 c127:

Так я не понял, какая у Sybase единица индексирования? Слово? Я вобще не представляю себе алгоритмы индексирования, которые позволяют искать по началу фразы, по окончанию, по середине, слова на расстоянии и слова с ошибками и с поддержкой стемминга. Из всех полнотекстовых поисков, встроенных в БД, которые я пересмотрел, ни один фразы обрабатывать толком не умеет :-(

Поиск по словам я бы и сам смог смастерить, а вот с фразами сложнее :-(

Не понимаю, зачем СУБД нужно круто уметь искать. Ей легче хранить статьи, а уж хорошо искать - это задача специализированных поисковых систем. Решений думается на рынке поисковых систем много, писать свой самопал, да еще и используя стандартный Full Text Search СУБД и терзая информацию с XML - как то в эффективность такого решения верится с трудом.
12 апр 05, 12:39    [1460455]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
Gold
Member

Откуда: Харьков
Сообщений: 2947
Ну задача у нас такая. Надо своеобразный монитор сделать. Документы сохраняються в базу и по заданным пользователем поисковым фразам надо эти документы фильтровать. Фраза может быть огромной.
Становиться непонятно почему поисковые движки могут стоить такие индексы, а СУБД нет?
12 апр 05, 13:52    [1460916]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
Gold
Member

Откуда: Харьков
Сообщений: 2947
Т.е. поисковая стока может сожержать несколько тысяч ключевых фраз, соединённых логическими операторами. К стати сказать, разработчики СУБД Линтер сказали что это обычная задача - ничего сверестественного. Только вот Линтер ихний длинные запросы обрубает и фразы не обрабатывает.
12 апр 05, 13:56    [1460940]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 32898

Привет, Gold!

Гугловский движок подешевел недавно.
Был 5k$, сейчас 3k$.
Как вариант не рассматривал?

--
With best regards, Мимопроходящий.

Posted via ActualForum NNTP Server 1.1

12 апр 05, 14:01    [1460967]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
Gold
Member

Откуда: Харьков
Сообщений: 2947
Не, мы его не смотрели. Щас посмотрю.

Мы яндексовский рассматривали, так он запросы в 20 000 символов проглотить не может :-(. А так яндексовский покруче гугловского будет намного.
12 апр 05, 14:14    [1461033]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
Gold
Member

Откуда: Харьков
Сообщений: 2947
К стати, я нигде не нашёл что гугл сам движок поисковый продаёт. Они вроде как индексируют то что тебе надо на своём сервере, а сам движок фиг продадут.
12 апр 05, 14:19    [1461057]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 32898

Привет, Gold!
Ты пишешь:

Gold
G> К стати, я нигде не нашёл что гугл сам движок поисковый продаёт.
G> Они вроде как индексируют то что тебе надо на своём сервере,
G> а сам движок фиг продадут.
http://www.google.com/intl/en/press/pressrel/moremini.html
А твоих восторгов по поводу яндекса не разделяю.
Лично мне не нравится то, что он считает себя "дюже вумным"
и пытается (зачастую напрасно), варьировать морфологию,
когда его никто об этом не просит!

--
With best regards, Мимопроходящий.

Posted via ActualForum NNTP Server 1.1

12 апр 05, 14:36    [1461155]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
я
Guest
Именно тот случай, когда жалко что Оракл такой дорогой....
12 апр 05, 19:00    [1462438]     Ответить | Цитировать Сообщить модератору
 Re: Помогите выбрать  [new]
c127
Guest
2 Gold

>Так я не понял, какая у Sybase единица индексирования? Слово?

Это надо у ASCRUS-а спросить, мы стандартными средствами не пользуемся по причине отсутствия в старых версиях.

>Я вобще не представляю себе алгоритмы индексирования, которые позволяют искать по началу фразы, по окончанию, по середине, слова на расстоянии и слова с ошибками и с поддержкой стемминга. Из всех полнотекстовых поисков, встроенных в БД, которые я пересмотрел, ни один фразы обрабатывать толком не умеет :-(

Если за атом брать слово, то несложно придумать как искать по началу фразы и по окончанию и все записать в СКЛ-е. У нас ищется только вхождение-исключение слов и фраз независимо от положения в документе, но зато есть много полей и можно задать в каких полях нужно искать.

2 ASCRUS

>Решений думается на рынке поисковых систем много, писать свой самопал, да еще и используя стандартный Full Text Search СУБД и терзая информацию с XML - как то в эффективность такого решения верится с трудом.

Стандартные средства не исползуются. Ситемой это назвать сложно, там 3 таблицы и 4 запроса, вот и вся система.

А кстати в АСА уже появилилсь стандартные средства? В смысле Full Text Search?
13 апр 05, 01:27    [1462941]     Ответить | Цитировать Сообщить модератору
Все форумы / Сравнение СУБД Ответить