Configure Enrichments

Enrichments enhance real-time data streams by adding new attributes before or after aggregation. They are configured in the Administration page.

HCL Detect supports multiple enrichment types to enhance incoming data before or after aggregation. These enrichments are evaluated in the following order:

  1. Transformed Attributes: Adds attributes with constant values or values derived from a Detect Expression Language expression. These attributes can be retained and used in the pipeline. Transform attributes will be available for computation of derived attributes.

    In the Add Transformed Attribute pane, enter the following details:

    • Attribute Name*
    • Data type*
    • Expression*

  2. Lookup-Based Enrichment
    • Retrieves attributes from the profile store or store-back store and adds them to the outgoing transaction. These attributes can be retained to be used in pipeline. Lookup attributes be available for computation of derived attributes.
    • In the Add Lookup Attribute pane, select the following:
      • Key Attribute* from the transaction
      • Lookup Table* from the associated database
      • Lookup Table Attributes*

  3. Aggregate-Based Enrichment
    • This attribute is calculated by applying a time window to an aggregation and has a Double data type. Like other enrichment attributes, it can be retained for use in pipelines and used to calculate derived attributes.
    • In the Add Aggregated Attribute pane, enter the following details:
      • Attribute Name*
      • Aggregations*
      • Group By Attributes
      • Period*
      • Window Length Unit*
      • Window Length

  4. Derived Attributes Enrichment
    • Derived attributes are derived from feed attributes, transform attributes, lookup attributes and aggregation attributes. These attributes are expression based or function based.
      • Expression based one is used when writing derived attribute as single-line expression using feed attributes, transform attributes, lookup attributes and aggregation attributes. If computation/derivation of attribute can't be written in single line, then use function based derived attribute.
      • In function based derived attribute write multiple lines of code to compute the derived attribute - i.e., it get general purpose language support. Currently you can write the function in either Java or Python. As other enrichment attributes, these attributes as well can be retained to be used in pipeline.
    • In the Add Derived Attribute pane, configure the following:
      • Attribute Name*
      • Type of Attribute: Select either Enrichment function-based or Expression-based.
      • Enrichment Function
      • Required Attributes and Functional Parameters

    • A derived attribute can also store its calculated value back to a database table for later lookups. See Configure Storeback Attributes.

Editing Enrichments

The interface for editing enrichments is shown below:

  • The interface allows modification of enrichment settings.

Configuring Enrichment Order

  • Enrichment operations can occur preAggregation or postAggregation.
  • This affects the values of enriched attributes.
  • To configure post-aggregation enrichment, select the Post-Aggregation Enrichment dropdown during enrichment creation.