Auf dieser Seite: Erkunden Sie einsatzbereite SQL-Abfragebeispiele für Journey Optimizer-Systemdatensätze, damit Sie E-Mail- und Push-Tracking, Nachrichten-Feedback, Journey-Schritte und Entscheidungsdaten für Reporting und Fehlerbehebung analysieren können.
Auf dieser Seite finden Sie die Liste der Adobe Journey Optimizer-Datensätze und der zugehörigen Anwendungsfälle:
Die vollständige Liste der Felder und Attribute für jedes Schema finden Sie im Journey Optimizer-Schemawörterbuch.
Siehe auch einige häufig verwendete Beispiele zum Abfragen von Journey-Schrittereignissen.
Auswählen des richtigen Datensatzes choose-the-correct-dataset
Bevor Sie eine Abfrage ausführen, überprüfen Sie, welcher Datensatz dem Aktionstyp entspricht, den Sie auf Ihrem Journey analysieren möchten.
- Um das Feedback zum Nachrichtenversand für native Journey Optimizer-Kanalaktionen (z. B.
sent- oderbounce-Status) zu überprüfen, verwenden Sie den Nachrichten-Feedback-Ereignisdatensatz. - Um E-Mail-Interaktionsereignisse wie Öffnungen und Klicks zu überprüfen, verwenden Sie den E-Mail-Tracking-Erlebnisereignis-Datensatz.
- Um zu überprüfen, ob Journey Optimizer eine benutzerdefinierte Aktion ausgeführt hat, und den Ausführungsstatus, die Latenz und Fehlerdetails zu überprüfen, verwenden Sie den Datensatz Journey-.
Wenn eine Abfrage „Tabelle nicht für Datensatz bereitgestellt“ zurückgibt, table-not-provisioned
Diese Meldung bedeutet nicht unbedingt, dass der Datensatz nicht bereitgestellt werden konnte. Bevor Sie sich an den Adobe-Support wenden, überprüfen Sie Folgendes:
- Aktivieren Sie im Arbeitsbereich Datensätze die Option Systemdatensätze anzeigen. Systemgenerierte Datensätze sind standardmäßig ausgeblendet. Erfahren Sie, wie Sie auf Datensätze zugreifen.
- Bestätigen Sie, dass der in Ihrer Abfrage verwendete genaue Tabellenname mit dem Tabellennamen übereinstimmt, der im Arbeitsbereich Datensätze für Ihre Sandbox angezeigt wird.
- Vergewissern Sie sich, dass der Journey-Aktionstyp mit dem abgefragten Datensatz übereinstimmt. Siehe Auswählen des richtigen Datensatzes.
- Warten Sie bei Datensätzen, die eine Batch-Aufnahme verwenden, z. B. dem Datensatz mit Nachrichten-Feedback-Ereignissen, bis zu zwei Stunden, bis Daten verfügbar sind.
- Fragen Sie für benutzerdefinierte Aktionen den Datensatz Journey-Schrittereignis ab, anstatt einen Nachrichten-Feedback-Ereignisdatensatz für den externen Versand zu erwarten.
Wenn der Datensatz Daten enthalten soll und die Tabelle nicht verfügbar ist, erfassen Sie den Sandbox-Namen, den Datensatznamen, die Abfrage-ID und den Zeitstempel, bevor Sie sich an den Adobe-Support wenden.
E-Mail-Tracking-Erlebnisereignis-Datensatz email-tracking-experience-event-dataset
Name in der Benutzeroberfläche: AJO-E-Mail-Tracking-Erlebnisereignis-Datensatz
Systemdatensatz für die Aufnahme von E-Mail-Tracking-Erlebnisereignissen aus Journey Optimizer.
Das zugehörige Schema ist das AJO Email Tracking Experience Event Schema.
Diese Abfrage zeigt die Anzahl der verschiedenen E-Mail-Interaktionen (Öffnungen, Klicks) für eine bestimmte Nachricht:
select
_experience.customerJourneyManagement.messageInteraction.interactionType AS interactionType,
count(1) eventCount
from ajo_email_tracking_experience_event_dataset
where
_experience.customerJourneyManagement.messageExecution.messageExecutionID IN ('UMA-30647505')
group by
_experience.customerJourneyManagement.messageInteraction.interactionType
Diese Abfrage zeigt die Aufschlüsselung der Anzahl der verschiedenen E-Mail-Interaktionen (Öffnungen, Klicks) nach Nachricht für eine bestimmte Journey:
select
_experience.customerJourneyManagement.messageExecution.messageExecutionID AS messageExecutionID,
_experience.customerJourneyManagement.messageInteraction.interactionType AS interactionType,
count(1) eventCount
from ajo_email_tracking_experience_event_dataset
where
_experience.customerJourneyManagement.messageExecution.journeyVersionID IN ('0e86ac62-c315-48cc-ab4f-3f8b741ae667')
group by
_experience.customerJourneyManagement.messageExecution.messageExecutionID,
_experience.customerJourneyManagement.messageInteraction.interactionType
order by
_experience.customerJourneyManagement.messageExecution.messageExecutionID,
_experience.customerJourneyManagement.messageInteraction.interactionType
limit 100;
Nachrichten-Feedback-Ereignisdatensatz message-feedback-event-dataset
Name in der Benutzeroberfläche: AJO-Nachrichten-Feedback-Ereignisdatensatz
Der AJO-Datensatz für Nachrichten-Feedback-Ereignisse speichert von Adobe Journey Optimizer generiertes Nachrichten-Versand-Feedback. Es unterstützt die Versand-Feedback-Analyse über alle Nachrichtenkanäle hinweg, einschließlich E-Mail, SMS/RCS/MMS und Briefpost. Feedback-Ereignisse können für Anwendungsfälle des Reportings und der Zielgruppenerstellung verwendet werden.
Das zugehörige Schema ist das AJO-Nachrichten-Feedback-Ereignis-Schema.
Eine vollständige Liste der Felder, Feldpfade, Datentypen und Beschreibungen finden Sie in der Adobe Journey Optimizer-Schemareferenz.
Klassifizieren von Test- und Nicht-Testausführungen classify-test-executions
Verwenden Sie das Feld isTestExecution , um Testausführungen von Nicht-Testausführungen zu unterscheiden, wenn das Feld ausgefüllt ist.
Bevor Sie eine Abfrage erstellen, verwenden Sie die Adobe Journey OptimizerSchemareferenz, um den aktuellen Feldpfad, den aktuellen Datentyp und die aktuelle Beschreibung für das AJO-Nachrichten-Feedback-Ereignisschema zu bestätigen.
Interpretieren Sie ausgefüllte Werte wie folgt:
truefalseNULL oder fehltKonvertieren Sie NULL nicht automatisch in false und gehen Sie nicht davon aus, dass jeder Nullwert eine Produktionsausführung darstellt. Wenn eine Reporting-Implementierung validiert hat, dass Nullwerte Nicht-Test-Datensätze für einen bestimmten Kanal oder historischen Zeitraum darstellen, wenden Sie diese Zuordnung in einer nachgelagerten Reporting-Ansicht an und dokumentieren Sie die Regel explizit.
Einige historische oder kanalspezifische Einträge werden möglicherweise nicht in jedes Nachrichtenkontextfeld eingefügt. Sie sollten daher die Feldverfügbarkeit nach Kanal testen und NULL-Werte beibehalten, anstatt sie als leere Zeichenfolgen oder abgeleitete Werte zu behandeln.
Führen Sie diese Abfrage nur aus, nachdem Sie den isTestExecution Pfad in der Schemareferenz Adobe Journey Optimizer bestätigt haben:
SELECT
_experience.customerJourneyManagement.messageProfile.isTestExecution AS isTestExecution,
_experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus AS feedbackStatus,
COUNT(*) AS eventCount
FROM ajo_message_feedback_event_dataset
GROUP BY
_experience.customerJourneyManagement.messageProfile.isTestExecution,
_experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus
ORDER BY
isTestExecution,
feedbackStatus;
Diese Abfrage gruppiert die Nachrichten-Feedback-Datensätze nach Testausführungsindikator und Versand-Feedback-Status. Das Ergebnis behält null oder fehlende isTestExecution bei, sodass Datensätze ohne aufgezeichneten Testausführungswert separat überprüft werden können.
Diese Abfrage zeigt die Anzahl unterschiedlicher E-Mail-Feedback-Status (gesendet, gebounct usw.) für eine bestimmte Nachricht:
select
_experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus AS feedbackStatus,
count(1) eventCount
from ajo_message_feedback_event_dataset
where
_experience.customerJourneyManagement.messageExecution.messageExecutionID IN ('UMA-30647505')
group by
_experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus;
Diese Abfrage zeigt die Aufschlüsselung der Anzahl unterschiedlicher E-Mail-Feedback-Status (gesendet, gebounct etc.) nach Nachricht für eine bestimmte Journey:
select
_experience.customerJourneyManagement.messageExecution.messageExecutionID AS messageExecutionID,
_experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus AS feedbackStatus,
count(1) eventCount
from ajo_message_feedback_event_dataset
where
_experience.customerJourneyManagement.messageExecution.journeyVersionID IN ('0e86ac62-c315-48cc-ab4f-3f8b741ae667')
group by
_experience.customerJourneyManagement.messageExecution.messageExecutionID,
_experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus
order by
_experience.customerJourneyManagement.messageExecution.messageExecutionID,
_experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus
limit 100;
Auf aggregierter Ebene Bericht auf Domain-Ebene (sortiert nach Top-Domains): Domain-Name, gesendete Nachricht, Bounces
SELECT split_part(_experience.customerJourneyManagement.emailChannelContext.address, '@', 2) AS recipientDomain, SUM( CASE WHEN _experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus = 'sent' THEN 1 ELSE 0 END)AS sentCount , SUM( CASE WHEN _experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus = 'bounce' THEN 1 ELSE 0 END )AS bounceCount FROM ajo_message_feedback_event_dataset WHERE _experience.customerjourneymanagement.messageprofile.channel._id = 'https://ns.adobe.com/xdm/channels/email' GROUP BY recipientDomain ORDER BY sentCount DESC;
E-Mail-Sendungen täglich:
SELECT date_trunc('day', TIMESTAMP) AS rolluptimestamp, SUM( CASE WHEN _experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus = 'sent' THEN 1 ELSE 0 END) AS deliveredcount FROM ajo_message_feedback_event_dataset WHERE _experience.customerjourneymanagement.messageprofile.channel._id = 'https://ns.adobe.com/xdm/channels/email' GROUP BY date_trunc('day', TIMESTAMP) ORDER BY rolluptimestamp ASC;
Finden Sie heraus, ob eine bestimmte E-Mail-ID eine E-Mail erhalten hat oder nicht. Wenn nicht, was war dann der Fehler, die Bounce-Kategorie oder der Code:
SELECT _experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus AS status, _experience.customerjourneymanagement.messagedeliveryfeedback.messagefailure.reason AS failurereason, _experience.customerjourneymanagement.messagedeliveryfeedback.messagefailure.type AS bouncetype FROM ajo_message_feedback_event_dataset WHERE _experience.customerjourneymanagement.messageprofile.channel._id = 'https://ns.adobe.com/xdm/channels/email' AND _experience.customerjourneymanagement.emailchannelcontext.address = 'user@domain.com' AND TIMESTAMP >= now() - INTERVAL '7' DAY ORDER BY status ASC
Finden Sie die Liste aller individuellen E-Mail-IDs, die in den letzten x Stunden/Tagen einen bestimmten Fehler, eine Bounce-Kategorie oder einen Code hatten oder mit einer bestimmten Nachrichtenübermittlung verbunden waren:
SELECT _experience.customerjourneymanagement.emailchannelcontext.address AS emailid, _experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus AS status, _experience.customerjourneymanagement.messagedeliveryfeedback.messagefailure.reason AS failurereason, _experience.customerjourneymanagement.messagedeliveryfeedback.messagefailure.type AS bouncetype FROM ajo_message_feedback_event_dataset WHERE _experience.customerjourneymanagement.messageprofile.channel._id = 'https://ns.adobe.com/xdm/channels/email' AND _experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus != 'sent' AND TIMESTAMP >= now() - INTERVAL '10' HOUR AND _experience.customerjourneymanagement.messageexecution.messageexecutionid = 'BMA-45237824' ORDER BY emailid
Hard-Bounce-Rate auf aggregierter Ebene:
select hardBounceCount, case when sentCount > 0 then(hardBounceCount/sentCount)*100.0 else 0 end as hardBounceRate from ( select SUM( CASE WHEN _experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus = 'bounce' AND _experience.customerJourneyManagement.messageDeliveryfeedback.messageFailure.type = 'Hard' THEN 1 ELSE 0 END)AS hardBounceCount , SUM( CASE WHEN _experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus = 'sent' THEN 1 ELSE 0 END )AS sentCount from ajo_message_feedback_event_dataset WHERE _experience.customerjourneymanagement.messageprofile.channel._id = 'https://ns.adobe.com/xdm/channels/email' )
Ständige Fehler, gruppiert nach Bounce-Code:
SELECT _experience.customerjourneymanagement.messagedeliveryfeedback.messagefailure.reason AS failurereason, COUNT(*) AS hardbouncecount FROM ajo_message_feedback_event_dataset WHERE _experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus = 'bounce' AND _experience.customerjourneymanagement.messagedeliveryfeedback.messagefailure.type = 'Hard' AND _experience.customerjourneymanagement.messageprofile.channel._id = 'https://ns.adobe.com/xdm/channels/email' GROUP BY failurereason
messageID möglicherweise nicht für jeden einzelnen Versand eindeutig. Wenn eine Journey dieselbe Aktion erneut an dasselbe Profil sendet, kann dieselbe messageID wiederverwendet werden. Um Ereignisse auf individueller Sendungsebene genau zu verfolgen oder zuzuordnen, kombinieren Sie daher die Felder journeyVersionID, journeyActionID und batchInstanceID (für Batch-Journeys) oder identityMap, um eine präzisere Eindeutigkeit zu erzielen.Identifizieren Sie unter Quarantäne gestellte Adressen nach einem ISP-Ausfall isp-outage-query
Im Falle eines Ausfalls eines Internet Service Providers (ISP) müssen Sie die E-Mail-Adressen identifizieren, die für bestimmte Domains innerhalb eines bestimmten Zeitraums fälschlicherweise als Bounce (unter Quarantäne) eingestuft wurden. Um diese Adressen zu erhalten, verwenden Sie die folgende Abfrage:
SELECT
_experience.customerJourneyManagement.emailChannelContext.address AS RecipientAddress,
timestamp AS EventTime,
_experience.customerJourneyManagement.messageDeliveryfeedback.messageFailure.reason AS "Invalid Recipient"
FROM ajo_message_feedback_event_dataset
WHERE
eventtype = 'message.feedback' AND
DATE(timestamp) BETWEEN '<start-date-time>' AND '<end-date-time>' AND
_experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus = 'bounce' AND
_experience.customerJourneyManagement.emailChannelContext.address ILIKE '%domain.com%'
ORDER BY timestamp DESC;
Das Datumsformat lautet dabei: YYYY-MM-DD HH:MM:SS.
Sobald Sie diese Adressen identifiziert haben, entfernen Sie sie aus der Unterdrückungsliste von Journey Optimizer. Weitere Informationen.
Push-Tracking-Erlebnisereignis-Datensatz push-tracking-experience-event-dataset
Name in der Benutzeroberfläche: AJO Push Tracking Experience Event Dataset
Datensatz für die Aufnahme von Mobile-Tracking-Erlebnisereignissen für Push von Journey Optimizer.
Das zugehörige Schema ist das AJO-Push-Tracking-Erlebnisereignis-Schema.
Abfragebeispiel:
select _experience.customerJourneyManagement.pushChannelContext.platform, sum(pushNotificationTracking.customAction.value) from ajo_push_tracking_experience_event_dataset
group by _experience.customerJourneyManagement.pushChannelContext.platform
select _experience.customerJourneyManagement.pushChannelContext.platform, SUM (_experience.customerJourneyManagement.messageInteraction.offers.offerCount) from ajo_email_tracking_experience_event_dataset
group by _experience.customerJourneyManagement.pushChannelContext.platform
Journey-Schritt-Ereignis journey-step-event
Interner Name: Journey-Schritt-Ereignisse (Systemdatensatz)
Datensatz für die Aufnahme von Schritt-Ereignissen in der Journey.
Das zugehörige Schema ist das Journey-Schritt-Ereignis-Schema zur Journey Orchestration.
Diese Abfrage zeigt die Aufschlüsselung der Aktionserfolgszahlen nach Aktions-Label für eine bestimmte Journey:
select
_experience.journeyOrchestration.stepEvents.actionName AS actionLabel,
count(1) actionSuccessCount
from journey_step_events
where
_experience.journeyOrchestration.stepEvents.journeyVersionID IN ('0e86ac62-c315-48cc-ab4f-3f8b741ae667')
AND _experience.journeyOrchestration.stepEvents.actionID IS NOT NULL
AND _experience.journeyOrchestration.stepEvents.actionType IS NOT NULL
AND _experience.journeyOrchestration.stepEvents.actionExecutionErrorCode IS NULL
group by
_experience.journeyOrchestration.stepEvents.actionName;
Diese Abfrage zeigt die Aufschlüsselung der eingegebenen Schrittzahlen nach nodeId und nodeLabel für eine bestimmte Journey. nodeId ist hier enthalten, da nodeLabel für verschiedene Journey-Knoten identisch sein kann.
select
_experience.journeyOrchestration.stepEvents.nodeID AS nodeID,
_experience.journeyOrchestration.stepEvents.nodeName AS nodeLabel,
count(1) stepEnteredCount
from journey_step_events
where
_experience.journeyOrchestration.stepEvents.journeyVersionID IN ('0e86ac62-c315-48cc-ab4f-3f8b741ae667')
AND _experience.journeyOrchestration.stepEvents.journeyNodeProcessed = TRUE
AND _experience.journeyOrchestration.stepEvents.eventID IS DISTINCT FROM 'createInstance'
group by
_experience.journeyOrchestration.stepEvents.nodeID,
_experience.journeyOrchestration.stepEvents.nodeName;
Diese Abfrage ruft ab, welche Knoten (nach nodeID und nodeName) in der Journey mit dem Versand einer Nachricht an ein Profil verknüpft sind. Dazu dienen die Profil-ID und der Ereignisdatensatz des Nachrichten-Feedbacks:
select
_experience.journeyorchestration.stepevents.nodeID, JSE._experience.journeyorchestration.stepevents.nodeName
from journey_step_events JSE
where
_experience.journeyOrchestration.stepEvents.actionID
in
(
select
_experience.customerJourneyManagement.messageExecution.journeyActionID
from ajo_message_feedback_event_dataset
where
_experience.customerJourneyManagement.messageProfile.messageProfileID = '<PROFILE ID>'
group by
_experience.customerJourneyManagement.messageExecution.journeyActionID
)
group by
_experience.journeyorchestration.stepevents.nodeID, JSE._experience.journeyorchestration.stepevents.nodeName
Siehe auch einige häufig verwendete Beispiele zum Abfragen von Journey-Schrittereignissen.
Erfahren Sie, wie Sie Fehler bei verworfenen Ereignistypen in journey_step_events beheben.
Entscheidungsfindungs-Ereignisdatensatz ode-decisionevents
Name in der Benutzeroberfläche: ODE DecisionEvents (Systemdatensatz)
Datensatz für die Aufnahme von Angebotsvorschlägen an die Benutzenden.
Das zugehörige Schema ist ODE DecisionEvents.
Diese Abfrage zeigt alle Angebote an, die am Vortag zurückgegeben wurden:
SELECT date_format(Decision.Timestamp, 'MM/dd/yyyy') as Date
,HOUR(Decision.timestamp) as Hour
,COUNT(*) as Count
FROM ode_decisionevents_b699fa78_efec_41b1_99fa_78efecc1b1ef_decision AS Decision
WHERE date_format(Decision.timestamp, 'MM/dd/yyyy') = date_format(CURRENT_DATE, 'MM/dd/yyyy') and Decision._experience.decisioning.propositionDetails.activity[0].id = 'xcore:offer-activity:13ab41890a335ad6'
GROUP BY date_format(Decision.Timestamp, 'MM/dd/yyyy')
,HOUR(Decision.timestamp)
ORDER BY 1, 2 DESC;
Diese Abfrage zeigt die Anzahl der Angebote, die in den letzten 30 Tagen für eine bestimmte Aktivität/Entscheidung vorgeschlagen wurden, und die damit verbundene Angebotspriorität.
select proposedOffers.id,proposedOffers.name, po._experience.decisioning.ranking.priority, count(proposedOffers.id) as ProposedCount from (
select explode(propositionexplode.selections) AS proposedOffers from
(select explode(_experience.decisioning.propositionDetails) AS propositionexplode,timestamp FROM ode_decisionevents_itca_decisioning_20230925_235340_379 where date_format(timestamp, 'MM/dd/yyyy') >= date_format(DATE_ADD(CURRENT_DATE, -30), 'MM/dd/yyyy') and _experience.decisioning.propositionDetails.activity[0].id = 'xcore:offer-activity:12ae6f35a055c6f0')) a, decision_object_repository_personalized_offers po where proposedOffers.id LIKE 'xcore:personalized-offer%' and po._id=proposedOffers.id
group by proposedOffers.id, proposedOffers.name, po._experience.decisioning.ranking.priority;
Sekundärer Empfänger-Feedback-Ereignisdatensatz (BCC) bcc-feedback-event-dataset
Name in der Benutzeroberfläche: Ereignisdatensatz mit AJO-Feedback von sekundären Empfangenden (Systemdatensatz). Im Abfrage-Service kann die Datensatztabelle weiterhin den Namen ajo_bcc_feedback_event_dataset haben.
Datensatz für E-Mail-BCC-Nachrichten (sekundäre Empfangende), wenn die BCC-Archivierung aktiviert ist.
Abfrage aller BCC-Nachrichten innerhalb von 2 Tagen (für eine bestimmte Kampagne):
SELECT bcc.*
FROM ajo_bcc_feedback_event_dataset AS bcc
WHERE
bcc._experience.customerJourneyManagement.messageExecution.messageExecutionID = '<message-execution-id>' AND
bcc.timestamp >= now() - INTERVAL '2' day;
Abfrage mit Feedback-Datensatz, um die Benutzenden anzuzeigen, die nicht (alle Bounces und Unterdrückungen) empfangen haben und die einen BCC-Eintrag für eine bestimmte Nachricht haben:
SELECT
distinct bcc._experience.customerJourneyManagement.secondaryRecipientDetail.originalRecipientAddress AS OriginalRecipientAddress
FROM ajo_bcc_feedback_event_dataset AS bcc
WHERE
bcc.timestamp > now() - INTERVAL '2' DAY AND bcc._experience.customerJourneyManagement.messageExecution.messageExecutionID = '<message-execution-id>' AND bcc._experience.customerJourneyManagement.secondaryRecipientDetail.originalRecipientAddress != '' AND
(
bcc._experience.customerJourneyManagement.secondaryRecipientDetail.originalRecipientAddress NOT IN (
SELECT distinct mfe._experience.customerJourneyManagement.emailChannelContext.address
FROM ajo_message_feedback_event_dataset AS mfe
WHERE
mfe.timestamp > now() - INTERVAL '2' DAY AND
mfe._experience.customerJourneyManagement.messageExecution.messageExecutionID = '<message-execution-id>' AND
mfe._experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus = 'sent'
)
OR bcc._experience.customerJourneyManagement.secondaryRecipientDetail.originalRecipientAddress IN (
SELECT distinct mfe._experience.customerJourneyManagement.emailChannelContext.address
FROM ajo_message_feedback_event_dataset AS mfe
WHERE
mfe.timestamp > now() - INTERVAL '2' DAY AND
mfe._experience.customerJourneyManagement.messageExecution.messageExecutionID = '<message-execution-id>' AND
mfe._experience.customerJourneyManagement.messageDeliveryfeedback.messageFailure.category = 'async' AND
mfe._experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus
Entitätsdatensatz entity-dataset
Name in der Schnittstelle: ajo entity_dataset (Systemdatensatz)_
Datensatz zum Speichern von Entitätsmetadaten für Nachrichten, die an den Endbenutzer gesendet werden.
Das zugehörige Schema ist das AJO-Entitätsschema.
Mit diesem Datensatz erhalten Sie Zugriff auf von Marketing-Experten definierte Metadaten. So können Sie für bessere Insights bei der Berichterstellung sorgen, wenn Journey Optimizer-Datensätze zur Visualisierung von Berichten in externen Tools exportiert werden. Das wird mithilfe des Attributs „messageID“ erzielt, das bei der Zuordnung verschiedener Datensätze wie dem Nachrichten-Feedback-Datensatz und Erlebnisereignis-Tracking-Datensätzen hilft, sodass Details zu einem Nachrichtenversand vom Versand bis zum Tracking auf Profilebene verfügbar werden.
Wichtige Hinweise
-
Ein Eintrag für eine Nachricht wird erst nach der Veröffentlichung von Journey oder Kampagne erstellt.
-
Sie können den Eintrag 30 Minuten nach der Veröffentlichung der Kampagne/Journey sehen.
Wenn Sie die von einer bestimmten Journey gesendeten E-Mails in Ihren Berichten nach der Aktion sortieren möchten, die sie gesendet hat, können Sie den Nachrichten-Feedback-Datensatz mit dem Entitäts-Datensatz verbinden. Die zu verwendenden Felder sind _experience.decisioning.propositions.scopeDetails.correlationID und _id field in entity dataset.
Mit der folgenden Abfrage können Sie die zugehörige Nachrichtenvorlage für eine bestimmte Kampagne abrufen:
SELECT
AE._experience.customerJourneyManagement.entities.channelDetails.template
from
ajo_entity_dataset AE
WHERE AE._experience.customerJourneyManagement.entities.campaign.campaignVersionID = 'd7a01136-b113-4ef2-8f59-b6001f7eef6e'
Mit der folgenden Abfrage können Sie die Journey-Details und den E-Mail-Betreff abrufen, die mit allen Feedback-Ereignissen verbunden sind:
SELECT
AE._experience.customerJourneyManagement.entities.journey.journeyActionName,
AE._experience.customerJourneyManagement.entities.journey.journeyActionID,
AE._experience.customerJourneyManagement.entities.journey.journeyVersionID,
AE._experience.customerJourneyManagement.entities.channelDetails.email.subject
from
ajo_entity_dataset AE
INNER JOIN ajo_message_feedback_event_dataset MF ON AE._experience.customerJourneyManagement.entities.channelDetails.messageID = MF._experience.customerJourneyManagement.messageExecution.messageID
WHERE
AE._experience.customerJourneyManagement.entities.channelDetails.channel._id = 'https://ns.adobe.com/xdm/channels/email'
AND MF._experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus = 'sent'
AND AE._experience.customerJourneyManagement.entities.journey.journeyVersionID IS NOT NULL
Sie können Journey-Schrittereignisse, Nachrichten-Feedback und Tracking-Datensätze zuordnen, um die Statistiken für ein bestimmtes Profil zu erhalten:
SELECT
AE._experience.customerJourneyManagement.entities.journey.journeyActionName,
AE._experience.customerJourneyManagement.entities.journey.journeyActionID,
AE._experience.customerJourneyManagement.entities.journey.journeyVersionID,
AE._experience.customerJourneyManagement.entities.channelDetails.email.subject,
JE._EXPERIENCE.JOURNEYORCHESTRATION.STEPEVENTS.PROFILEID,
JE._EXPERIENCE.JOURNEYORCHESTRATION.STEPEVENTS.NODENAME
from
ajo_entity_dataset AE
INNER JOIN ajo_message_feedback_event_dataset MF
ON AE._experience.customerJourneyManagement.entities.channelDetails.messageID = MF._experience.customerJourneyManagement.messageExecution.messageID
INNER JOIN journey_step_events JE
ON AE._experience.customerJourneyManagement.entities.journey.journeyActionID = JE._experience.journeyOrchestration.stepEvents.actionID
WHERE
AE._experience.customerJourneyManagement.entities.channelDetails.channel._id = 'https://ns.adobe.com/xdm/channels/email'
AND MF._experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus = 'sent'
AND AE._experience.customerJourneyManagement.entities.journey.journeyVersionID IS NOT NULL
This section contains structured knowledge intended to support interpretation, retrieval, and question answering related to this topic.
For complete understanding, this information should be combined with the documentation on this page. Neither source is intended to stand alone; the page describes the feature, while this section provides additional context that helps disambiguate terminology, intent, applicability, and constraints.
- TL;DR: This page provides ready-to-use SQL query examples for Journey Optimizer system datasets so you can analyze email and push tracking, message feedback, journey step, decisioning, BCC, and entity data for reporting and troubleshooting.
Intents:
- Choose the correct system dataset for a given analysis (message feedback versus email tracking versus journey step).
- Query email and push interaction counts (opens, clicks).
- Query message delivery feedback statuses (
sent,bounce) and bounce categories. - Distinguish test executions from non-test executions using the
isTestExecutionfield. - Join the Entity Dataset with feedback and tracking datasets using
messageIDorcorrelationID. - Troubleshoot the “Table not provisioned for dataset” message.
Glossary:
- AJO Email Tracking Experience Event Dataset: system dataset for email tracking events; queried as
ajo_email_tracking_experience_event_dataset(product-specific) - AJO Message Feedback Event Dataset: message delivery feedback across channels (Email, SMS/RCS/MMS, Direct Mail); queried as
ajo_message_feedback_event_dataset; uses batch ingestion (product-specific) - AJO Push Tracking Experience Event Dataset: push interaction events; queried as
ajo_push_tracking_experience_event_dataset(product-specific) - Journey Step Event: journey step events; queried as
journey_step_events(product-specific) - Decisioning Event Dataset (ODE DecisionEvents): offer proposition events (product-specific)
- Secondary Recipient Feedback Event Dataset (BCC): email BCC events when BCC archiving is enabled; table may still be named
ajo_bcc_feedback_event_dataset(product-specific) - Entity Dataset: stores entity metadata for messages; queried as
ajo_entity_dataset(product-specific) isTestExecution: field distinguishing test executions (true) from non-test executions (false), withNULLor missing treated as unknown (product-specific)
Guardrails:
- The AJO Message Feedback Event Dataset uses batch ingestion; expect a data latency of up to 2 hours (expected latency, batch ingestion — not a configurable limit) when querying it or using it for reporting.
- If a query returns “Table not provisioned for dataset”, for batch-ingested datasets allow up to two hours for data to become available before contacting Adobe Support.
- System datasets are hidden by default; enable Show system datasets in the Datasets workspace to query them.
- An Entity Dataset entry for a message is created only after the journey or campaign is published, and may appear about 30 minutes after publication (observed delay).
- Do not automatically convert a
NULLor missingisTestExecutionvalue tofalse, and do not assume null represents a production execution. - A successful custom action HTTP call confirms only that the call completed, not that the external system delivered a message.
Terminology:
- Canonical name: Journey Step Event — table:
journey_step_events - Do not confuse: “AJO Message Feedback Event Dataset” (delivery feedback such as
sentorbounce) ≠ “AJO Email Tracking Experience Event Dataset” (interaction events such as opens and clicks) ≠ “Journey Step Event” (custom action execution status and errors) - Do not confuse: “
isTestExecution=NULL” (unknown) ≠ “isTestExecution=false” (non-test execution)
FAQ:
- Q: Which dataset do I query for opens and clicks? — The AJO Email Tracking Experience Event Dataset.
- Q: Which dataset do I query for sent and bounce delivery status? — The AJO Message Feedback Event Dataset.
- Q: Why does my query return “Table not provisioned for dataset”? — It does not necessarily mean provisioning failed; enable Show system datasets, confirm the table name matches the Datasets workspace, and for batch datasets allow up to two hours for data to become available.
- Q: How do I separate test executions from non-test executions? — Use the
isTestExecutionfield; treatNULLor missing values as unknown rather than converting them tofalse. - Q: How do I enrich feedback records with campaign, journey, and message metadata? — Join the Entity Dataset using
messageIDor_experience.decisioning.propositions.scopeDetails.correlationID.