The profile search configuration is comprised of the following:

Indexing Methods

Profile search supports both incremental and bulk indexing. Incremental indexing occurs in real time and does not require an index deployment.

Incremental indexing of profiles, which is enabled by default, checks for modifications to profiles every five seconds from multiple environments. During some operations, such as modification, backup, or restoration of an environment, incremental indexing is not available. During these operations, incremental updates are queued until incremental indexing is restored.

Bulk indexing, which is started from the /atg/userprofiling/search/ProfileOutputConfig, recreates the complete index and is performed in a temporary staging environment. When the bulk indexing job is completed, the temporary staging environment is swapped with the live environment. During the time that the bulk index is running, searches are performed in the live environment. However, incremental updates are queued and not applied until the bulk indexing job has completed and the environments are swapped.

Customer profile information is queued using IncrementalItemQueue, which obtains requests from any server but are processed on the server that executed the indexing request.

Profile Search Components

The following components from DAF.Search.Index are used for profile searches. For additional information on these components, refer to the ATG Search Installation and Configuration Guide.

  • /atg/search/repository/IncrementalItemQueue

  • /atg/search/repository/IncrementalItemQueueRepository

  • /atg/search/repository/ConfigStatePersister

  • /atg/search/repository/ConfigAndRepositoryPersister

  • /atg/search/repository/IncrementalLoaderDPS.Search.Index appends the ProfileOutputConfig to the monitoredOutputConfig property. When the IndexingPeriodicService runs, the IncrementalLoader will process queued indexing requests for each of the /atg/userprofiling/search/
    ProfileOutputConfig

  • /atg/search/repository/BulkLoader

  • /atg/search/repository/IndexingPeriodicService – Configured in DPS.Search.Index to run every two seconds by default. All servers are configured with the IndexingPeriodicService set to enabled. However, the IndexingPeriodicService only indexes an /atg/userprofiling/
    search/ProfileOutputConfig
    that has the component enableIncrementalLoading=true and incrementalUpdateSeconds > 0. As such, you should only set the incrementalUpdateSeconds > 0 on servers that will be used for indexing.

    The ProfileOutputConfig.incrementalUpdateSeconds is set to 30 by default to ensure that at least one server will process the queued incremental indexing requests. In a production environment, set incrementalUpdateSeconds=-1 on the agent-facing server and configure incrementalUpdateSeconds > 0 on the management server. Incremental indexing can be enabled on any background server that is running DPS.Search.Index.

    The IndexingPeriodicService clears any expired configuration claim locks each time it runs using the checkExpiredConfigurationClaimsIntervalSeconds property, which checks for expired configuration claim locks every n seconds. Each time the IndexingPeriodicService runs, it checks to see if the time elapsed has exceeded this interval.

The following components are also used in the profile search process:

Component

Description

/atg/userprofiling/search/
ProfileOutputConfig

The profile indexing output component. Defined in the DPS.Search.Index module so that an indexing request can be queued wherever a profile is added or updated. The component creates the profile-output-config.xml definition file.

/atg/search/repository/
LiveDocumentSubmitter

A special document submitter that updates the index in near real time. This component is defined in the DAF.Search.Index module.

/atg/userprofiling/search/
AddressPropertyAccessor

Uses the atg.repository.search.indexing.
accessor.ConcatenatePropertyAccessor
class to concatenate address1, address2 and address3 into a single indexed address metaproperty.

/atg/search/repository/
AlphaNumericPropertyAccessor

Removes non-alpha-numeric characters from the indexed meta property. Used to strip white space and punctuation from phoneNumber to promote better search consistency.

/atg/search/routing/respository/SearchConfigurationRepository

The shardConfig and shard properties store configuration information on how to shard your search environment, where to store the logical partitions and what information is stored in each shard.


Copyright © 1997, 2012 Oracle and/or its affiliates. All rights reserved. Legal Notices