mnoGoSearch: индексирование таблиц, сортировка

12
M
На сайте с 29.03.2003
Offline
65
#11
Как писал Sergeant Perecz


Насколько стабильна 3.2.x?
Исправлена проблема с индексацией больших таблиц?
Какие известны баги?
Насколько сложен процес миграции с предыдущей версии на новую?

1. работает

2. Нет такой проблемы - если вы хотите выбрать всю базу одним запросом HTDBList будьте готовы иметь железо, которое сможет выполнить ваш запрос. Ровно также как и с обычными селектами в SQL.

3. http://www.mnogosearch.org/bugs/

4. несложен.

Проверь свои запросы: Вершки Рунета (http://www.43n39e.ru/)
SP
На сайте с 07.07.2003
Offline
0
#12

Спасибо!

Как писал Maxime

2. Нет такой проблемы - если вы хотите выбрать всю базу одним запросом HTDBList будьте готовы иметь железо, которое сможет выполнить ваш запрос. Ровно также как и с обычными селектами в SQL.

Означает ли это, что проблема с индексацией больших таблиц не стоит и в текущей стабильной версии?

Если да, то практика говорит об обратном.

Мне не совсем понятно относительно железа. Речь же не идет о загрузке всей таблицы в память. Мне казалось, что HTDBList грузит только индекс и потом выполняет HTDBDoc для каждого значения индекса. Если это сделано по другому, то это проблема не железа, а дизайна mnoGoSearch (поймите правильно, продукт хороший, бесплатный, но хочется лучше...).

(Я могу запустить запрос с PHP и он без проблем покажет мне индексы 120 000 записей.)

Как бы там не было, большие таблицы существуют в природе :-), поэтому было бы логично попытаться найти workaround для существующей проблемы. В конечном итоге, почему бы не индексировать такие таблицы порциями?

M
На сайте с 29.03.2003
Offline
65
#13

Вы ошибаетесь, команда HTDBList из индекса базы генерит нечто вроде индекса в HTML. Но у mnogosearch есть ограничение на максимальный размер индексируемого файла, для 3.1 версии он меняется с перекомпиляцией, для 3.2 меняется параметром. Поэтому всё и сводится к вашему железу - может ли оно выделить для вашего процесса достаточно памяти или не может.

HTTDB - это и есть workaround, олько нам надо уметь пользоваться, как и всем остальным. Вам сосбственно неикто не мешает сделать несколько HTDBList команд...

SP
На сайте с 07.07.2003
Offline
0
#14

Чтож, Ваши слова еще раз подтверждают, что это проблема дизайна mnoGoSearch.

Я, конечно, понимаю, что, как Вы написали, HTTDB надо уметь пользоваться (я бы, наверное, сюда не писал, если бы был mnoGoSearch гуру), но цитирую слова создателя mnoGoSearch Александра Баркова о проблеме индексирования больших таблиц:

Yes, this is known longstanding problem.

It even remains in latest 3.2.x CVS sources.

OK. I'll finally fix this today in CVS.

For 3.1.19 the workaround is to use LIMIT,

as you already did. Another thing is to use

bigger MaxDocSize. It is 1M by default, you can

set it to for example 3M.

http://www.mnogosearch.org/board/message.php?id=4286

А относительно того, чтобы написать несколько запросов. Это, наверное, возможно, хотя у меня была проблема, когда мне надо было проиндексировать два раза одну и ту же таблицу, но в URL должны были быть разные параметры. mnoGoSearch игнорировал второй скан таблицы. Мне пришлось поменять URL в HTDBList (в первом случае использовать http://www.xyz.com, а во втором http://xyz.com) и тогда все заработало.

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

HTDB - это не workaround, a feature, которая положительно отличает mnoGoSearch от некоторых конкурентов. Только было бы неплохо, если бы она нормально работала.

M
На сайте с 29.03.2003
Offline
65
#15
Как писал Sergeant Perecz
Чтож, Ваши слова еще раз подтверждают, что это проблема дизайна mnoGoSearch.

А ваши, что вы кивками на дийзайн хотите прикрыть своё неумение или даже нежелание правильно пользоваться этим инструментом. Не более. Еще раз: при задании достаточного MaxDocSize и возможности вашей системы выделить такое количество памяти, проблем с индексацией таблиц любого размера нет. Приведённая вами цитата говорит имеено тоже самое, что было сказано мной, только на английском. Все остальные "танцы с бубнами" - это решение проблемы, когда ваша система не может выделить требуемого количества памяти...

С таким же успехом можно сказать, что Windows2000 имеет проблему в дизайне - она не работает на 16 мегабайт ОЗУ...

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий