Gespeicherte Prozeduren für Unica Interact-Ereignismusterbericht

Der Unica Interact-Ereignismusterbericht verwendet die Daten in Staging-Tabellen, die mit gespeicherten Prozeduren gefüllt werden. Die gespeicherten Prozeduren führen eine Delta-Aktualisierung durch.

Die Daten für Unica Interact-Ereignismusterberichte werden in zwei Schritten verarbeitet:

  1. Der Unica Interact-ETL-Prozess wandelt die BLOB-Daten der Zielgruppe in ETL-Datenbanktabellen um.
  2. Der Berichtsaggregator aggregiert die Daten für jeden Mustertyp schrittweise in einer vorkonfigurierten parallelen Ausführung. Dies ist eine spezielle Funktion für Unica Interact-Berichtspakete.

Beide Prozesse sind in den Datenbanktrigger der Tabelle UACI_ETLPATTERNSTATERUN integriert. Dieser Trigger wird nach der erfolgreichen Ausführung des ETL-Prozesses ausgelöst und übergibt Datenbankjobs zum Aggregieren der Berichtsdaten.

In der nachfolgenden Tabelle finden Sie Informationen zu den gespeicherten Prozeduren und den Aufgaben, die sie ausführen:

Tabelle 1. Gespeicherte Prozeduren für Interact-Ereignismusterbericht

In dieser zweispaltigen Tabelle werden in der ersten Spalte die gespeicherten Prozeduren aufgelistet und in der zweiten Spalte die Aufgaben erklärt, die die Prozeduren ausführen.

Gespeicherte Prozedur Aufgabe
SP_GENERATE_PATTERN_MATCHALL Wird intern von der Prozedur SP_POPULATE_PATTERN_MATCHALL aufgerufen. Verantwortlich für das Abrufen der Daten für Muster vom Typ "Alle abgleichen", die seit der vorherigen Ausführung der gespeicherten Prozeduren ausgeführt wurden.
SP_GENERATE_PATTERN_COUNTER Wird intern von der Prozedur SP_POPULATE_PATTERN_COUNTER aufgerufen. Verantwortlich für das Abrufen der Daten für Muster vom Typ "Zähler", die seit der vorherigen Ausführung der gespeicherten Prozeduren ausgeführt wurden.
SP_GENERATE_PATTERN_WC Wird intern von der Prozedur SP_POPULATE_PATTERN_WC aufgerufen. Verantwortlich für das Abrufen der Daten für Muster vom Typ "Gewichteter Zähler", die seit der vorherigen Ausführung der gespeicherten Prozeduren ausgeführt wurden.
SP_POPULATE_PATTERN_MATCHALL Verarbeitet die Daten des Mustertyps "Alle abgleichen", die seit der vorherigen Ausführung der gespeicherten Prozeduren empfangen wurden.
SP_POPULATE_PATTERN_COUNTER Verarbeitet die Daten des Mustertyps "Zähler", die seit der vorherigen Ausführung der gespeicherten Prozeduren empfangen wurden.
SP_POPULATE_PATTERN_WC Verarbeitet die Daten des Mustertyps "Gewichteter Zähler", die seit der vorherigen Ausführung der gespeicherten Prozeduren empfangen wurden.
SP_UPDATE_UACI_TABLES_STATS Wird vom Trigger aufgerufen, um die Datenbankstatistiken zu aktualisieren. Die Datenbankjobs werden für die Berichtsdatenaggregation übergeben.
Aktualisiert die Statistiken für die folgenden ETL-Tabellen:
  • UACI_ETLPATTERNSTATE
  • UACI_ETLPATTERNSTATEITEM
  • UACI_ETLPATTERNEVENTINFO
SP_POPULATE_PATTERN_LOCK (p_parallel_degree) Aktualisiert die Tabelle UARI_PATTERN_LOCK mit dem konfigurierten Grad der parallelen Ausführung.

p_parallel_degree ist der Grad der parallelen Ausführung der Aggregationsprozesse.

SP_AGGR_RUN_STATUS Wird vom Unica Interact-ETL-Prozess aufgerufen, bevor der Aggregationsprozess gestartet wird, um den Sperrstatus der laufenden gespeicherten Prozeduren zu überprüfen. Mit der UARI_PATTERN_LOCK-Tabelle ausführen.
SP_REFRESH_PATTERNINFO Nur für Oracle und DB2®

