In this post, we look at how we helped customers move their data out of Adobe Experience Platform for use in other systems. We explore the challenges of working with an international team and how we used a generic solution that could be used by anyone.
Users of Adobe Experience Platform produce incredible amounts of data. This data can help them get powerful insights into their customers across all channels. Once they get that data out of Adobe Experience Platform, that data can then be used to make decisions based on the insights gained from the data.
The challenge was that, although there are many ways to get into Adobe Experience Platform to generate data, exporting the data to other systems wasn’t nearly as easy.
There was not a good way of getting data out of Adobe Experience Platform. We needed to build a way to enable activation, which is the capability of exporting data into other platforms, on Adobe Experience Platform. We needed to come up with a solution that was easy for users, consistent, and allowed for significantly more destinations for data based on user preferences.
On the surface, activation seemed like it should have been a simple thing to manage. But the reality is that there is a lot more going on it seems. With activation, the following details need to be considered:
Data Governance — Controlling what data can be sent
Authentication — How does the user access the destination
Encryption and compression
Streaming or File-based Destination? Or both?
Location? (S3, HTTP, Azure Blob, as examples)
Data Formatting — How does the destination expect the data to be sent
Advanced Routing — Some destinations have region-based routing abilities
Role-Based Access Control — What users can set up activations
These all added a level of complexity to the activation that we needed to solve. At Adobe, activation is already the bread and butter of Adobe Audience Manager. We looked to that for inspiration to help us create a modern activation tool for Adobe Experience Platform.
Our major goal in this was to find a way to make activation as straightforward as figuring out what data you want to send and where you want it sent.
The challenge of creating effective activation
At the time we started, there was a solution called Sources which was doing very similar data transfer, but from customer locations to Adobe Experience Platform. We were looking to build a solution that specialized in sending data from AEP to other locations. Our goal was to build something similar, but different in a couple of ways.
We wanted to modernize the process into a single, consistent experience across Adobe Experience Platform. But it was a massive task. We needed a system that wasn’t rigid. Something that could be adapted to different use cases. We wanted to avoid having to completely reinvent the wheel.
How we solved the problem
The realization that we had to think about the problem in a slightly different manner helped us unlock the secret solving the activation problem — we weren’t necessarily trying to make life easier today. We needed to create a solution that had future use cases.
It felt like a backward approach, but it helped us better understand what we were trying to do.
Another critical component of this solution was internal communication with teams spread around the world. We had teams working on this project in both New York, San Jose, and Bucharest. When we opened up communication between the two teams, we gained a better understanding of what was happening within the organization. It also (and this is a big one) led to us discovering that other teams were building products that could help us.
It wasn’t until we had approval on a potential solution that we realized that not only did we need consistency, but we had something that we could use to provide it. Another team in San Jose was tackling the problem of a general way of representing flows of data from A to B. They do this by building a framework centered around what they call a flow.
The idea that we could use this framework to solve our consistency problems. and this is an example of communication between internal teams in adobe that may be separated not be business sector, but by geography.
Creating a framework to move data
Adobe Experience Platform Flow team provided us with the framework we needed to move data out of Adobe Experience Platform in a consistent way. It generalized the idea of sending data and helps create an easier way to move data.
Using Flow, we needed to know two things:
Source — which is where the data is coming from.
Target — where the data is going.
Source and target worked together to create a flow that scheduled, transformed, and filter the data that users wanted to move. It gave people the ability to do things their way with a consistent way to visualize what was going on.
The final architecture for Activation can be seen in Figure 1 below.
Figure 1: Activation services architecture.
Where we’re heading with activation
There are two logical next steps for us now that we have an activation solution in place on Adobe Experience Platform.
The first is to make it easier for users to self-serve. We’ve been getting requests from ecosystem partners to make this possible as it’s something that is lacking in the landscape. We are exploring options that would allow our partners to create and manage their integrations with us through a Partner API and UI, which will enable hundreds of new destinations for customers.
We’re also looking to add more destinations. Both people-based destinations, like social media, as well as new types of destinations.