Leom

Рейтинг
35
Регистрация
02.05.2004
pelvis:
Ничего я не болтун . В среднем скорость записи позволит за час записать такой объем. Это без учета фрагментации и разборки под индекс.
Если бы Вы написали про суперсервер с 8-ю процами и 6 сказями в нуле, ну может быть и стоило бы поверить, что индекс будет ничего. А так вариантов 2- индекс такой, что потом выборка не фонтан или наоборот, все хорошо, только с техникой немного не так (другая тестовая модель должна быть знаете ли).

Как раз вы болтун и я отвечаю за свои слова. Вы же не тестили SearchInform верно ?

Скоррость записи чего -- 16 гиг индекса не возможна за 6 часов?

Или скорость чтения 100 гиг за 6 часов нереальна?

Не смешите меня и сообщество.

Я вот могу сказать что именно на этом тестовом компе тестировалось не в индексировании а просто так скорость чтения 12 гиг из 400 файлов и их же записи в один файл. Так вот занимает это ровно 30 минут.

Соотсветственно в час порядка 50 гиг легко винт выдержит.

Если не верите -- возьмите студента он вам за 10 баксов напишет такую тестовую прожку и запустите это на винте 160 гиг 7200 оборотом (ну у меня конкретно samsung)............

Жду ваших аргументов если вы не болтун. Правда вы еще и на предыдущий вопрос не ответили про какую запись речь идет что она за 6 часов невозможна........

itman:
Стоп-слова, или очень частотные слова на самом деле, нужны в индексе. И как ни странно для того, чтобы быстро отвечать на тяжелые фразовые запросы "to be or not to be". Потому как если выбрать все документы со словом be (отнюдь не низкочастотным), то проверить наличие в них фразы можно только подняв текст документов (или их преобразованную версию). Поскольку документов со словом be очень много (практически каждый первый, если be еще и стеммится), каждый требует рандом акссесса к диску. Резюмируя все это, можно предположить, что запрос вполне может по дисковой активности вылиться на 5-10 минут (фактически по 0.05 мс на каждый найденный документ, а если их миллион, то операция займет больше часа). А если слова to, or, not есть в индексе, то хоть операция считывания соответствующих инвертированных списков и пересечения со списком be тяжелая, но списки можно считывать последовательно и гораздо быстрее. Думаю, что в минуту можно уложиться :-)

Минута это результат неприемлимый для промышленной системы :)

Вот провел тест.

База документов :

Размер документов 132,26 gb

Всего документов 2,888,202

Уникальных слов 18,912,257

Размер чистого текста 77,57 gb

Размер индекса 16,29 gb

Время индексации 6:28

В среднем гб в час 20,45

Далее все время в секундах -- они на скринах внизу

1) Поиск по слову Device == www.searchinform.com/tmp/device.gif

Найдено 870.748 документов

Время 2.188

2) Поиск по слову connected == http://www.searchinform.com/tmp/connected.gif

Найдено документов 1.034.702

Время 2.375

3) поиск по фразе http://www.searchinform.com/tmp/device_connected1.gif

Поиск по фразе device connected где порядок слов не важен и максимальное число других слов между заданными =10

Результат = 199.975 документов

Время = 7.439

Надеюсь что тесты показываю скорость работы на очень частотных словах?

Причем вместе с ростом базы время отработки поискового запроса ухудшается незначительно.

Почему то все зациклились на обычных инвертированных спискакх -- там да нереально достичь не индекса в 20% ни быстрых ответов при поиске......

А SearchInform именно из за своих технологий и стал реально на сеголня самой быстрой поисковой системой в мире :) Если кто то готов сказать что есть более быстрая система и предоставить тесты, то я буду очень рад. Мы не скрываем результатов своих тестов и более того даем всем желающим самостоятельно проверить правдивость наших слов.

AlexA:
Так, все-таки, какой объем стоп-словаря Вы использовали в тесте? Не влияет ли это в Вашей системе на скорость индексирования?
Простите за отвлечение, но однажды я встретил систему, где объем стоп-словаря был в тысячи слов. Разработчик объяснял это примерно также, как Вы (думаю, это просто совпадение). Кроме того, он утверждал, что для поиска глаголы вообще не нужны (не считая предлогов, союзов и пр. "мусора").

Ну я авообще то ответил уже на это -- что ждостаточно скачать SearchInform и зайти в менеджер стоп слов и там все видно

Ну вот еще если уж так лень закачал список и отдельно www.searchinform.com/tmp/tsearch.stp

itman:
Так Вы все-таки ответьте если не сложно на мой вопрос про стоп-слова, а то Вы уклоняетесь от ответа: в вашем тестовом примере с 20% индекса Вы их включали в индекс или нет? В принципе, отстутствие стоп-слов в индексе запросу фразовому не мешает.
.

