Организация данных + поиск по ним

lassar2000

Новичок
Организация данных + поиск по ним

Ситуация:
есть набор файлов (~1000) в формате .doc. Объем - от 5-10 до 100-200 страниц. в среднем по 30-40 страниц. уже известно, что на протяжении месяца-двух объём учеличится в 3 (может и 4) раза. Также известно, что каждый месяц будет прибавляться по 10-50 файлов.
при этом файлы заархивированы в zip или rar.

задача: организовать поиск текста в этих файлах (замечу, что полной автоматизации процесса никто не ожидает, но...)

на даный момент придумал следующее:

VBA-скрипт (спец по нему есть) будет проходить по файлах, разархивировать их, и сохранять в формате простого текста.
Да, знаю, что таблицы и рисунки уйдут, но, это - "терпимые утраты".
далее, мой скрипт заносит их в БД и всё.

А теперь, уважаемые знатоки, вопросы:
1. у вас есть идеи получше?

методом научного тыка удалось определить, что станица текста ~ 2 кб, тоесть при такой организации, уже на старте будет иметь де-то 100мб тока текстов файлов.

2. если организация терпима (точнее, если лучше придумать низзя) - то какую лучше БД использовать, как её лучше настроить (всё-таки данных немало получится).
Поиск также необходимо делать не по только по слову целиком, но и по его частям.
и ещё - тексты будут немаленькие, так вот, при поиске хотелось бы организовать подсветку найденого слова (слов). как это сделать я знаю, но может, кто чё получше придумает

Думал над сжиманием текста...
как идея: при вставке вырезать все знаки пунктуации и всякие там "в", "её" - слова меньше 2-3 букв.

Возможно, как вариант, использовать алгоритм классификации текста, типа naive bayse.

В общем, кто что думает по этому поводу.
Рад любой помощи.
 

Long

Новичок
lassar2000, посмотри как организуется поиск по форумам (посмотри исходники тогоже пхпбб). как посмотришь, поймешь, что хранить весь текст у тебя нет необходимости. и потом, зачем сторонний VB скрипт? пхп сам прекрасно умеет работать и с архивами и с доковскими файлами (через сом).
 

lassar2000

Новичок
Long
да, не спорю, средствами РНР делать такое возможно, но

1.поиск должен проходить не 1,5-2 минуты, а быстрее...
тоесть держать заархивированные файлы - не подходит, а выделить гиг места для этих файлов - зажирно
2. сом - ака виндоуз. не подходит
3. имхо, держать всё в БД - всё-таки лучше
 

Silent

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

P.S. Если ограничиться только поиском по началу слова, то это немного проще.
 
Сверху