Powered by Invision Power Board



  Ответ в темуСоздание новой темы

> Медленный поиск
BraTT
Дата 5.03.2006 - 02:30
Цитировать сообщение




Новичок
*

Профиль
Группа: Members
Сообщений: 10
Пользователь №: 40
Регистрация: 22.09.2005





У меня в базе около 500 серверов, размер каталога DATA 350 МБ,
Поиск файла занимает 3 минуты!!!
разве базы не индексируются?

Еще мелкая ошибочка:
в списке найденных файлов размер показывается в байтах, однако
далее следует неуместное "Kb"
PMПисьмо на e-mail пользователю
Top
MAS
Дата 5.03.2006 - 17:51
Цитировать сообщение




Старик
***

Профиль
Группа: Автор
Сообщений: 1228
Пользователь №: 2
Регистрация: 21.06.2005





QUOTE (BraTT @ Mar 5 2006, 02:30)
У меня в базе около 500 серверов, размер каталога DATA 350 МБ,
Поиск файла занимает 3 минуты!!!
разве базы не индексируются?

Если производится поиск по маске типа "*file*", то иприходится всё равно перебирать все файлы в базе. Какая уж тут индексация.
QUOTE
Еще мелкая ошибочка:
в списке найденных файлов размер показывается в байтах, однако
далее следует неуместное "Kb"

Нашёл, исправил.
PMСайт пользователяICQ
Top
BraTT
Дата 6.03.2006 - 06:43
Цитировать сообщение




Новичок
*

Профиль
Группа: Members
Сообщений: 10
Пользователь №: 40
Регистрация: 22.09.2005





У нас в локалке есть поиск, причем вероятно используется FI, судя по строке URL: http://80.92.99.241/cgi-bin/Site.dll/FtpInfo?IP=10.0.0.15, но суть не в этом, а в том, что поиск длится несколько секунд, значит как-то инднксацию сдалали? Причем поиск мощный, с использованием всей логики и регулярных выражений.
Ну ладно, нельзя сделать индексацию так нельзя - фиг с ней.
Но вот, что интересно: если взять любую программу для поиска текста в файлах (я исползовал Locate32) и натравить её на каталог DATA, то строка находится за 30 секунд (поиск завершен), а 3 минуты (у FI) - это много!!!
PMПисьмо на e-mail пользователю
Top
Oleg
Дата 6.03.2006 - 09:03
Цитировать сообщение




Старик
***

Профиль
Группа: Members
Сообщений: 173
Пользователь №: 70
Регистрация: 20.01.2006





QUOTE (BraTT @ Mar 6 2006, 06:43)
Но вот, что интересно: если взять любую программу для поиска текста в файлах (я исползовал Locate32) и натравить её на каталог DATA, то строка находится за 30 секунд (поиск завершен), а 3 минуты (у FI) - это много!!!

Это, видимо, из-за того, что в базе сервера хранится информация обо всех изменениях на нем, а не просто последний снимок каталогов и файлов. Поэтому, когда программа выполняет поиск, то она сначала анализирует все эти изменения, а потом производит поиск. Следовательно, данные которые находит внешняя поисковая программа могут быть уже не актуальны. Если я неправ, то MAS поправит меня. Возможно, было бы удобно, если бы в настройках сервера была кнопка, типа, "Удалить промежуточные изменения", после нажатия которой в базе оставался бы последний снимок. Тогда поиск бы мог производиться более быстро. Даже может быть было бы удобно добавить опцию для сервера "Не хранить историю изменений". Она сейчас частично реализована ввиде опции "Игнорировать удаленное", однако, похоже, что информация об изменных файлах\каталогах все равно хранится в базе. Я прав, MAS? Я заключил это из того, что у меня для сервера отмечена опция "Игнорировать удаленное", но в окне просмотра изменей все равно появляются даты опросов.
PMПисьмо на e-mail пользователю
Top
MAS
Дата 6.03.2006 - 19:27
Цитировать сообщение




Старик
***

Профиль
Группа: Автор
Сообщений: 1228
Пользователь №: 2
Регистрация: 21.06.2005





QUOTE (BraTT @ Mar 6 2006, 06:43)
Но вот, что интересно: если взять любую программу для поиска текста в файлах (я исползовал Locate32) и натравить её на каталог DATA, то строка находится за 30 секунд (поиск завершен), а 3 минуты (у FI) - это много!!!

Буду копать.
Первые замеры - тормозит не само сравнение строк, а добавление найденного в массив. ohmy.gif
PMСайт пользователяICQ
Top
MAS
Дата 6.03.2006 - 19:30
Цитировать сообщение




