itman

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

вот я тоже считаю, что если это нормально делать, а не левой ногой, то это займет нормальное время. потому что надо обязательно

а) Нужно распределять странички, проверять дубликаты и опять-таки считать индекс цитирования. если одна машина не справится с такой работой по объему, то децентрализованная разработка такой фичи - это не просто.

а1) Если это нужно для форума, то придется вкручивать еще какой-нибудь попьюлэрити линк

б) реализовать какой-то там апи для хождения на отдельные машины

и очень желательно

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

г) Сделать load balancer и репликацию поисковых баз. И что-то придумать на случай упадания отдельных машин.

а потом все это протестировать, написать скрипты для нагиос. геморрой, короче.

mnt:
вы что-то напутали.

да, и кстати помнится мне, что aspseek не умеет ничего индексировать локально (а-ля file:///) и из базы :-) так, например, для file:/// я сам дела изменения, отправлял киру, но поскольку разработка в то время уже пр. не велась, то кажется, эти изменения в релизную версию и не включили :-)

угу, кстати, в отрыве от мейкфайла, компилятора и платформы это и не баг вовсе, а так непортабельность. кто знает, может в мейкфайле было

CXXFLAGS += -funsigned-char

CFLAGS += ..

CPPFLAGS += ..

Kryukov:
☝ Злой ты, просто забыли приписать вот это:
(void) signal(SIGSEGV,handle_segv);
(void) signal(SIGBUS,handle_bus);
(void) signal(SIGILL,handle_ill);
думаю, в современных ОС это не обязательно :) :)

Ох, жеж бл@ть. Я бы, кстати, за это уволил разработчиков языка Си. За то, что они разбросали такие шикарные грабли. Шучу, конечно. Не делает ошибок известно кто. Печально то, что на такие и аналогичные грабли регулярно (иногда случайно) наступают не только неопытные, но и весьма зрелые люди. Впрочем, этот пример потдверждает мой тезис, что на языках Си и Си++ нельзя научиться писать быстро.

Интересная темка, а если у меня английская часть сайта лежит в подкаталоге english. Я сначала внес английскую ссылочку. А потом месяца через 1.5 и русскую, которая на корень сайта. Может ли это считаться спамом?

Кстати, MySQL full text search может быть не лучшим решением. Там у нее в основе лежит векторная модель (поиск кажется последовательный перебор) со своими тараканами.

баян, конечно, но от себя добавил бы, что общая алгоритмическая подготовка, в частности в области сжатия данных, дерево- и хеше-строения была бы большим плюсом.

Vyacheslav Tikhonov:
Создать поисковик можно на любом языке программирования. Естественно, чем более низкоуровневый язык, тем лучше будет его производительность. :)
Если вкратце, то должен разбираться в Information Retrieval.

я Вам там сообщение в личку послал, думаю, что нам уже хватит тут офтопить :-)

Evg:
14,6 МБ объем. Если вы только хотите смотреть ядро системы.
Если же вы будете прикручивать туда морфологический модуль (см. на примере Немецкого языка) и дополнительные фичи (что не идут в ядре) то код (в данном случае у меня) превышает 30 МБ.
Посмотреть такой объем даже бегло, за сутки достаточно проблематично.

Пардон, может мы говорим о разных вещах? Запускать я его пока не пробовал. Только смотрел исходные тексты. Имел в виду то, что скачивается по адресу http://www.apache.org/dyn/closer.cgi/lucene/nutch/.

Там архив действительно под 50 метров, но из них java файлы занимают 2 с чем-то мегабайта, а остальное скомпилированные jar файлы. Я исхожу из соображений, что если коды открыты, то они все и должны скачиваться в одном архиве. Может, я конечно, чего-то недопонимаю.

Evg:
>Вот сейчас посмотрел всего два мега исходного джава кода.
>А вот, кстати, о каком скрипте идет речь в Вашем сообщение?
Так Вы же посмотрели скрипт. Исходники у Вас составляют всего 2 мега :)
А вообще я говорю о Nutch. Это ж понятно, если зайти по тем ссылка что я дал.
>Абсолютные пустяки.
Это о объеме или о схемовых решениях?
Если о самом коде, то интересно узнать Вы хоть пробовали запускать его?
P.S. совет, имхо не связывайте с поиском где задействованы SQL базы данных. Об этом вроде уже не раз говорилось на этом форуме :)

опять-таки запускать я его только собираюсь, но если честно, то не понимаю какие страшные проблемы может вызвать хороший код такого не очень большого объема (2.5 мега). хотя, опять-таки, повторюсь может там действительно не все исходники выдаются?

ну, хорошо, убедили. действительно, новая, хорошая фича.

5.2.2. Cache mode word indexes structure

The main idea of cache storage mode is that word index and URLs sorting information is stored on disk rather than in SQL database. Full URL information however is kept in SQL database (tables url and urlinfo). Word index is divided into number of files specified by WrdFiles command (default value is 0x300). URLs sorting information is divided into number of files specified by URLDataFiles command (default value is 0x300).

но все-таки прошу обратить внимание, что этой фичи нет в mnogosearch'е!

Zute:
Что-то вы загнули сильно, никаких двух версий индекса нет, как и 4-5 размеров текста, у меня при 9.4 гига проиндексированного текста объём базы cached mode составляет 3.9 гига, + SQL-база весит 4.3 гига.

Вы все-таки малость преувеличиваете масштаб бедствия. :-) Современный поисковик, особенно если в нем не изобретать велосипед, а использовать готовые либы и технологии, вроде iconv, corba и j2se довольно-таки кондовая штука. Вот сейчас посмотрел всего два мега исходного джава кода. Абсолютные пустяки. Все остальное, это уже скомпилированные бинарные jar-файлы. А вот, кстати, о каком скрипте идет речь в Вашем сообщение?

Evg:
>сделан не русскими (то есть возможны проблемы с кодировками).
Проблем не будет там utf :)
А вот прикручивать морфологию и править скрипт это язык знать. Все же 50 мегов кода в архиве. Однако скрипт на данный момент самый мощный.
Учитывая, что подобный скрипт в одиночку написать практичестки нереал (надо просто знать сколько вбухано в данный скрипт денег и кто его пишет...), то думаю на данный момент лучшей выбор.
http://www.i2r.ru/static/334/out_20657.shtml
Однако повозиться придется. Это скрипт другого уровня чем датасердс, много... и aspseek.
Скажем так, если aspseek трехпрограмник, то Nutch комп. корабля шатла. Это так сравнение :)
"Вожусь" с данным скриптом более года.
См.
http://wiki.media-style.com/display/nutchDocu/setup+a+map+reduce+multi+box+system
http://www.nabble.com/Nutch-f362.html
Демо на русском могу скинуть в личку.
Всего: 444