User Community Service Desk Downloads
If you can't find the product or version you're looking for, visit support.ataccama.com/downloads

Configure Full-text Search

This page contains information about the full-text 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 full-text 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 Search using AQL Expressions.

Search configurations

To edit or add new search configurations, go to Global Settings > Search Configurations.

configuring full text search 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:

  1. 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.

    configuring full text search create search configuration
  2. 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.

    configuring full text search indexed nodes lookupitem
  3. 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.
  4. To index the properties you would like to be used for Elastic searching and filtering, click on the newly added indexed node.

    configuring full text search add indexed nodes lookupitem
  5. Click Add indexed property.

    configuring full text search add indexed property
  6. Provide the following information:

    1. Select from the list of all the node’s properties the Name of the property that will be indexed for search.

    2. Select whether it is:

      1. Searchable - Elasticsearch will use this property to search the node’s items.

      2. Sortable - it will be possible to sort the node’s items by this property.

        configuring full text search add indexed property name
    3. Click Save.

    4. 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.

      configuring full text search add indexed nodes properties name key
  7. Navigate back to the configuration page. To add search filters in ONE Web Application, click Add Property search filter and provide the following information:

    1. Name: Name of the filter.

    2. 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.

    3. 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.
      configuring full text search adding property search filter
    4. 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:

      1. 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.

        configuring full text search metadata model lookupitem

        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.

        configuring full text search metadata model key attribute
        configuring full text search metadata model lookupitem attribute
      2. 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 lookupItem  attribute.

        configuring full text search adding property search filter name
      3. 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".

        configuring full text search adding property search filter key

        By default, the filters are already predefined only on Catalog Items. You can manage them via the catalogItems search configuration.

        configuring full text search catalog items search configurations
  8. Click Save.

  9. Publish the changes.

    configuring full text search publish changes
  10. 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:

    configuring full text search lookupitems 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.

    configuring full text search add indexed node show details
  • If you are adding an indexed node, in the newly-opened details window select Add Indexed property and provide the following information:

    configuring full text search adding indexed property
    1. Name: Name of the node – select from the list of available nodes.

    2. Use the checkboxes to define whether the property will be Searchable and/or Sortable.

  • To edit the indexed properties, do the following:

    1. Open the indexed node for which you want to edit properties:

      configuring full text search open indexed node
    2. Select Add Indexed Properties to add a new one and provide the following information:

      1. Name: name of the indexed property.

      2. Select whether it is:

        1. Searchable - the node’s items will be searched.

        2. Sortable - the node’s items will be sorted.

    3. 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.

    configuring full text search add indexed property search filter

    Provide the following information:

    1. Name: Name of the filter.

    2. Order: Order in which it should appear in the selection of available filters.

    3. Property: Select the property for which you want to create the filter from the list available – start typing to narrow the results.

    4. 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.

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.

configuring full text search reindex search

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.

configuring full text search recover search

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?