Question
BNY Mellon
US
Last activity: 31 May 2016 13:09 EDT
Customizing the search index
Checking out the Elastic search introduced in v7.1.7...
Can we select specific classes to index (or not?)
Can we select specific fields in index (or not?)
Can we combine full-text search with numerical/keyword searches?
-
Like (0)
-
Share this page Facebook Twitter LinkedIn Email Copying... Copied!
Accepted Solution
Pegasystems
IN
Hi Srinivas,
Yes this applies to any class. To specify what needs to be indexed / returnable, you need to create an instance of Data-CustomProperties-Search whose applies to class is the class for which you want to specify these details.
If you want to turn off indexing completely for instances of a specific class, you can check the option "Exclude this class from search" on the class definition (advanced tab).
-Rajiv
BNY Mellon
US
Thanks, but that doesn't seem to be a persistant setting. That's only for an ad hoc reindexing, not to set what is indexed regularly.
BNY Mellon
US
Yes, now I remember.
It definitely belongs on the classform -- though the list of classes non-indexed should be referenced from the search page.
Pegasystems
IN
Can we select specific classes to index (or not?)
Yes, on the landing page or on the class ruleform as already mentioned by Abhishek. With 7.1.8, you can check the instances of Log-Cluster-FTSIndex class to see if all classes were index or only some of them. We have enhancements planned to have this persisted from the search landing page as well but there is no defined release yet on when it will be available.
Can we select specific fields in index (or not?)
All top level fields are individually indexed. So you can write Lucene queries which can filter on just the top level fields. The data from all the top level and embedded fields are concatenated and indexed as one field to provide full text search. This is what is used when you do "All Content" in designer studio and is also the default for searches from end user portals (like case manager or whatever your application uses). The value for specific fields are stored and returned in the results. This if fixed. A future release would allow for customization of this along with indexing specific embedded properties for filtering search results.
Can we select specific classes to index (or not?)
Yes, on the landing page or on the class ruleform as already mentioned by Abhishek. With 7.1.8, you can check the instances of Log-Cluster-FTSIndex class to see if all classes were index or only some of them. We have enhancements planned to have this persisted from the search landing page as well but there is no defined release yet on when it will be available.
Can we select specific fields in index (or not?)
All top level fields are individually indexed. So you can write Lucene queries which can filter on just the top level fields. The data from all the top level and embedded fields are concatenated and indexed as one field to provide full text search. This is what is used when you do "All Content" in designer studio and is also the default for searches from end user portals (like case manager or whatever your application uses). The value for specific fields are stored and returned in the results. This if fixed. A future release would allow for customization of this along with indexing specific embedded properties for filtering search results.
Can we combine full-text search with numerical/keyword searches?
I am not sure what you mean by numerical / keyword searches. Are you saying you want to limit the search using specific filters on specific properties? If yes, you can already use the Lucene query syntax in the search box to add additional filters. Alternatively, if you always want specific filters to be applied, you can override the pySearchWorkParams activity.
Lanit
RU
Hi Rajiv!
Is there any update about this feature?
Rajiv Nistala напиÑал(а):
A future release would allow for customization of this along with indexing specific embedded properties for filtering search results.
Pegasystems
IN
This enhancement has been done and should be available in the next release of Pega 7.
JPMC
US
Rajiv,
Could you confirm if below feature is available in 7.2?
"Can we select specific top-level fields to index (or not)" ?
"Can we select specific embedded fields to index (or not)" ?
Pegasystems
IN
Yes, this is available in 7.2. We have introduced a new class called Data-CustomProperties-Search which allows which top level properties can be retrievable in addition to be indexed. The same has been done for embedded properties. The catch though is that for embedded properties of type list / group, you cannot have its exact value returnable.
Please refer - https://community.pega.com/knowledgebase/release-note/method-specifying-custom-search-properties-has-changed
JPMC
US
Thanks Rajiv, is this applies to Work classes as well? the reason for asking is that if we can limit Properties from indexing we can minimize the resource/disk utilization.
Accepted Solution
Pegasystems
IN
Hi Srinivas,
Yes this applies to any class. To specify what needs to be indexed / returnable, you need to create an instance of Data-CustomProperties-Search whose applies to class is the class for which you want to specify these details.
If you want to turn off indexing completely for instances of a specific class, you can check the option "Exclude this class from search" on the class definition (advanced tab).
-Rajiv
-
GAURAV GUPTA (GG_Coforge)
JPMC
US
Thank you Rajiv !!