|
|
|
Индексированный поиск в архиве
|
|||
|---|---|---|---|
|
#18+
Добрый день. Постановка задачи: Необходимо из тествовых файлов, упакованых в архив, выбрать строки соотвествующие указаному регулярному выражению, или простой маске. Размер одного неупакованого файла - 50 МБ. Кол-во файлов 1000. Время поиска - не более 5 сек. Железо : 4 Xeon X2 3 Гц, памяти завались..., винты скоростные... Может есть какие-то механизмы индексирования? P.S. У меня выходит только за 11 сек. С помощью конвейера find| bzip2 |grep ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2009, 10:26:12 |
|
||
|
Индексированный поиск в архиве
|
|||
|---|---|---|---|
|
#18+
*ТЕКСТОВЫХ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2009, 10:26:45 |
|
||
|
Индексированный поиск в архиве
|
|||
|---|---|---|---|
|
#18+
Прошу прощения, не в секундах все а в минутах. ~ Найти за 5 мин. ~ Текущий алгоритм делает это за 11 минут ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2009, 10:59:55 |
|
||
|
Индексированный поиск в архиве
|
|||
|---|---|---|---|
|
#18+
adm-filНеобходимо из тествовых файлов, упакованых в архив, выбрать строки соотвествующие указаному регулярному выражению, или простой маске. Размер одного неупакованого файла - 50 МБ. Кол-во файлов 1000. Время поиска - не более 5 сек. Железо : 4 Xeon X2 3 Гц, памяти завались..., винты скоростные... Может есть какие-то механизмы индексирования? Есть вариант для поиска по простой маске. Берём какую-нибудь textsearch открытую библиотеку. Распаковываем архив. Индексируем всё. Запаковываем обратно. Индексный файл оставляем рядышком с архивом в открытом виде. Используем протокол взаимодействия с API textsearch для поиска любой информации. Если исходить из предположения что архивы изменяются очень-очень редко а то и вообще не изменяются, то индекс будет всегда актуальным. Вариант с использованием find| bzip2 |grep всегда будет тормозным за счёт постоянной перераспаковки. Здесь никакой Xeon не поможет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2009, 11:51:37 |
|
||
|
Индексированный поиск в архиве
|
|||
|---|---|---|---|
|
#18+
Файлы никогда не меняются, это логи. Видимо Ваша идея действительно оптимальная, сам пришел к такой-же мысли, но хотел индексировать вручную. Какой движок порекомендуете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2009, 11:56:26 |
|
||
|
Индексированный поиск в архиве
|
|||
|---|---|---|---|
|
#18+
А какая операционка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2009, 11:57:37 |
|
||
|
Индексированный поиск в архиве
|
|||
|---|---|---|---|
|
#18+
SUSE 9 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2009, 11:59:00 |
|
||
|
Индексированный поиск в архиве
|
|||
|---|---|---|---|
|
#18+
Пишу на C, С++ Так что видимо библиотека нужна под них, яву к сожалению не знаю, равно как и прочие ТиСиЭлы и Пайтоны ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2009, 12:01:01 |
|
||
|
Индексированный поиск в архиве
|
|||
|---|---|---|---|
|
#18+
Почитайте про Бигл . Возможно это это поможет. Больше ничего скзать не могу. Т.к. поисковыми движками под Линуксы я не интересовался. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2009, 12:04:41 |
|
||
|
Индексированный поиск в архиве
|
|||
|---|---|---|---|
|
#18+
Бигл слишком "тяжелый". Не хочу на сервер ничего лишнего ставить, слишком важный он. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2009, 12:13:50 |
|
||
|
Индексированный поиск в архиве
|
|||
|---|---|---|---|
|
#18+
Как будет угодно. Посмотри еще Recoll. Может подойдет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2009, 12:28:08 |
|
||
|
Индексированный поиск в архиве
|
|||
|---|---|---|---|
|
#18+
mayton пишет: > Как будет угодно. Посмотри еще Recoll. Может подойдет. Возможно ещё Sphinx. Если не хотите чего-то ставить, пишите индексы сами. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2009, 12:33:08 |
|
||
|
Индексированный поиск в архиве
|
|||
|---|---|---|---|
|
#18+
Спасибо всем, ковыряю указаные либы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2009, 12:57:38 |
|
||
|
Индексированный поиск в архиве
|
|||
|---|---|---|---|
|
#18+
Вообще, если искать надо в логах, то TextSearch технологии тут пожалуй будут избыточными. Ну... по крайней мере надо для себя определиться, что будем искать чаще всего. Ключевых слов в логах мало. Уникальны в основном timestamp-s. И если их всех помещать в индекс, то он по размеру может стать соизмеримым с размером лога. А если-же их не помещать - тогда мы теряем возможность искать события в диапазоне дат внутри одного файла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2009, 15:59:20 |
|
||
|
|

start [/forum/topic.php?fid=16&tid=1344336]: |
0ms |
get settings: |
8ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
196ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 235ms |
| total: | 532ms |

| 0 / 0 |
