by Sophie Wang and Bryan Smith
In our previous blog post, we discussed how ActionIQ partners with Databricks to address the key challenge organizations face in achieving their personalization goals: finding the balance between business self-service and data governance. ActionIQ, powered by its HybridCompute technology, offers a unique integration pattern that allows organizations to deploy their composable CDP directly within the Databricks Lakehouse environment. This integration offers several advantages over the traditional bundled CDP architecture:
We also outlined an example workflow in which a retail brand seamlessly leverages ActionIQ and Databricks, via the HybridCompute integration, to activate personalized content and offers for target customers based on their individual purchase propensity scores for various product categories.
Now, let's explore the key steps required to complete the workflow with ActionIQ's composable CDP deployed within the Databricks Lakehouse via a Connected Application. In this integration pattern, ActionIQ connects to a customer's Databricks account to process data but doesn't persist data outside of the Databricks account.
The four high-level steps in establishing this connection are:
For each step, we will present both the concept and the implementation details using the retail use case outlined above. Please note that the data utilized in the use case is synthetic and has been created solely for the purpose of demonstration and illustration.
As a Customer Data Platform (CDP), ActionIQ implements a customer-centric data model that is purpose-built around one dimension: your definition of a customer. The queries generated by ActionIQ result in a list, or audience, of distinct user IDs of customers that meet certain criteria, as well as profile attributes and aggregated attributes that describe those customers. Translated to SQL, these queries all contain a GROUP BY non-customer-centric query.
Let's assume the propensity scores are already calculated and recorded in a table residing in the Databricks Lakehouse (Figure 1). Before connecting Databricks with ActionIQ, your IT team needs to model the propensity scoring data to make it query-ready in ActionIQ. This can be achieved by creating another view of the table, mapping the Databricks identifier household_key
to the aiq_id
expected by ActionIQ (Figure 2).
Once the propensity scoring table is properly modeled, your IT team, specifically the CDP administrator, can proceed with setting up ActionIQ's HybridCompute integration with Databricks.
To begin, you will collaborate with your Databricks administrator to establish proper permission control, ensuring a secure connection between the two systems. It is recommended to create a separate Databricks service principal and grant ActionIQ access to your Databricks resources. Additionally, you will set up a separate SQL warehouse for query pushdown workloads. To allow ActionIQ to use the newly created warehouse, you will grant the ActionIQ service principal "Can Use" permissions on the warehouse and access to the propensity scoring table you wish to use in ActionIQ.
Leveraging the Unity Catalog in Databricks Data Explorer, you can set granular permissions at the table or column level, specifying what users can access and utilize later within ActionIQ. Furthermore, you have the flexibility to configure read-access-only permissions for the propensity scoring table in Databricks. This means that users connecting through ActionIQ can only push down queries to data from the table and are restricted from making any modifications.
Following the permission set-up, your CDP administrator will start configuring the HybridCompute integration directly within ActionIQ's self-service UI:
Congratulations! You have now successfully set up and configured ActionIQ's HybridCompute integration with Databricks Lakehouse via native query pushdown. By pulling only the table metadata (schema, row count) from Databricks Lakehouse, the propensity scoring table is now discoverable from the ActionIQ user interface (Figure 6).
Now, your marketing team can start implementing the use case they envisioned. The primary objective is to engage customers who exhibit a high propensity score for bread and a moderate propensity score for soft drinks. The strategy involves targeting these customers with a bundled offer designed to incentivize purchases in both product categories. The communication will be delivered through either email in a newsletter format or paid media channels, depending on the customers' preferred channel.
Within ActionIQ's Audience Center module, your marketing team can create the target audience segment instantly using the intuitive no-code UI. This can be accomplished by combining two basic audiences (figure 9) —— customers with high propensity score (>= 0.66) for bread (figure 7) AND customers with moderate propensity score (in between 0.33 and 0.66) for soft drinks (figure 8).
At this step, you will also create additional audience segments necessary for the cross-channel customer journeys you intend to build later. For example, one of these segments will be specifically designed for email communications, determining the recipients of the personalized email newsletter. Additionally, you will create a separate segment for paid media advertising. All of these audience segments can be easily created with the ActionIQ Audience Center UI (Figure 10). The connected application seamlessly translates these user actions into SQL queries that are ready to be executed in the Databricks Lakehouse.
When it's time to engage customers using this data, ActionIQ automatically pushes the query down to the Databricks Lakehouse via JDBC to return the relevant subset of information. As the results flow into ActionIQ, the query processor performs further transformations to arrive at a final result set that's aligned with the user's needs. It's important to note that only the data required to fulfill the user's action and use case is returned, and it will not be stored for longer than the job execution.
Following the execution of the queries, the audience segment results are returned back to the ActionIQ user interface. From there, your marketing team can start constructing multi-stage customer journeys to activate the bundled offer, featuring bread and soft drinks, targeted at the intended audience. Within the target audience —— customers with a high propensity for bread AND moderate propensity for soft drinks —— the journeys can be further split based on customers' channel preferences as follows (Figure 11):
Once you're ready to activate the designed journey, the target audience segments and their associated attributes will be written to the designated channel destination (such as Sparkpost, Facebook, Pinterest, TikTok), via File transfer or API.
Besides orchestrating personalized customer experience on outbound channels, your marketing team can extend the same level of personalization in real time to visitors on your website. By leveraging the ActionIQ Profile API, your personalization engine can retrieve the comprehensive customer profile, encompassing all attributes and audience membership, within milliseconds (Figure 12). This empowers you to personalize the web banner offer for each customer, presenting the relevant product category aligned with their high propensity score.
As demonstrated in the step-by-step workflow above, this retail brand successfully achieved personalization without data replication by leveraging ActionIQ's HybridCompute integration with the Databricks Lakehouse. In this scenario, marketers efficiently operationalize the propensity model developed and trained in Databricks, without having to move or copy data into ActionIQ. They can seamlessly discover audiences and orchestrate consistent, personalized experiences across channels using ActionIQ's user-friendly interface. The benefits for the business are substantial, as the activation of personalized offers leads to increased customer engagement, improved conversion rates, and ultimately, revenue growth.
Interested to learn more about how a Composable CDP can help you scale your customer data operations? Reach out to the ActionIQ team.