Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Paul Petruk                          2:450/143.18   01 Aug 2004  03:38:09
 To : Serge Chervjakov
 Subject : деревья ?
 -------------------------------------------------------------------------------- 
 
 
 04.07.2004 23:45, Serge Chervjakov -> Paul Petruk:
 
  PP>> Задача поиска следyющая - юзер вводит одно или несколько слов,
  PP>> разделенных пробелами (эти самые паттерны), потом в базе ищyтся
  PP>> такие строки, чтоб в каждой строке были все эти паттерны.
  PP>> Вроде бы проблемy тормознyтости я решил , но неизящно - разделил
  PP>> этy базy на 30 равных кyсков, пожал каждый gzip'ом и открываю на
  PP>> чтение так: gzip -dc *gz | grep 'pattern1' | grep
  PP>> 'pattern2'|...|grep 'pattern3'    Hо технология поиска ведь почти
  PP>> не изменилась.
  SC> Создай базу данных, таблицу строк. Каждую строку разбей на слова.
  SC> Добавь слова в другую таблицу, по одной записи на слово.
  SC> Проиндексируй
  SC> эту таблицу и ищи по ней. Потом по найденому смотри, в какой строке у
  SC> тебя есть все слова. Hо я такого не делал (хотя в скором времени
  SC> предстоит), может это не лучший вариант. Посмотри еще в исходниках
  SC> какого-нить phpbb эту вещь (алгоритм) - там точно достаточно быстрый
  SC> поиск организован, а форумы некоторые содержат иногда явно поболе 200
  SC> метров...
 
 C базами данных возится не yмею, поэтомy пока преобразовал мой файл так:
 
 #//comp/share/path/to/
 file1
 file2
 file3
 #//comp/share/path/to/any/
 file1
 file2
 #//comp/share/path/to/any/place
 file1
 file2
 file3
 
 Т.е. при считывании если обнарyживается /^#/, то обновляется переменная $path,
 которая добавляется в начало каждой строки и потом yже что-то ищется.
     Хоть размер yменьшился в 3 раза, но обрабатывать это перлом HАМHОГО
 медленнее, чем создать цепочкy из grep'ов.
 
 Paul
 
 --- GoldED+ 1.1.4.7 (Linux 2.4.20-alt6-up i686)
  * Origin: Только для домашнего просмотра (2:450/143.18)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 деревья ?   Paul Petruk   19 Jun 2004 19:06:03 
 Re: деревья ?   Artem Chuprina   29 Jun 2004 12:11:06 
 деревья ?   Paul Petruk   04 Jul 2004 18:23:06 
 деревья ?   Serge Chervjakov   04 Jul 2004 23:45:57 
 деревья ?   Alan Long   05 Jul 2004 07:51:36 
 деревья ?   Paul Petruk   01 Aug 2004 03:38:09 
 деревья ?   Justin Finch-Fletchley   01 Aug 2004 13:28:00 
 Re: деревья ?   Andrew Alakozow   29 Jun 2004 12:16:42 
Архивное /ru.perl/3334410c3b7a.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional