XCAR (extended customer analytic record) refers to the concept of a single object—any entity that is the subject of your decision strategy—that is extended with data from multiple sources. For example, you can extend a customer record with purchase data, subscriptions, activity on social platforms, and so on. You store and manage XCAR objects in a Cassandra-based Decision Data Store data set. You also can now update single properties in XCAR without having to update the full customer record every time.
Starting with Pega® Platform 7.3.1, the management of XCAR records has been simplified and made easier as a result of the following updates:
- You can create a set of properties that are exposed in the Cassandra-based Decision Data Store data set that is provided by default as part of Pega Platform.
- You can update an embedded property of type page or page list of an XCAR without having to update the full record. For example, you can update the number of impressions within the last 30 days or update the average number of purchases over the last week.
- You can append an element to an embedded property of type page list of an XCAR without having to update the full record. For example, you can add an interaction history item or a purchased item to an XCAR.
Exposed properties in the Decision Data Store
The Decision Data Store rule form contains the new Advanced section where you can define a set of exposed properties. When you choose to display a property, Pega Platform adds that property as a separate column in the Cassandra database. By having properties as separate columns in the Cassandra database, you can save processing time by updating individual properties instead of the full customer record when, for example, a property that is part of a customer record is updated frequently.
In the following example, the DataUsage property, which is an integer, is added to the list of exposed properties because that property is updated frequently:
Adding properties to display in a Decision Data Store data set
When a Data Set rule is saved, Pega Platform creates a table definition in the Cassandra database. The table includes the exposed property as a separate column. In the following example, the new Cassandra column corresponds to the DataUsage property that is now exposed:
CREATE TABLE data.customers ( cid text, datausage int, PRIMARY KEY (cid, ds_) )
You can also expose page list properties in your Decision Data Store data set. For example, in addition to data usage, each customer's recent subscriptions can be tracked:
A page list property that is not optimized for appending
In the preceding figure, the Subscriptions property is added as an exposed property that is updated with the latest customer click. In other words, the property is refreshed with a new value whenever a customer subscribes to a new service. When saved, Cassandra creates the following table architecture:
CREATE TABLE data.customers ( cid text, datausage int, subscriptions text, PRIMARY KEY (cid, ds_) )
However, you can optimize a page list property for appending to store each subscription in the Cassandra database. For example, you might optimize the exposed Subscriptions property for appending to track all subscriptions of your customers:
A page list property that is exposed and optimized for appending
After the Subscriptions property has been optimized for appending, instead of having its value overwritten with each subscription, the property stores each subscription, as shown in the following example Cassandra table structure:
CREATE TABLE data.customers ( cid text, datausage int, subscriptions list<text>, PRIMARY KEY (cid, ds_) )
For more information, see About Data Set rules.
Option to save a single property only
When configuring a data flow Destination shape, you can choose to update only a single property. You can choose any page or page list property from the data flow Applies To class. It is recommended that when selecting the option for single track update, you choose an exposed property to save processing time. If you want to append a property value, the selected property must be of type page list and it also must be defined as an exposed property in the source Decision Data Store data set.
Destination shape properties window
For more information, see About Data Flow rules.