Configure Attributes for an Index

After you plan your index, you can configure the index for the object by selecting the attributes that’ll be supported in the index and in your searches. If you're indexing the object for the first time, you must refresh and deploy the extensible flexfields.

Refresh and Deploy Item Extensible Flexfields

From update 24A onward, before you index an object for the first time or if you've an index from a prior update and you've upgraded to update 24A or later, you must run a forced deployment of extensible flexfields. To do this:
  1. In the Setup and Maintenance work area, go to the Deploy Item Extensible Flexfields task:
    • Offering: Product Management
    • Functional Area: Items
    • Task: Deploy Item Extensible Flexfields
  2. On the Deploy Item Extensible Flexfields page, in the Name field, enter Item and click Search.
  3. From the Actions menu, click Refresh and Deploy Offline.
  4. Continue to monitor the deployment until it's completed.

Configure Index Attributes

To configure the attributes for the index:
  1. In the Product Management work area, click Indexes under Actions.

    The Index Management page is displayed. Each object that supports an index is displayed as a card on this page.

  2. Click the card associated with the object for which you want to setup the index.

    The Configure Index page displays the attributes that are in the index for the object. Each index has a default set of attributes that can be used to setup the index. See Default Index Attributes for details.

    The default attributes will always be a part of the index and you can’t remove them. You can add and remove additional attributes based on the search processes.

  3. To add or remove attributes from the index:
    • To add multiple attributes, click the Add icon. The Select and add attributes drawer is displayed. Search for attributes by typing an attribute name, attribute group, or an object. Select the attributes you need and click Add.
    • To remove attributes, select the checkbox for the attributes you want to remove and click the Delete icon. The selected attributes will no longer be seen in the table.
  4. To search for attributes in the index, in the Search field, enter the attribute name, attribute group, or the object name you want to search and press Enter.
  5. Click Save.

    The data is saved. The page will refresh and show the last updated date stamp indicating the save was successful.

  6. From the More Actions menu, click Rebuild.
    A dialog box appears with two options for rebuild:
    • Now: The rebuild process is started immediately.
    • Future: Schedule the rebuild process in the future. Because rebuild process can be a lengthy process depending on the data, it's recommended to schedule the process to run during nonwork hours.
  7. Click Rebuild.

    The rebuild process starts. A schedule process ID will be provided which can be monitored in the Tools > Scheduled Processes application.

    The first time you trigger the index rebuild process, all the instances of the object data and the selected attributes for the object are ingested to build the index. After the process of rebuilding the index is complete, you can add the attributes to a search view.

    Only one rebuild program can be running at time. If the index is in the building state and you select the Now or Future options, the user interface will display an error message indicating that either another rebuild process is running or the changes that are made to the indexed attribute will be added to the schedule process.

Improve Index Rebuild Performance

During the index rebuild process, a document is created for each item. This document contains the data elements of the item record and the access control list data generated from the item class data security policies for the object. When this document size increases, more time is required to ingest the data for the index.

A common practice is to create multiple job roles to support specific roles for a group of users in the application. Often each job role is assigned a common set of data grants to access the extensible flexfields used by most of the job roles. In this situation, the access control list contains duplicate data grants for each job role making the document record size very large, increasing the rebuild time.

To optimize index rebuild time, reduce duplicate data grants in the ACL by defining a job role, assigning the duplicate data grants to this role, and then assigning the role to all other job roles.

For example, a company has 12 job roles to support users across its organization. Each job role can access multiple extensible flexfields attribute groups. To set up data security for the attribute groups, the admin created a data grant for each job role. The admin assigned custom actions for each secured extensible flexfield to the job role to provide data access. A group of 14 extensible flexfield attribute groups is common to all job roles.

When the index is rebuilt, the document representing the object contains data grants for each job role. The data grants for the common extensible flexfield attribute groups are repeated. In this case, 168 data grants are duplicated, increasing the size of the document for each object instance. The document size increase is multiplied by the number of object instances. In this example, the duplication and size increase for the document are across one million objects.

To optimize the index size and rebuild time, an additional job role can be created and used in the item class security to create a data grant that contains only the security actions for the common extensible flexfield attribute groups. You can then assign this job role to other job roles to support users in the organization. This technique enables the control of duplicate data grants by grouping them under a single job role, rather than across all job roles. This way, the duplication effect will be removed, along with the size increase of the document due to the duplication, and the additional time to rebuild the index.