Так я же вроде уже отвечал. Что стоп-слрвами управляет сам пользователь Естественно стоп слова в индекс не включаются.

А список стандартных стоп-слов которые мы используем ( в том числе и в тесте) легко посмотреть установив SearchInform и зайдя в stop-words manager. И если хотите можете их вообще все удалить -- толь ко зачем?

СТоп слова все равно только мешают.

Я ответил на ваш вопрос?

itman:

А скорость поиска можно продемонстрировать на низкочастотных словах и сказать, что частотные слова "редко спрашивают".
.

Это было бы некорректно -- я поэтому и привел ссылки на отчет. Если вы посмотрите то там очень много результатов где более одного документа в результате запроса -- а это уже значит что слова не низкочастотные -- генернилось то автоматически.

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

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

Zute:
Понятно, спасибо.
А "Phrase search" и "All words must present in result" в резульатах тестирования что означают ? Если поиск ведётся как точное вхождение фраз из запроса, то второе как бы само собой подразумевается.
И ещё один момент: при поиске английская морфология учитывалась ?

Phrase search это знасит искать по фразе а не по словам

all words... -- значит требование чтобы се слова были представлены во фразе.

Да -- только для русского у нас морфология на базе Зализняка а для ангдлийского стемминг

www.searchinform.com/tmp/search.gif -- опции которые в тесте.

Используются все настройки кроме number of in between words

Этот параметр подставляется режимом debug и он потом фигурирует вот в этои отчете www.searcginform.com/tmp/report100.txt

То есть включена морфология, фразовый поиск где не важен порядок слов (это кстати медленней чем если важе порядок слов) и выбран нужный индекс

AlexA:

Вопрос к Leom: какая была методика проверки результата запросов, если сниппеты даже не выводились, как я понял? (поправьте, пожалуйста, если напутал)

Методика такая -- в отчет -- типа вот этого www.searchinform.com/tmp/report100.txt или www.searchinform.com/tmp/report5000.txt

Пишется сам запрос и число документов. При желании сюда же можно писать первые (100 или 5000 то что в соответствующих файлах) названий документов -- они уже есть в результате поиска. Но это уже работа прикладной программы -- поэтому чтобы вчистую оценить время поиска в этом смысла не вижу. Ведь в сетевой версии это уже клиент будет выводить результаты. А нас же интересует скорость работы сервера -- верно?

Далее почему при выводе 5000 результатов время чуть хуже -- так как естественно тратится время на вытаскивание по ID названия документа и безусловно по 100 это быстрей чем по 5000.

Наверно сегодня к вечеру я выложу комплексный тест по базам в 10,7 гига в 83 гига и в 132 гига, чтобы можно было скоррелировать ухудшение времени в зависимости от объема базы и индекса. Хотя конечно это все условно -- запросы то к каждой базе генерятся случайно

pelvis:
Не надо людям лапшу вешать - некрасиво.
Для начала предоставьте реальные характеристики сервака, способного записать с такой скоростью.

Кто лапшу вешает? Вы сами проверяли? Если нет то жду официальных извинений -- иначе считаю вас просто болтуном.

Какие харкактеристики -- чего? Читать умеете (появились у меня сомнения в этом) -- в постах выше были описаны характеристики компа на котором тестилось.

Пол какую скорость запись то речь?

Кстати еще для интересующихся скоростью работы поиска.

На этой неделе мои ребята должны выложить тулзу для тестировки.

Этой тулзе дается каталог из файлов типа html или txt и задаются параметры для генерации файла с фразоавыми запросами (число слов от и до, число мусорных сдов между ними и т.д.)

В итоге получается текстовый файл

Далее запускается SearchInform с ключем /debug и в меню debug грузится это файл и он по выделенному индексу начинает гнать в batch mode и потом отчет типа того что я приводил

Так что любой жедающий может сделать свою базу например на 50 гиг проиндексить нашей триалкой и запустить тест на скорость поиска.

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

Кстати еще для интересующихся скоростью работы поиска.

На этой неделе мои ребята должны выложить тулзу для тестировки.

Этой тулзе дается каталог из файлов типа html или txt и задаются параметры для генерации файла с фразоавыми запросами (число слов от и до, число мусорных сдов между ними и т.д.)

В итоге получается текстовый файл

Далее запускается SearchInform с ключем /debug и в меню debug грузится это файл и он по выделенному индексу начинает гнать в batch mode и потом отчет типа того что я приводил

Так что любой жедающий может сделать свою базу например на 50 гиг проиндексить нашей триалкой и запустить тест на скорость поиска.

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

!Иван FXS:
Можно ли что-то почитать о формате индекса, создаваемого системой?

Нет технология запатентованная и коммерческая.

А о размерах индекса и его проуентах от чистого теста можете судить сами по опубликованной выше инфе по индексированию 132 гиг где чистого текста около 80 гиг

Всего: 125