бедненький сценарий поиска вы предложили. В реальности будет так: "помнится была книжка из серии фантастика или научная фантастика. Автора не помню. Вроде в названии было что-то про звезды. Как бы мне ее найти?" Все, у тебя после этого перебор 2-х миллионов файлов навсегда. И никакая иерархия твою файловую систему не спасет. И никакие гигабайты памяти. Собственно к памяти этот процесс поиска вообще не имеет отношения. Так как тормозить будет процесс перебора файлов, открытия их и чтения тегов из каждого. Альтернатива одна - Строим индексы, кладем их в базу разница в скорости поиска будет не в разы, в десятки, если не сотни раз. А как оно там хранится в самих архивах в принципе вообще все равно. По хорошему можно вообще все тексты в базу загнать чтобы дать пользователю и по тексту искать, но это уже напряг для базы - полнотекстовый поиск. Хотя все равно будет быстрее чем открывать пофайлово
no subject
Альтернатива одна - Строим индексы, кладем их в базу разница в скорости поиска будет не в разы, в десятки, если не сотни раз.
А как оно там хранится в самих архивах в принципе вообще все равно. По хорошему можно вообще все тексты в базу загнать чтобы дать пользователю и по тексту искать, но это уже напряг для базы - полнотекстовый поиск. Хотя все равно будет быстрее чем открывать пофайлово