Старик
***

Профиль
Группа: Автор
Сообщений: 1228
Пользователь №: 2
Регистрация: 21.06.2005





QUOTE (Oleg @ Mar 6 2006, 09:03)
Это, видимо, из-за того, что в базе сервера хранится информация обо всех изменениях на нем, а не просто последний снимок каталогов и файлов. Поэтому, когда программа выполняет поиск, то она сначала анализирует все эти изменения, а потом производит поиск.

Частично верно. Хранится история удалённых файлов.
QUOTE
Возможно, было бы удобно, если бы в настройках сервера была кнопка, типа, "Удалить промежуточные изменения", после нажатия которой в базе оставался бы последний снимок.

Настройки сервера - обработка фйлов - игнорировать удалённое.
QUOTE
Я заключил это из того, что у меня для сервера отмечена опция "Игнорировать удаленное", но в окне просмотра изменей все равно появляются даты опросов.

Даты опросов "выцепляются" из дат изменений файлов.
PMСайт пользователяICQ
Top
Oleg
Дата 6.03.2006 - 20:29
Цитировать сообщение




Старик
***

Профиль
Группа: Members
Сообщений: 173
Пользователь №: 70
Регистрация: 20.01.2006





QUOTE (MAS @ Mar 6 2006, 19:30)
Даты опросов "выцепляются" из дат изменений файлов.

Вы имеете ввиду, что в базе данных сервера хранятся только даты опросов, а отображение новых файлов при изменении выбранной даты опроса производится на основании даты файла (если она больше даты опроса, то отображаем, если меньше - то нет)?
PMПисьмо на e-mail пользователю
Top
MAS
Дата 7.03.2006 - 20:22
Цитировать сообщение




Старик
***

Профиль
Группа: Автор
Сообщений: 1228
Пользователь №: 2
Регистрация: 21.06.2005





QUOTE (Oleg @ Mar 6 2006, 20:29)
Вы имеете ввиду, что в базе данных сервера хранятся только даты опросов, а отображение новых файлов при изменении выбранной даты опроса производится на основании даты файла (если она больше даты опроса, то отображаем, если меньше - то нет)?

Нет. Хранятся файлы, у каждого файла есть "дата с сервера" и "дата изменения" (дата опроса, когда файл появился/изменился/удалился).
Вот на основе "даты изменения" и формируется список времён опроса.

ЗЫ: если при каком-то опросе не было изменений, то этот опрос в списке не появится.
PMСайт пользователяICQ
Top
Oleg
Дата 7.03.2006 - 21:55
Цитировать сообщение




Старик
***

Профиль
Группа: Members
Сообщений: 173
Пользователь №: 70
Регистрация: 20.01.2006





QUOTE (MAS @ Mar 7 2006, 20:22)
Нет. Хранятся файлы, у каждого файла есть "дата с сервера" и "дата изменения" (дата опроса, когда файл появился/изменился/удалился).
Вот на основе "даты изменения" и формируется список времён опроса.

ЗЫ: если при каком-то опросе не было изменений, то этот опрос в списке не появится.

Ну понятно, дата создания самого файла нам ни о чем не скажет, т. к. при копировании она не меняется. А дата изменения файла тоже ни чего не скажет (я имею ввиду, для определения новый ли это файл), поскольку не понятно, то ли появился файл, то ли просто изменился. Поэтому приходится хранить даты опросов вместе с файлами. Ясно.
PMПисьмо на e-mail пользователю
Top
MAS
Дата 7.03.2006 - 22:24
Цитировать сообщение




Старик
***

Профиль
Группа: Автор
Сообщений: 1228
Пользователь №: 2
Регистрация: 21.06.2005





QUOTE (Oleg @ Mar 7 2006, 21:55)
А дата изменения файла тоже ни чего не скажет (я имею ввиду, для определения новый ли это файл), поскольку не понятно, то ли появился файл, то ли просто изменился.

А для определения типа файла есть флажки - "новый", "изменённый", "удалённый".
PMСайт пользователяICQ
Top
Oleg
Дата 7.03.2006 - 22:57
Цитировать сообщение




Старик
***

Профиль
Группа: Members
Сообщений: 173
Пользователь №: 70
Регистрация: 20.01.2006





Да, это понятно.
PMПисьмо на e-mail пользователю
Top
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темы

 



[ Время генерации скрипта: 0.0157 ]   [ Использовано запросов: 11 ]   [ GZIP выключен ]