MicroStrategy ONE

Statistische Integration bei parallelen Upgrades, Metadaten-Migrationen oder Duplizierungen beibehalten

Paralleles Upgrade oder Metadatenmigration mit Platform Analytics

Platform Analytics ist ein Telemetrietool, das die Telemetrieeingabe aus mehreren MicroStrategy Bereitstellungen gleichzeitig unterstützt. Platform Analytics verfügt über eine eindeutige Methode zur Identifizierung jeder Metadatenverbindung zum Intelligence Server.

Wenn ein Administrator den Intelligence Server mit einer anderen Metadatenbackup neu konfiguriert, erkennt Platform Analytics die Änderung sofort und beginnt mit der Aufzeichnung einer neuen Telemetrie, die mit den neuen Metadaten verknüpft ist.

Abhängig von Ihrem Ziel ist keine weitere Aktion erforderlich. Dies ist beispielsweise der Fall, wenn Sie eine zweite Umgebung als Test- oder Sandbox-Umgebung erstellt haben. Wenn Sie mit der Erfassung der Telemetrie im gleichen Metadatenrepository fortfahren möchten, sehen Sie sich die folgenden Informationen an:

Wenn sich einer der folgenden Parameter ändert, hält Platform Analytics Ihre Metadaten als neu und eine zusätzliche Zeile wird in angezeigt vi_metadata Tabelle:

  • metadata_GUID Eine eindeutige Metadaten-GUID wird generiert und gespeichert, wenn neue Metadaten über den Konfigurationsassistenten erstellt werden.
  • Host Der Server, der den Datenbankserver hostet.
  • Port Der Port, an dem der Datenbankserver ausgeführt wird.
  • Datenbank Der Name der Metadaten-Datenbank.
  • uid/sid Dieses Feld wird nur für Oracle-Datenbanken verwendet.

Die oben aufgeführten Parameter werden basierend auf den Werten verarbeitet, die im Metadaten-DSN angegeben sind. Der Metadaten-DSN befindet sich in Ihrem odbc.ini Datei für Linux und die ODBC Datenquellen-Administrator für Windows.

Führen Sie die folgenden Schritte aus, um die Telemetrie wiederhergestellt zu haben und optional sicherzustellen, dass die gesamte Telemetrie erfasst wird:

  1. Halten Sie Ihre Platform-Analytics-Services am Laufen. Zum Beispiel Zookeeper, Kafka, Paconsumer, Redis usw.
  2. Um optional sicherzustellen, dass Platform Analytics die Verarbeitung der vorhandenen Telemetrie abgeschlossen hat, bevor Konfigurationsänderungen vorgenommen werden, überprüfen Sie, wie viele Telemetry-Metriken für Versatz-Themen übereinstimmen oder ob sie sich zwischen dem Telemetry Server (z. B. Kafka) und dem Platform Analytics Repository nur um eine vernachlässigbare Größe unterscheiden:
    1. MicroStrategy empfiehlt, dass Sie Nachrichten aus den folgenden Kernfragen oder Themenbereichen prüfen:
      1. IstBerichtsstatistiken
      2. IstDokumentstatistiken
      3. IstSessionStats
    2. Um das Ergebnis vom Telemetry Server abzurufen, wechseln Sie in sein Installationsverzeichnis (z. B. optional/ MicroStrategy/Messaging Services/Kfka/kafka xx.xx/bin) und führen Sie die folgende Abfrage aus:
      Kopieren
      ./kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list <ip:port> --topic <topic> --time -1
    3. Um das Ergebnis aus dem Platform Analytics Repository abzurufen, stellen Sie über die Datenbank eine Verbindung zum Repository her Abfrage-Tool oder einen anderen Abfrage-Editor und führen Sie die folgende Abfrage aus:

      Kopieren
      select * from platform_analytics_wh.lu_topic_partition_offset where id like '%<topic>%'
  3. Konfigurieren Sie den Intelligence Server mit neuen Metadaten neu.

  4. Stellen Sie über das DB-Abfragetool oder einen anderen Abfrage-Editor eine Verbindung zum Platform Analytics Repository her und überprüfen Sie, ob der neue Einstieg in der vi_metadata Tabelle ist aufgefüllt.

  5. Halten Sie den Platform Analytics Consumer (PAconsumer)-Prozess an.

  6. Vertauschen Sie mit dem DB-Abfragetool die metadata_ids in der Tabelle „lum_metadata“ mit einer temporär geänderten metadata_ID, um Primärschlüsselausnahmen zu vermeiden:

    Gliederung

    Kopieren
    UPDATE lu_metadata SET metadata_id = 'TEMPORARY_MD_ID' WHERE metadata_db_connection = 'OLD_MD_CONNECTION';
    UPDATE lu_metadata SET metadata_id = 'OLD_MD_ID' WHERE metadata_db_connection = 'NEW_MD_CONNECTION';
    UPDATE lu_metadata SET metadata_id = 'NEW_MD_ID' WHERE metadata_db_connection = 'OLD_MD_CONNECTION';

    Beispiel

    Kopieren
    UPDATE lu_metadata SET metadata_id = '7051653456108457985' WHERE metadata_db_connection = 'host=10.23.35.94;port=5432;database=platform_metadata;';
    UPDATE lu_metadata SET metadata_id = '7051653456108457984' WHERE metadata_db_connection = 'host=127.0.0.1;port=5432;database=platform_metadata;';
    UPDATE lu_metadata SET metadata_id = '7051946829721636864' WHERE metadata_db_connection = 'host=10.23.35.94;port=5432;database=platform_metadata;';
  7. Starten Sie den Platform Analytics Consumer.

  8. Bestätigen Sie mithilfe der folgenden Abfrage, dass die Transaktionen der richtigen metadata_id zugeordnet sind. Die neuen Einträge sollten die alten metadata_id mit der neuen metadata_db_Connection aufweisen.

    Kopieren
    SELECT object_name, m.metadata_id, metadata_db_connection, tran_timestamp
    FROM access_transactions a
        JOIN lu_object o ON a.object_id = o.object_id
        JOIN lu_project p ON o.project_id = p.project_id
        JOIN lu_metadata m ON p.metadata_id = m.metadata_id
    WHERE tran_timestamp > NOW() - INTERVAL '5 MINUTE'
    ORDER BY tran_timestamp DESC;
  9. Löschen Sie das Platform Analytics Warehouse, um alle Objekte in den Metadaten mit der nicht verwendeten metadata_id mit der folgenden Abfrage zu löschen:

    Kopieren
    doTestBeforePurge: true
    commandsToExecute:
    #  - commandName: DELETE_ALL_DELETED_OBJECTS

    #  - commandName: DELETE_ALL_DELETED_PROJECTS

      - commandName: DELETE_ALL_OBJECTS_IN_METADATA
        metadataList:
          - METADATA_ID_TO_BE_PURGED
    #      - metadataId_2