Aktualisiert die Tabelle UARI_PATTERNSTATE_INFO, um Informationen zum Status und zur Zielgruppenebene für die ICs und Kategorien abzurufen.

Der Aufruf für diese Prozedur erfolgt durch einen Trigger vor dem Starten der Aggregationsprozeduren.

Da Mviews für SQL Server nicht unterstützt werden, gilt diese Prozedur nicht für SQL Server.

SP_UARI_REBIND_PACKAGES Nur für DB2

Bindet die Pakete neu, die dem Trigger und den Prozeduren für die Aggregation zugeordnet sind. Der Aufruf erfolgt nach dem Aufruf der Prozedur SP_UPDATE_UACI_TABLES_STATS über den Trigger.

Tabelle 2. Datenbanksequenz für Oracle und DB2

In dieser zweispaltigen Tabelle werden in der ersten Spalte die gespeicherten Prozeduren aufgelistet und in der zweiten Spalte die Aufgaben erklärt, die die Prozeduren ausführen.

Gespeicherte Prozedur Aufgabe
SQ_UARI_RUN Erstellt eine eindeutige Ausführungs-ID. Die Liste der Ausführungs-IDs wird in der Tabelle UARI_RUNS gespeichert.

Für SQL Server werden Ausführungs-IDs unter Verwendung der Eigenschaft IDENTITY in der Spalte RunId generiert, wodurch für jede Ausführung neue IDs generiert werden.

Tabelle 3. Datenbanktrigger

In dieser zweispaltigen Tabelle werden in der ersten Spalte die gespeicherten Prozeduren aufgelistet und in der zweiten Spalte die Aufgaben erklärt, die die Prozeduren ausführen.

Gespeicherte Prozedur Aufgabe
TR_AGGREGATE_DELTA_PATTERNS Wurde die Tabelle UACI_ETLPATTERNSTATERUN mit dem Wert 3 aktualisiert, wird der Trigger durch Übergeben der Jobs aufgerufen, die die gespeicherten Prozeduren für die Datenaggregation aufrufen.

ETL-Prozess

Bei der ersten Ausführung setzt der ETL-Prozess keine Werte in die entsprechende PatternID der Tabelle UARI_DELTA_PATTERNS ein, da alle Muster neu oder Deltamuster sind. Der Berichtsaggregationsprozess sammelt alle PatternID der ETL-Tabellen und fügt sie in die Tabelle UARI_DELTA_PATTERNS ein.

Der ETL-Prozess ruft die Prozedur SP_AGGR_RUN_STATUS auf. Die SP_AGGR_RUN_STATUS-Prozedur prüft die UARI_PATTERN_LOCK-Tabelle auf laufende Jobs, die auf der JobID basieren:

JobID Wert Grund
J Der Job wird ausgeführt. Die Szenarios sind aktive oder fehlgeschlagene Jobs.
N Fehlgeschlagener Job.

Der ETL-Prozess überprüft immer den Status der Berichtsaggregation, indem der Status der übergebenen Jobs überprüft wird. Wenn der ETL-Prozess aktive Berichtsaggregationen findet, startet der ETL-Prozess seine Ausführung nicht. Der ETL-Prozess wird später nach Plan neu gestartet.

Der ETL-Prozess überprüft die Tabelle UARI_PATTERN_LOCK auf die Anzahl der Job-IDs mit dem Wert Y. Der ETL-Prozess startet nur, wenn keine JobIDs den Wert Yhaben. Sind Job-IDs mit dem Wert Y vorhanden, dann wird der ETL-Prozess übersprungen und im nächsten geplanten Intervall ausgeführt. Weitere Informationen zum ETL-Prozess finden Sie im Unica Interact-Administratorhandbuch.

Ab dem zweiten Lauf aufwärts aktualisiert der ETL-Prozess die Tabelle UARI_DELTA_PATTERNS mit dem Aktualisierungsflag für die aktualisierte PatternID:

  • Für aktualisierte Daten wird PatternID mit U markiert.
  • Für gelöschte Daten wird PatternID mit D markiert.
  • Für neu hinzugefügte Daten wird PatternID mit dem Berichtsaggregationscode identifiziert und mit P markiert.

Der Aggregationsprozess wird nur für die mit dem Flag U oder D markierten PatternIDs ausgeführt.