Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Поиск в большой таблице(~5млн) (Gvozd) 02/02/2009 - 18:33:20
      Re: Поиск в большой таблице(~5млн) (Gvozd) 05/02/2009 - 19:51:48

> Original message text:
> From: Gvozd - 02/02/2009 - 18:33:20
> Subject:Поиск в большой таблице(~5млн)
> -----------------
> Хочу сделать систему индексации-поиска по файлам локальной p2p сети(DC)
> Ориентировочное количество файлов в базе - 5млн.на вырост планируется до 10млн.
>
> Необходимо сделать возможность поиска по подстрокам внутри имен файлов.
> Индекс FULLTEXT не подходит, в связи с его предназначенностью для естественныех языков(он не выдаст строку "Ochen_strashnoe_kino" в ответ на запрос "kino")
> Извлечение по типу "LIKE '%kino%'", которое не рекомендуется даже для маленьких таблиц тут также неприемлимо.время запрос а растет пропорционально количеству строк в базе, до тех пор пока оно способно хранить индекс в памяти(~2.5сек на 500к строк).потом наверно будет расти по экспоненте.
> была идея насчет разбития текстовых строк на блоки например по 8 символв, вынести в отдельную таблицу, и вести поиск уже по ней посредством "LIKE 'kino%' or LIKE 'ino%'..."
> к сожалению скоростью это тоже не отличается.
>
> Если у кого-нибудь есть идеи кроме описанных, как организовать эту базу прежде всего для эффективного поиска(даже путем увеличенного времени помещения данных)?
> Работать предполагается в связке PHP-MySQL, но внешние решения также подойдут
> буду рад любой помощи, и даже(тем более:)) отсылкам на статьи и мануалы(при условии прямой ссылки, и желательно на русском)
>


From: Gvozd - 05/02/2009 - 19:51:48
Subject:Поиск в большой таблице(~5млн)
-----------------
Проблему решил.
Если кому интересно мое решение, то вот его описание и результаты теста
http://forum.javascript.ru/server/2705-mysql-poisk-v-bolshojj-tablice-~5mln.html#post12144
Вкратце, я решил проблему путем сильной избыточности данных.
Добавил еще одну таблицу для индекса по подстрокам.



[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
34956



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |