The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"что легче и быстрее"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Файловые системы, диски / Linux)
Изначальное сообщение [ Отслеживать ]

"что легче и быстрее"  +/
Сообщение от daevy (ok) on 02-Ноя-10, 12:54 
Всеи доброго времени суток! Люди подскажите в каком случае, с точки зрения операционной системы, проще и легче выполнять поиск определенного файла.
когда файл лежит в одном каталоге с вместе с большой кучей аналогичных файлов.
или когда файл разложены на несколько каталогов и искомый файл лежит в одном из них.
имхо, проще легче и быстрей первый вариант(т.к. ненужно преходить по каталогам), но вот найти какое документальное доказательство не могу, помогите в этом простом вопросе)))))
p.s. и зависит ли это от типа фс ?
Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "что легче и быстрее"  +/
Сообщение от Pahanivo (ok) on 02-Ноя-10, 13:16 
> Всеи доброго времени суток! Люди подскажите в каком случае, с точки зрения
> операционной системы, проще и легче выполнять поиск определенного файла.
> когда файл лежит в одном каталоге с вместе с большой кучей аналогичных
> файлов.
> или когда файл разложены на несколько каталогов и искомый файл лежит в
> одном из них.
> имхо, проще легче и быстрей первый вариант(т.к. ненужно преходить по каталогам), но
> вот найти какое документальное доказательство не могу, помогите в этом простом
> вопросе)))))
> p.s. и зависит ли это от типа фс ?

быстрее всего индексировать список файлов и искать по списку )

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

2. "что легче и быстрее"  +/
Сообщение от daevy (ok) on 02-Ноя-10, 15:38 

> быстрее всего индексировать список файлов и искать по списку )

да согласен по индексам быстрей будет, но это уже дополнительная сущность ))

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

3. "что легче и быстрее"  +/
Сообщение от DeadLoco (ok) on 02-Ноя-10, 16:35 
> имхо, проще легче и быстрей первый вариант(т.к. ненужно преходить по каталогам)

Проще в реализации - да, но не легче в стадии выполнения.

Собсно говоря, ваш вопрос сводится к простому: что лучше - последовательный перебор или поиск в двоичном дереве?

Ответ зависит от реализации ФС, с которой вы работаете. Если файловая структура ФС содержит механизм индексирования имен файлов, то со стороны юзерленда "прямой перебор" в большой файлопомойке может оказаться эффективным за счет дерева в нижележащем уровне доступа. Но если ФС имена ищет прямым перебором, то тогда придется самому создавать дерево и в нем работать.

Разрешить ваши сомнения поможет натурный эксперимент. Наплодите в каталоге сто тыщ файлов по маске ХХХХХХ, и замеряйте время ста тыщ поисков заведомо несуществующего файла "ааааааа". Затем наплодите двести тыщ, и для них выполните те же сто тыщ поисков. И так до миллиона-двух файликов. Если у вас время выполнения ста тыщ поисков будет линейно расти от количества файлов, значит ваша ФС никак не оптимизирует поиск. Если нарисуется характерная sqrt-кривая, значит часть функций по оптимизации поиска ФС таки выполняет.

Но многие софты на это не полагаются, и для больших файлопомоищ организуют собственные иерархии каталогов. Тот же сквид.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру