itman

Рейтинг
64
Регистрация
26.05.2001

Вообще, господа, создается ощущение, что пока сам рынок поисковых средств копеечный. Посмотрите сколько готовых решение бесплатных, не очень дорогих и в исходниках. Конкуренция просто сумасшедная. А что кто-то сделал на этом рынке большие деньги? Я лично не слышал таких примеров. Почти все кто поставляет "малые" поисковые системы делают это или с барского плеча, как Гугл, имея большие рекламные деньги, или вместе с готовым продуктом, как например Кодекс или Гарант.

Ps: то есть, конечно, рынок важный, нужный, но работа на нем пока больше на будущее. ну этом мое ИМХО, разумеется.

vrom:
гугль вроде торгует поисковиками для интранет... Врядли они захотят плодить себе конкурентов виде тематических поисковых систем :-)

ну видимо поэтому и продают довольно-таки слабенькое решение.

Ну уж если зашла речь про Гугль, неплохо было бы посмотреть на их спецификации (лицензия и прочая) по скорости индексации и поиска. Так вот, фактически, для индексации миллиона документов гуглю надо забашлять очень много и поставить, здесь внимание, двухюнитную систему.

Interitus:
Ну либо разработку с бюджетом, либо решение тоже за деньги, вроде тех чем Гугль торгует.

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

Для меня это равнозначно понятию не потянет. Поскольку поиск может идти 10-40 секунд в зависимости от количества ключевых слов, интенсивности процесса индексирования и фрагментированности базы, пользователь может просто не пользоваться таким "тормозом". А если два поиска почти одновременно? Что вешать табличку подождите, или батчи пускать ? :-) Кстати, на фоне процесса индексирования скорость поиска падает весьма заметно. Опять-таки, что значит не удалять? Это как-то несерьезно :-)

Фактически рано или поздно нужно идти путем одного перца:

делать дамп базы и заливать все с нуля. Тогда фрагментация нулевая и ищет довольно шустро. Была анонсирована скорость порядка 3 секунд на двух миллионах. Но как только индексер как следует перелопатит базу многосёрча пару раз, время поиска опять вырастет до 10-40 секунд. К тому же у многосёрча есть фундаментальная проблема, опять-таки, связанная с раскладкой индекса по реляционным таблицам. Индекс получается огромным в 500-600% от размеров текста и из-за этого весьма плохо кешируется. На базе в 1 млн документов вполне себе могут существовать запросы, которым мало 500-800 мегов кеша.

Interitus:
Вполне потянет и на бытовом серваке, ему только под key buffer метров 500-600 дать, и в multi режиме пускать (в single не потянет конечно). Ну и из базы главное ничего не удалять, только вставлять/обновлять.
Поиск конечно будет мягко говоря небыстрым, но при указанных 500-3000 посетителей в день (которые не факт что много запросов делать будут) - вполне нормально.

Ну вот упреждающий удар... Я тоже кое-что хотел рассказать на тему прунинга. В общем, получается, что только с прунингом можно не зависеть от размера базы. Но, кстати, у современных дисков среднее время позиционирования все-таки поменьше будет. Да и опять-таки если воткнуть в машину гигов 16 оперативки, то можно индекс по паре-тройке десятков миллионов типичных (но не больших веб-страниц) держать в памяти. но 50 миллионов на описанном выше железе - это, кажется, перебор. Впрочем, если я не прав, то подписываюсь на будущую публикацию, в которой будет описана поисковка Максима.

Kryukov:
Не совсем корректно :) Если поставить системе ограничение, что время поиска на любом запросе не должно превышать N, то можно скадать, что не зависит (поплотившись при этом полнотой). На самом деле, одной из самых больших "головных болей" сравнительно больших енджинов является физическое время seek головок (10 ms отдай и не греши на одно позиционирование :), что, естественно, будет в первую очередь зависеть от сложности входящего запроса, архитектуры системы, наличия кешей и много пр.

Ну скорость поиска ИМХО не может не зависить от размера базы.

Maxim Golubev:
Сейчас интернет канал очень узкий, посему из вне - скорость ужасная. Если тестировать на прямую, то 20-30 запросов в секунду. Хотя, ещё не все улучшения производительности были использованы. Памяти - 512Mb DIMM, проц PIII-866MHz, SCSI 320 Seagate 10000rpm.
Алгоритм делался так, что скорость конечной выдачи не зависит от объёма базы и тем более от среднего размера страниц.

Много миллион не тянет на одном серваке. Чтобы тянул надо ему метра 32 памяти поставить.

Maxim Golubev:
нет, у меня стоит моя личная разработка, он и 50'000'000 легко потянет, если винты вовремя доставлять :)

Позвольте поинтересоваться, а сколько запросов в секунду она "тянет" и на какой железке (сколько оперативной памяти и процов)? на 50 млн страниц. И еще ИМХО скорость от среднего размера страниц зависит.

AiK:
То ли глючит меня, то ли склероз подводит, но сдаётся мне, что ранньше в Яндексе была возможность искать по ЦСС и жабным скриптам...

мда... прочитал еще раз и понял, что недопонял вопрос. чисто теоретически и практически это не очень накладно, но большинство скриптов внтури комментариев, а поисковики комментарии не должны индексировать.

Разумеется, нет. Это слишком накладно для массового потребления. А по поводу гугл-хакс: начал читать, но потом бросил из-за ощущения жидкого киселя во рту. По большому счету слегка разбавленный хелп.

Всего: 444