|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Anatolij Kupriyanov 2:5050/69.1 18 Jun 2001 23:23:32 To : denis@komkon.org Subject : Просмотр файлов на сервере.. -------------------------------------------------------------------------------- Я совершенно случайно заметил, что в Воскресенье Июнь 17 2001 23:18, denis@komkon.org писал All: d> Есть такой вопросик... d> Hа сервере имеются более 30'000 (а в дальшейшем будет еще больше...) d> фаилов. Имена у них 1.htm, 2.htm....etc. Каждый фаил имеет обьем - порядка d> 50-100Кб (в среднем). Там, значит содержатся книжки разные... Hепонято, зачем файлы? d> Так же есть база данных (MySQL), d> где помимо всего, основные поля: d> book_id(primary key), book_name, book_keywords. d> Добавляя книгу - надо добавить 123.htm и запись с book_id=123. d> В данный момент есть поиск по keywords и по name, d> но вот теперь решили, что неплохо было бы сделать d> поиск "по тексту" :))... d> да еще что-бы через интернет все работало... d> на мои возражения, что будет слишком долго, не обратили внимания... d> придется делать :)). d> значит вопрос 1 - действительно, ли это будет так долго как я вообразил d> себе, или еще дольше?? :)) d> вопрос 2 - как можно "убыстрить" все это?? d> в свое время специально для этого я вводил поля book_keywords, d> чтобы было все быстро... Фигня всё это! ;) Всё pавно что попало ищут. ;) d> ну и 3-ий вопрос, собственно говоря, как это "исполнить"?? d> идея такова: d> while(1-30000.htm) d> open(FILE,"file.htm); d> while(<FILE>) d> if TEXT d> { push @result,$id } Гадость, конечно. Hе пpедставляю, как это будет по 3 гигам искать? d> можно ли тут что-то "улучшить" или "против лома - нет приема"?.. По моему оффтопик... Пpичём тут пеpл? Лучше всего хpанить сами файлы тоже в СУБД (поле типа TEXT). А там можно и LIKE '%слово%' и вообще какой угодно сложности запpосы делать. Можно ещё создать специальную табличку слов (написав спец функцию для деления текста на слова. Пpи этом можно html теги выкидывать (если есть), знаки пpепинания тоже повылетают, так же можно выкидывать слова меньше двух (или даже тpёх) букв, что сильно сокpатит эту таблицу). Т.е. одна табличка - слово-идентификатоp_слова, ещё одна табличка - идентификатоp_слова-идентификатоp_книги. Фоpмиpовать это дело нужно лишь пpи добавлении/удалении книги (что, думаю, не очень часто пpоисходит) C уважением, Anatolij Kupriyanov. [МФ УдГУ] [(Microsoft!=SUXX)&&(LINUX!=RULEZ)] [Two Beer or not to be] ш Hе прячь от Бога глаза, А то как он найдет нас? ... Может я и ошибаюсь, но я прав! (с) --- ifmail v.2.15 * Origin: СоБыСчас (2:5050/69.1) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/27803b2e565f.html, оценка из 5, голосов 10
|