I have a data model with the following relationship
Profile 1 ---> n orders 1 --> n order items
In Adobe Campaign Classic there was the concept of "filtering dimension" which could be selected to filter your targeting dimension (usually recipients) using linked data, such as orders. And I understood this to be more efficient that "Orders exist such as"
Is there anything similar in ACS?
What is the most efficient way to target someone that has ordered a specific SKU other than starting with Profiles as the resource:
Orders exist such as:
Order Items exist such as
SKU = XXXX
I'm dealing with fairly large data sets in each of the tables, so keen for it to be as efficient as possible (but really needs to be done through the audiences/query builder for practical reasons)
Thanks in advance
Yes there is, it is on the Property tab of a Query activity
Now your data model should ensure you have the link to Profile available from Order and From Order Item (make sure you've got an index too), this will allow you to filter on Order Item and return the Profile as Target dimension. See sample of Query activity below
The most efficient way to query is to start by the lowest end, aka Order Item in your case (or Order if you're not interested in products bought) and ensure your target Dimension is Profile. To ensure Profile is visible in the Targeting dimension, you would have to create a 0-1 or 1-1 link between the Filtering resource (Order or Order Item) and Profile.... Having a direct relation between Order Item and Profile is not natural but if you want efficiency, that's the way to go otherwise you'll have to traverse the Order to get the Profile which is not efficient at all
Hope this helps
That's great, thanks for sharing and all makes sense.
Am I right in saying this is therefore only really available in workflow query activities?
And not Audiences or Segmentation Activity?
That's correct, the above applies in workflow only. For Audiences, you could select Order Item as Targeting dimension however the elements returned will be Order items while what you want is Profile, so you would have to build a workflow to Read your Audience and do a Reconciliation with Profile, doable for sure but not sure it's the most effective as you'll do 2 steps what you could do in one if you use directly a workflow. It's a question of choices here.
Hope this helps