- - - - - - - - - - - - - - - - - - - - - - - - - - - - Name: ooptimum Subject: Параллельное многосерверное индекирование
Сегодня заметил, что на машине (PIV 3.2GHz, 1Gb RAM) с DataparkSearch (dbmode=multi, используется демон stored) и MySQL во время индексирования в 5 потоков load average: 7.41, 6.03, 5.00. Это много -- решил добавить новый сервер для индексирования. В документации прочел, что [quote]Пользователи MySQL и PostgreSQL могут запускать несколько indexer одновременно с одним и тем же файлом конфигурации indexer.conf. Мы успешно опробовали 30 одновременно работающих indexer использующих базу данных MySQL. Indexer использует механизм блокировки MySQL и PostgreSQL для избежания двойного индексирования одних и тех же документов разными одновременно работающими indexer. Параллельное индексирование может работать некорректно с остальными поддерживаемыми SQL серверами. Вы можете использовать многопоточную версию indexer c любым SQL сервером, поддерживающим параллельные соединения с базой. Многопоточная версия использует свой собственный механизм блокировки.[/quote] Но я и пользуюсь многопоточной версией indexer'а. Значит ли это, что он не использует механизм блокировок, предоставленный БД? Как мне организовать работу нескольких многопоточных indexer'ов на нескольких серверах с общей БД? Нужно ли переходить к схеме с cached? Если да, то как это сделать без потери результатов уже проделанной работы? Также в идеале хотелось бы, чтобы разные сервера индексировали разные сайты, например, один индексирует те, что доступны через пиринговые сети со скоростью 100 Mbps, а второй -- все остальные, доступные по каналу 1Mbps. Как это сделать правильнее всего? - - - - - - - - - - - - - - - - - - - - - - - - - - - - Read the full topic here: http://www.dataparksearch.org/cgi-bin/simpleforum.cgi?fid=05;post=