Table of Contents

Creating an interaction history summary data set


Only available versions of this content are shown in the dropdown

Simplify decision strategies by creating data set records for interaction history summaries. These data sets aggregate interaction history to limit and refine the data that strategies process.

Use interaction history summaries to filter customer data and integrate multiple arbitration and aggregation components into a single import component. For example, you can create a data set that groups all offers that a customer accepted within the last 30 days and use that data set in your strategy to avoid creating duplicate offers.

  1. In the header of Dev Studio, click Configure Decisioning Decisions Data Sources Interaction History Summaries .

  2. In the Base data set list, select the source of the data set:

    • To create a data set based on a relational database interaction history, select Interaction History.
      To create a data set based on a relational database interaction history, set the interactionHistory/AggregatesOnlyMode dynamic system setting to false.
    • To create a data set based on a streamed interaction history, select Interaction Stream. Use a stream-based interaction history to improve the performance of your system when processing high-volume interactions.
  3. Click Create.

  4. In the Data Set Record Configuration section, define the data set:

    1. In the Label field, enter the data set label.

      The identifier is automatically created based on the data set label.
    2. Optional:

      To change the automatically created identifier, click Edit, enter an identifier name, and then click OK.

    3. From the Type list, select Summaries.

  5. In the Context section, specify the ruleset, applicable Strategy Result class, and ruleset version of the data set.

  6. Click Create and open.

  7. In the Time period section, specify the time span for which you want to aggregate data:

    • To aggregate data from the entire interaction history, select All time.
    • To aggregate data from a specific time period, select Last, and then specify the time span.
  8. Optional:

    To specify the aggregation start time, select Start aggregating as of, and then specify a date.

  9. In the Group by section, select the properties by which you want to group the data.

    By default, the aggregated data is grouped by the pySubjectID and pySubjectType properties from the Data-pxStrategyResult class.
  10. In the Aggregate section, add aggregates, and then specify when conditions for the aggregates, if applicable:

    1. Click Add aggregate.

    2. In the Define section, specify the aggregate output, function, and source data set if applicable.

    3. Optional:

      To add when conditions for the aggregates, click the expand icon next to Define, click Add condition, and then specify the when condition.

    To ensure that the customer does not receive duplicate offers, define the aggregate and when conditions, and then use the data set in your application's strategy to prevent offers for which the value of the CountPositives property is greater than 0 for a specific customer. Use the following settings:
    • Output: .CountPositives
    • Function: Count
    • When: pyOutcome = Accepted
  11. Optional:

    To further limit the data that the data set aggregates, in the Filter section, click Add condition, and then define the filter conditions.

    To limit the interaction history data to inbound email interactions, use the following settings:
    • Where: A AND B
    • A: pyChannel = email
    • B: pyDirection = inbound
  12. Click Save.

  13. Optional:

    To save processing time, turn on preaggregation for the new data set:

    1. In the header of Dev Studio, click Configure Decisioning Decisions Data Sources Interaction History Summaries .

    2. Next to the data set for which you want to turn on preaggregation, click Manage Materialized .

      Preaggregated data sets save processing time because they include the latest interactions. Data sets that are not preaggregated do not include the latest interactions and therefore they query the database.
  • Applying sample scripts for archiving and purging

    The interaction history tables contain transactional data which may grow fast. By using the sample scripts, the users can archive the data in the archiving database and delete (purge) the records from the source database. The scripts allow you to move the FACT table records, merge the Dimension records, and delete the records from the FACT table. Before you use any of the scripts, back up the source and target interaction history tables and create indexes on the columns. Indexes improve performance when you read data from the archived tables.

  • Interaction methods

    Interactions can be run through a rule-based API. When you invoke an interaction, it runs a strategy that is selected in the interaction.

  • Interaction History methods

    You can use a rule-based API to associate known customer IDs with IDs that are generated by external interactions through different channels and devices or to separate them.

  • Monitoring interaction results

    Ensure that you stay up to date with recent interaction results by filtering and analyzing the interaction history records.

Did you find this content helpful?

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.