Holdout Group Logs requires WRITE
permissions to your data warehouse.
Because of this, Hightouch only records rows of audiences built off sources that have the Lightning sync engine enabled.
Overview
Holdout Group Logs tracking allows organizations and marketers to accurately understand which rows were not synced to a destination and included in other split groups. This can be useful when wanting to do analysis on campaigns where you need to understand exactly which rows were included in which split groups at the time of a given sync.
A common use case is when syncing a Treatment vs Holdout group for an audience and wanting the ability to accurately know which rows were synced to the destination and which were part of the holdout group.
Only rows that are not included in the sync split group are written to the hightouch_audit.audience_holdout
table,
and other synced rows are still written to the hightouch_audit.sync_changelog
table. You will need to join both tables
to get a full picture of what is synced and not synced.
This feature requires the Lightning sync engine to be enabled.
For more information on audiences and splits, go to the audiences or splits pages.
This feature is still in Beta. Please if you're interested in Holdout Group Logs!
Table definition
The hightouch_audit.audience_holdout
table is an append-only log. If the same row is included in multiple sync runs, it has multiple entries in this table.
COLUMN | DESCRIPTION |
---|---|
sync_id | The ID of the sync |
sync_run_id | The ID of the sync run |
model_id | The ID of the model attached to the sync. This is the same as the audience ID. |
timestamp | The timestamp the sync occured. |
row_id | The value of the row's primary key as defined from the model |
fields | A JSON object of the raw data from the model that is synced into the destination. Note that this is the raw data from the warehouse, not the payload that Hightouch sent to the destination. This column has limitations in Redshift (see FAQ for details, below). |
split_group | The split group name. |
FAQ
What are the limitations in Redshift?
Because Redshift does not support strings longer than 65,535 bytes,
it is not possible to store JSON representations of arbitrary length in the audience_holdout
table. Hightouch attempts
to store model data in the fields
, but if the model contains either long strings or a large number of fields,
some fields may be truncated. Truncated values in the audience_holdout
table do not mean that values were truncated
when Hightouch synced data to the destination; it's purely a limitation of the warehouse logs.