Можно ли задать максимальное время индексации? Например, я индексирую
огромный сайт (форум) и заранее не знаю, сколько времени это займёт.
Но ставлю параметр, чтобы через Х часов индексация остановилась.
Ещё вопрос о производительности индексации. На вир.машине (1 ядро 2.4
Ггц, канал 5 мбит) скорость примерно 20 Кб/c. Это нормально или можно
как-то улучшить результат?
Честно говоря мне неизвестно, чтобы кто-то индексировал террабайт
данных используя DataparkSearch.
Основная проблема здесь - SQL сервер. С ростом числа
проиндексированных документов скокрость его работы падает.
Вы можете получить текущую статистику при помощи команды "indexer -S",
выполнять которую можно не останавливая процесс индексирования.
При рестарте индексирования будут индексироваться только новые и
устаревшие документы (для которых истек прериод, заданный командой
Period). Это не совсем с того же места, но уже проиндексирвоанные
страницы индексироваться не будут (опять де если не истек их Period).
Лимит индексирования по времени задается ключом -c для indexer,
который указывает число секунд работы indexer, по превышении которого
indexer акончит индексирование очередного документа и завершит свою
работу.
На скольки индексирующих нитях вы достигли скорости в 20 кбайт/с?
Скорость индексирования также зависит и от скорости работы серверов,
котоыре индексируются, поэтому лучше запускать несколько индексирующих
нитей и использовать рандомизацию выборки очередных страниц при помощи
ключа -r (или -rr), чтобы одновременно индексировались страницы с
разных сайтов.
2011/10/2 leo <bolshak...@ya.ru>:
--
http://www.dataparksearch.org/ - an open source search engine.
Для ускорения SQL базы всё будет на ssd дисках, может быть даже с
интерфейсом pci. Ну и, понятно, многоядерный сервак.
Работал 1 поток без рандомизации. Чем отличаются параметры "r" и
"rr"?
И как правильнее завершить работу indexer? Просто kill -hup? Или есть
какие-то нюансы?
Для завершения работы indexer ему необходимо послать сигнал -INT.
По сигналу -HUP он перечитывает файлы конфигурации и продолжает работу.
2011/10/3 leo <bolshak...@ya.ru>:
--
Отсюа вопрос, как бы так красивее это организовать? Собирать урлы весь
день и потом всю ночь их обрабатывать можно, но слишком долгим будет
время обновления выдачи, получится примерно раз в сутки. Есть ли
способы как-то оптимизировать этот момент?
В случае большой базы и кратковременных запусков indexer лучше
использовать cached или старый режим работы, когда результаты работы
сбрасываются в log-файлы с последующей обработкой run-splitter.
2011/10/14 itJunky <alpha...@gmail.com>:
> 12 часов заняла обработка каких-то жалких 50-ти ссылок =((((
>
--
Запускал индексеры так "sbin/indexer -me -N 1 -n 10000"
Какое значение у команды MarkForIndex в вашем indexer.conf ?
http://www.dataparksearch.org/dpsearch-perf.ru.html#MARKFORINDEX-CMD
Если указано no, то такая пометка не производится. Если же стоит yes
(и это же значение по-умолчанию), в этом случае нужно запускать каждый
indexer со сдвигом по времени от другого, примерно на время первой
выборки документов к индексированию (от вывода сообщения о старте до
начала показа обрабатываемых URL).
2011/12/1 itJunky <alpha...@gmail.com>:
--