Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Вниз

Как лучше искать по текстовому полю?   Найти похожие ветки 

 
ocean   (2009-04-15 12:49) [0]

Я хочу часто проводить поиск по полю varchar(2500) на вхождению подстроки в любом месте, соответственно нужно максимально ускорить этот поиск. Проиндексировать поле MS SQL не дал, мол максимум 900 символов. Что можно предпринять? Как лучше искать, Locate или SQL select?


 
Sergey13 ©   (2009-04-15 13:03) [1]

> [0] ocean   (15.04.09 12:49)
> Как лучше искать, Locate или SQL select?

Сделай и сравни. Делов то на 10 минут.


 
Кщд   (2009-04-15 13:07) [2]

>ocean   (15.04.09 12:49)  
в случае с произвольной подстрокой индекс бы ничего не дал в плане производительности)


 
Sergey13 ©   (2009-04-15 13:14) [3]

> [0] ocean   (15.04.09 12:49)

А что в этом поле? Как много азписей в таблице? Как часто надо искать?
Возможно неплохим решением будет создать подчиненную таблицу ключевых слов текста для поиска.


 
ocean   (2009-04-15 13:51) [4]

В поле плоский текст. Не знаю как оценить частоту, допустим раз в неск. секунд. С ключевыми словами интересная мысль, но тогда надо придумать, как их вычленять?


 
Ega23 ©   (2009-04-15 13:53) [5]

Можно попробовать FullTextSearch подключить. Но не факт, что это офигенную скорость даст.


 
sniknik ©   (2009-04-15 13:55) [6]

> Возможно неплохим решением будет создать подчиненную таблицу ключевых слов текста для поиска.
в mssql это уже есть, называется полнотекстовый поиск. нужно просто включить, и пользоваться.


 
Ega23 ©   (2009-04-15 14:08) [7]


> в mssql это уже есть, называется полнотекстовый поиск. нужно
> просто включить, и пользоваться.


Тяжелый он очень в MSSQL. К сожалению. И я не нашёл, как его настраивать тонко можно (игрался с MSSQL 2000).


 
ocean   (2009-04-15 14:40) [8]

Прочитал про полнотекстовый поиск, выглядит как то что нужно, но:
"к сожалению в SQL Server изначально не реализована возможность полнотекстового поиска на русском, украинском языках." Это все Кондолиза устроила. Не понял, как включить таблицу в полнотекстовый поиск не из среды MSSQL, а программно. Сейчас погоняю.


 
Anatoly Podgoretsky ©   (2009-04-15 15:23) [9]

> ocean  (15.04.2009 12:49:00)  [0]

К поиску тут относится только Locate


 
Anatoly Podgoretsky ©   (2009-04-15 15:30) [10]

Индексы или полнотекстовый поиск для подстроки, придется строить по всем вариантам поиска!
вариант
ариант
риант
иант
ант

и это только по одному слову, а не по совокупности слов строки.


 
Anatoly Podgoretsky ©   (2009-04-15 15:43) [11]


> К поиску тут относится только Locate

Но и его нельзя применить для поиска подстроки.
Надо отказаться от поиска и заменить выборкой с отбором по подстроке. Медленно, но что делать.


 
stas ©   (2009-04-15 17:09) [12]

ocean   (15.04.09 14:40) [8]
MSSQL 2005 юзай.


 
clickmaker ©   (2009-04-15 17:55) [13]

> к сожалению в SQL Server изначально не реализована возможность
> полнотекстового поиска на русском

реализована (начиная с 2005 точно), но не включена по умолчанию


 
ANB   (2009-04-16 12:11) [14]

А как в оракле такую фичу подключить ?
Я задрался уже запросы распараллеливать ради такой ерунды.
И писать разбивку по словам для нашей базы - очень неоптимально - места уже впритык на сервере.


 
sniknik ©   (2009-04-16 13:03) [15]

> такую фичу подключить ?
> места уже впритык на сервере.
а как ты думаешь эта фича реализована? где она будет хранить разбивку/индексы?


 
Кщд   (2009-04-16 13:08) [16]

>ANB   (16.04.09 12:11) [14]
>А как в оракле такую фичу подключить ?
interMedia


 
Кщд   (2009-04-16 13:11) [17]

>Кщд   (16.04.09 13:08) [16]
если информация структурирована, то нам, например, отлично помог ctx-индекс для поиска по достаточно большому хранилищу XML-документов


 
ANB   (2009-04-16 17:44) [18]


> если информация структурирована

Если бы. Это имя клиента, вбитое как попало.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.081 c
15-1268649323
Из батника
2010-03-15 13:35
2010.08.27
Удаление каталога


4-1235052387
GanibalLector
2009-02-19 17:06
2010.08.27
WMI & Delphi


2-1268982904
M@G30
2010-03-19 10:15
2010.08.27
Как хранить данные в TreeNode?


15-1272740317
adav84
2010-05-01 22:58
2010.08.27
может ли ATTiny13 делать FFT в realtime?


2-1267610535
@!!ex
2010-03-03 13:02
2010.08.27
Как в синхронном режиме получить ответ от TCP сервера?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский