Lead your team forward
OCT 24 / 9AM ET Register nowConfigure Full-text Search
This page contains information about the fulltext search technology that is powered by Elasticsearch and by default used in Catalog Items only. In this guide you will find instructions on how to enable fulltext search on other entities as well.
Currently, full-text search can be enabled only on the highest level lists of entities, and only on the flat view of hierarchical entities, such as terms and rules. The AQL search or full-text search used elsewhere in the application operating differently. For more information on AQL, see searching-using-aql-expressions.adoc. |
Currently, full-text search configuration is not displaying entities in the draft state in the general listings. For example, a lookup item that was edited, added or deleted won’t appear in the menu listing if the changes haven’t been published yet. It is a known bug that will be fixed next version. Meanwhile, we recommend creating a separate folder for the drafts. Click here to expand the example…Before setting a new search configuration on the entity, create a folder for the drafts, if needed by workflow. For example, to set a new folder for the Lookup Items drafts, do the following:
|
Search configurations
To edit or add new search configurations, go to Global Settings > Search Configurations.
The default search configurations are designed to be ready for general use. It is only advised to alter configurations if new custom nodes are added to the application which require inclusion in the search. |
Add search configuration to a new entity
To enable search on an entity, click Create and provide the following information:
-
Select the Name of the Search configuration from the available list of entities. Make sure it matches exactly with the node you want to enable the search for.
-
Click Add Indexed node to select on which node the search will be applied and set the Name of the node by selecting it from the list of available nodes. Make sure it matches exactly with the name of the entity you want to enable the search for.
-
Click Save without adding Property filters yet.
Since the properties for the entity are not indexed yet in the search configuration, there will be no filters on properties available yet. -
To index the properties you would like to be used for Elastic searching and filtering, click on the newly added indexed node.
-
Click Add indexed property.
-
Provide the following information:
-
Select from the list of all the node’s properties the Name of the property that will be indexed for search.
-
Select whether it is:
-
Searchable - Elasticsearch will use this property to search the node’s items.
-
Sortable - it will be possible to sort the node’s items by this property.
-
-
Click Save.
-
Add as many properties as you want to enable a better search and more options for filtering. In this example, the "Key" property of lookup items was added for the future referenced filtering option.
-
-
Navigate back to the configuration page. To add search filters in ONE Web Application, click Add Property search filter and provide the following information:
-
Name: Name of the filter.
-
Order: Order in which it should appear in the selection of available filters. The order is an integer number, when, for example, the order is set to 3, the item appears as the 3 filter in the raw.
-
Property: Select the property for which you want to create the filter from the list available – start typing to narrow the results.
Not indexed properties won’t be available in the list. Make sure you have indexed the necessary properties in steps 4-6. -
Referenced from (optional): This should be used when it is necessary to add the context of the Property, i.e. the node of the property. For example, the "Key" property cannot be added as not a referenced object, because it is really a reference to attribute on the catalog item. So the link to the property needs to be leading to a Metadata object, that will be reached by filter. To do get the link to the right object, do the following:
-
Add the required Indexed property from which the referenced object is required. For example, for the filter on the "Key" property, the Indexed node "attribute" with the "name" property should be added.
To understand which nodes should be indexed, Metadata Model can be used. Navigate to the Global Settings > Metadata Model, search for the node you are setting search configuration on and check whether the property for filtering is a scalar one or referenced from another node.
Click here to expand the example…
For example, search for lookupItem node in Metadata Model.
In the LookupItem properties list you can see that the "Key" property is referenced from the "attribute" node. Which means that to make the "Key" property a filter, the "attribute" node should be indexed.
-
Set the Property to the Indexed node of the property from which the reference is done. For example, for the "Key" filter, the Property should be name of the
. -
Set the Referenced from to the Target on the property you wanted to be set a filter on. For example, on the Lookup property "Key".
By default, the filters are already predefined only on Catalog Items. You can manage them via the catalogItems search configuration.
-
-
-
Click Save.
-
Publish the changes.
-
Navigate to the entity you have just enabled the search for. If there is no
Fulltext search
option in the search bar, reload the page. Now the fulltext search and filters should be at the page:
Edit existing search configurations
To add indexed nodes or search filters to already existing search configurations, open the entity configuration you would like to edit and do the following:
-
Select Add Indexed node, or use the three dots menu next to the name of the required node and select Show details to edit or Delete to remove the node.
-
If you are adding an indexed node, in the newly-opened details window select Add Indexed property and provide the following information:
-
Name: Name of the node – select from the list of available nodes.
-
Use the checkboxes to define whether the property will be Searchable and/or Sortable.
-
-
To edit the indexed properties, do the following:
-
Open the indexed node for which you want to edit properties:
-
Select Add Indexed Properties to add a new one and provide the following information:
-
Name: name of the indexed property.
-
Select whether it is:
-
Searchable - the node’s items will be searched.
-
Sortable - the node’s items will be sorted.
-
-
-
Expand the three dots menu next to the name of the required property and select Show details to editor Delete to remove the filter.
-
-
To edit the filters, click Add Property search filter to add a new one, or use the three dots menu next to the name of the required node and select Show details to edit existing filters or Delete to remove the filter.
Provide the following information:
-
Name: Name of the filter.
-
Order: Order in which it should appear in the selection of available filters.
-
Property: Select the property for which you want to create the filter from the list available – start typing to narrow the results.
-
Referenced from (optional): This should be used when it is necessary to add the context of the Property, i.e. the node of the property.
-
Reindex catalog item search
Reindexing should be carried out automatically to ensure proper functioning of the search. However, in case of a gap in data, it will be required to perform reindexing manually from the app. To do this, in Global Settings > Search Configurations, use the more options icon and select Reindex.
The Reindex option will not be available if the following conditions are not met:
-
User has
MMM_application-admin
role. -
Default search configuration exists.
Search recovery
The recovery option is used in cases when there are inconsistencies between the primary storage and the search storage, for example, when the search storage contains outdated or deleted data (ghosts). This typically occurs after reindexing fails due to a change that cannot be processed (such as deleting an item from the search storage), or after upgrading.
Only those with admin rights can initiate a search recovery. To do this, in Global Settings > Search Configurations, use the three dots menu and select Recovery.
The process consists of the following:
-
Deleting all indexed items.
-
Clearing any changes from the queue.
-
Reindexing from scratch.
Search Configuration is unavailable or limited while the recovery is in progress. The duration of this depends on the indexing speed and the total number of items that should be reindexed. However, users can continue to use search on the nodes that have been successfully reindexed. |
The Recover option will not be available the following conditions are not met:
-
User has MMM_application-admin role.
-
Search configuration exists.
Was this page useful?