|
указать явно, какой индекс использовать в select-е?
|
|||
---|---|---|---|
#18+
возможно ли это и есть ли в этом смысл для sqlite? есличо, использую запросы для сложного поиска по текстовым поля одной таблицы, вроде: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
создал ручками (ладно, sqliteman-ом) индексы для полей title и description (огромное текстовое поле), виснет всеравно ужос как ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2013, 09:50 |
|
указать явно, какой индекс использовать в select-е?
|
|||
---|---|---|---|
#18+
для таких запросов можно даже не заморачиваться с индексами, лучше не будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2013, 12:13 |
|
указать явно, какой индекс использовать в select-е?
|
|||
---|---|---|---|
#18+
Да, можно построить полнотекстовый индекс, если он понмиает русский, я просто не в курсе. И запросы типа таких будут выполняться намного лучше, если конечно будет искаться не внутряенняя часть слова. Я бы так и делал. а еще можно сделать свой специальный индекс, но для этого надо будет делать дополнительную таблицу, содержащую побитые по буквам слова типа такого русский усский сский ский кий ий й привязать ее к исходной, проиндексировать и в ней искать. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2013, 12:33 |
|
указать явно, какой индекс использовать в select-е?
|
|||
---|---|---|---|
#18+
WinnipuhДа, можно построить полнотекстовый индекс, если он понмиает русский, я просто не в курсе. И запросы типа таких будут выполняться намного лучше, если конечно будет искаться не внутряенняя часть слова. не совсем понял мысль слово может содержаться внутри текста, и - да! - это может быть и часть "лексического" слова: дизельпанк овые, и т.д. сейчас уже подумываю чтобы сделать импорт - вернее, регулярный импорт! - в postgree, скорости поиска ради, но объем работы и количество доступного времени оставаливают пока что :( ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2013, 12:44 |
|
указать явно, какой индекс использовать в select-е?
|
|||
---|---|---|---|
#18+
ФрилансерWinnipuhДа, можно построить полнотекстовый индекс, если он понмиает русский, я просто не в курсе. И запросы типа таких будут выполняться намного лучше, если конечно будет искаться не внутряенняя часть слова. не совсем понял мысль слово может содержаться внутри текста, и - да! - это может быть и часть "лексического" слова: дизельпанк овые, и т.д. сейчас уже подумываю чтобы сделать импорт - вернее, регулярный импорт! - в postgree, скорости поиска ради, но объем работы и количество доступного времени оставаливают пока что :( и что даст PGSQL? делайте полнотекстовый индекс, потому что собственно и в постгресе это будет тоже лучшее решение. теперь по "не совсем понял мысль": дизельпанк овые Я имел в виду, что если юзер будет искать в данном примере диз ель панковые диз ельпанк овые и т.д. то в этом случае ни обычные, ни полнотекстовые индексы не помогут. А так ваша задача - для полнотекстового поиска. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2013, 12:55 |
|
указать явно, какой индекс использовать в select-е?
|
|||
---|---|---|---|
#18+
[quote Winnipuh]Фрилансерпропущено... и что даст PGSQL? как минимум - какой-то оптимизатор запросов (и кэш) + демон-сервис, адекватно работающий с памятью/потоками/прочее Winnipuhделайте полнотекстовый индекс, потому что собственно и в постгресе это будет тоже лучшее решение. ну я сделал индексы для полей поиска через sqliteman, вот что он мне говорит о нем: Код: sql 1. 2.
это оно? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2013, 13:08 |
|
указать явно, какой индекс использовать в select-е?
|
|||
---|---|---|---|
#18+
Фрилансерсоздал ручками (ладно, sqliteman-ом) индексы для полей title и descriptionсоздать индексы ты, конечно, можешь, только использовать их like не сможет потому - или full text search, или full scan :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2013, 14:13 |
|
указать явно, какой индекс использовать в select-е?
|
|||
---|---|---|---|
#18+
[quot Фрилансер]Winnipuhпропущено... как минимум - какой-то оптимизатор запросов (и кэш) + демон-сервис, адекватно работающий с памятью/потоками/прочее пропущено... ну я сделал индексы для полей поиска через sqliteman, вот что он мне говорит о нем: Код: sql 1. 2.
это оно? не... вот http://www.sqlite.org/fts3.html ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2013, 14:21 |
|
указать явно, какой индекс использовать в select-е?
|
|||
---|---|---|---|
#18+
вот еще коротко, там ссылка на книжку есть, ее найдите, полезная бывает. http://answers.oreilly.com/topic/1955-how-to-use-full-text-search-in-sqlite/ ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2013, 14:22 |
|
указать явно, какой индекс использовать в select-е?
|
|||
---|---|---|---|
#18+
WinnipuhДа, можно построить полнотекстовый индекс, если он понмиает русский, я просто не в курсе. Эскулайт хранит строки в уникоде, так что для токенайзера без разницы, какой язык. Если стеммер русский интересует, то я уже давно сделал модуль [ http://sqlite.mobigroup.ru/timeline?r=mbg-fts3%5D]http://sqlite.mobigroup.ru/timeline?r=mbg-fts3] ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2013, 18:49 |
|
|
start [/forum/topic.php?fid=54&msg=38384187&tid=2008873]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 272ms |
total: | 395ms |
0 / 0 |