Глобальный Search

phantom76

Well-Known Member
Lotus team
25.02.2005
360
9
#1
по темам покапался, мало что нашел..

Вот такая задача, сделать по архивным базам нормальную поисковую форму. С текстовыми полями все понятно, с поисковой формы конструируем формулу для поиска в вперед в db.Search ... Но вот захотелось начальству, чтобы еще можно было искать по содержимому RT поля... здесь уже FTSearch соответственно в один запрос не вкинешь... Базы большие почти все по 50Гб , индекс строить по ним не хотелось бы. Есть задумка, предварительно обработать их и создать текстовые зеркальные поля для RT-полей и соответственно искать уже все через db.Search.

Объем баз в основном за счет вложений, про поиск во вложениях вопрос не стоит.

Насколько приемлемое решение будет? другого просто варианта не вижу..
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 492
367
#2
здесь уже FTSearch соответственно в один запрос не вкинешь... Базы большие почти все по 50Гб , индекс строить по ним не хотелось бы.
есть такой компромис "время/объем" для случаев поиска и "время" ещё поднимет "проблему" загрузки сервера, делайте выводы ;)
ФТ можно ограничить и не понятно что значит
в один запрос не вкинешь
 

phantom76

Well-Known Member
Lotus team
25.02.2005
360
9
#3
FTSearch раньше не пользовался, в каком формате у него должен быть Query ? В доках, что-то об этом умалчивают.. может ссылочку дадите где можно почитать про метод?

Добавлено: спасибо, синтаксис нашел..
 

phantom76

Well-Known Member
Lotus team
25.02.2005
360
9
#4
я правильно понимаю, что первичную коллекцию можно получить например через db.Search , а потом повторно по ней
пройтись FTSearch ?


Код:
Set dc = db.Search( vSearch, Nothing , 0 )
................
Call dc.FTSearch("NewSearch", 100)
 

VladSh

начинающий
Lotus team
11.12.2009
1 248
2
#5
нет
и первую коллекцию FTSearch, и все последующие
 

VladSh

начинающий
Lotus team
11.12.2009
1 248
2
#7
Ну и здорово! :rolleyes:

сам FTSearch я больше не пользуюсь, т.к. накололся на том, что ключевые слова для указания чёткого соответствия значения, содержащегося в поле, не работают - реально значение в этом поле не содержится, но док отбирается в коллекцию потому, что это значение есть в каком-либо другом поле.
 

phantom76

Well-Known Member
Lotus team
25.02.2005
360
9
#8
Ну и здорово! :rolleyes:

сам FTSearch я больше не пользуюсь, т.к. накололся на том, что ключевые слова для указания чёткого соответствия значения, содержащегося в поле, не работают - реально значение в этом поле не содержится, но док отбирается в коллекцию потому, что это значение есть в каком-либо другом поле.
я тоже слышал о нем много лестных отзывов, поэтому и пробую связку, предварительную коллекцию строю через Search и потом всего по одному полю режу FTSearch

если мне нужно в поле Body найти строчку: "field Body contains Искомая строка" - правильно?
 

VladSh

начинающий
Lotus team
11.12.2009
1 248
2
#9
если мне нужно в поле Body найти строчку: "field Body contains Искомая строка" - правильно?
вот как раз это у меня и не работало! находило док просто потому, что в такая строка содержалось в другом поле..
Хотя для поиска в ричтексте - покатит.