Aktivieren gespeicherter Prozeduren für Unica Interact-Ereignismusterbericht

Zusätzlich zu den Schritten, die Sie zum Aktivieren von Berichten ausgeführt haben, müssen Sie den Unica Interact-Ereignismusterbericht aktivieren. Der Unica Interact-Ereignismusterbericht verwendet den Deltaaktualisierungsprozess für die Datenaggregation, damit Berichte schneller ausgegeben werden können.

Vorbereitungen

Der Scheduler für Verwaltungstasks (ATS = Administrative Task Scheduler) benötigt Tabellenbereich, um Protokoll- und Konfigurationsdaten speichern zu können.

Soll der geplante Job aus Task Scheduler ausgeführt werden, muss die Datenbank aktiv sein.

Bei ADMIN_TASK_STATUS handelt es sich um eine Verwaltungsansicht, die beim ersten Aufrufen der Prozedur ADMIN_TASK_ADD erstellt wird. Diese Ansichten müssen in der Datenbank vorhanden sein. Fehlen die Ansichten, wenden Sie sich an den zuständigen Datenbankadministrator, um mit ihm die Ansichten zu erstellen. Sie müssen über die Zugriffsberechtigung für die Verwaltungsansicht ADMIN_TASK_STATUS verfügen.

Warum und wann dieser Vorgang ausgeführt wird

Führen Sie die folgenden Schritte aus, um gespeicherte Prozeduren für den Unica Interact-Ereignismusterbericht zu aktivieren.

Prozedur

  1. Suchen Sie nach dem <Interact_ReportPack_Installer_Home>\cognos11\interact-ddl\<DB Type>\-Ordner.
  2. Für DB2®, stellen Sie die folgenden Parameter ein:
    • db2set DB2_COMPATIBILITY_VECTOR=ORA
    • db2set DB2_ATS_ENABLE=YES
  3. Wenn die Instanz erneut gestartet wird, müssen Sie DB2 aktivieren, indem Sie die folgenden Befehle in der hier aufgeführten Reihenfolge ausführen:
    1. db2 force application all Stoppen der Anwendung auf dieser Instanz.
    2. db2stop force Stop DB2.
    3. db2start Starten Sie die Datenbank.
    4. db2 activate db <dbname> Explizites Aktivieren der Datenbank.

      Die folgende Nachricht sollte angezeigt werden:

      DB20000I The ACTIVATE DATABASE command completed successfully.
    5. db2 list active databases Überprüfen der Aktivierung der Datenbank.

      Es erscheint eine Ausgabe, die ähnlich wie die folgende Ausgabe aussieht.

      Active Databases
      Database name     = <dbname>
      Applications connected currently     = 0
      Database path    = /data04/<DB instance owner>/NODE0000/SQL00001/
  4. Führen Sie in der ETL-Datenbank die folgenden Scripts in der aufgeführten Reihenfolge aus:
    1. acir_tables_<DB Type>.sql
    2. acir_scripts_<DB Type>.sql
    Anmerkung: Sie müssen das Script acir_tables_<DB Type>.sql ausführen, wenn es noch nicht ausgeführt wurde.
    Anmerkung: Wenn nach der Ausführung des Scripts acir_scripts_db2.sql auf der Zieldatenbank eine Ausnahmebedingung ausgelöst wird, löschen Sie den Auslöser und erstellen Sie ihn mit dem richtigen Datenbankbenutzer.

    Führen Sie für SQL Server das Script acir_jobs_sqlserver.sql aus. Das Script erstellt Datenbankjobs für Grad 2. Wollen Sie den Grad ändern, finden Sie weitere Informationen in Ändern des Grads der parallelen Ausführung für Interact-Ereignismusterbericht.

    Anmerkung: Stellen Sie sicher, dass der Service für SQL Server Agent aktiv ist.
  5. Bevor der ETL-Prozess gestartet wird, müssen Sie in der Tabelle UARI_PATTERN_LOCK Sätze mit dem Grad der parallelen Batchausführung erstellen. Führen Sie einen der folgenden Befehle in der ETL-Datenbank aus, um diese Berichte zu erstellen:
    • Für Oracle: execute SP_POPULATE_PATTERN_LOCK(2)
    • Für DB2: call SP_POPULATE_PATTERN_LOCK(2)
    • Für SQL Server: EXEC [dbo].[SP_POPULATE_PATTERN_LOCK] @p_parallel_degree = 2

    Im vorliegenden Beispiel ist 2 der Grad der parallelen Ausführung der Aggregationsprozesse.

    Die Tabelle UARI_PATTERN_LOCK wird mit den gespeicherten Prozeduren mit dem Gradwert gefüllt. Der Gradwert ist konfigurierbar. Erhöhen Sie den Grad der parallelen Ausführung für den Aggregationsprozess des Interact-Ereignismusterberichts, um die Antwortzeit zu verringern. Wenn der Grad auf einen höheren Wert gesetzt wird, steigen auch die Anforderungen an die Hardwareressourcen proportional. Die Anzahl von Prozeduren, die für die Datenaggregation ausgeführt werden, hängt von dem Gradwert ab.

  6. Optional: Während die ETL-Funktion ausgeführt wird, können Sie den Trigger inaktivieren, sodass die Berichtsaggregation nicht aufgerufen wird. Zum Inaktivieren des Triggers und zum Inaktivieren des Berichtsaggregationsprozesses müssen Sie abhängig von Ihrem Datenbanktyp einen der folgenden Befehle ausführen:
    • Weitere Informationen finden Sie in der DB2-Dokumentation
    • Für Oracle: alter trigger TR_AGGREGATE_DELTA_PATTERNS disable;
    • Für SQL Server: Disable Trigger TR_AGGREGATE_DELTA_PATTERNS on uaci_etlpatternstaterun
  7. Optional: Zum Aktivieren des Triggers und zum Aktivieren des Berichtsaggregationsprozesses müssen Sie abhängig von Ihrem Datenbanktyp einen der folgenden Befehle ausführen:
    • Weitere Informationen finden Sie in der DB2-Dokumentation.
    • Für Oracle: alter trigger TR_AGGREGATE_DELTA_PATTERNS enable;
    • Für SQL Server: Enable Trigger TR_AGGREGATE_DELTA_PATTERNS on uaci_etlpatternstaterun

Ergebnisse

Wenn die Ausführung von ETL erfolgreich abgeschlossen wurde, dann wird der Status in der Tabelle UACI_ETLPATTERNSTATERUN auf den Wert "3" aktualisiert und der Trigger TR_AGGREGATE_DELTA_PATTERNS wird aufgerufen. Der Trigger ruft die gespeicherte Prozedur für den festgelegten Grad der parallelen Ausführung auf.

Anmerkung: Wenn das System alle Daten zum ersten Mal aggregiert, dann kann der Berichtsaggregationsprozess möglicherweise länger als nachfolgende Aggregationen dauern.