Kategorien:

Systemfunktionen (Systeminformationen)

SYSTEM$DATABASE_REFRESH_HISTORY

Gibt ein JSON-Objekt zurück, das den Aktualisierungsverlauf für eine sekundäre Datenbank anzeigt.

Bemerkung

Diese Funktion gibt die Datenbankaktualisierungsaktivitäten der letzten 14 Tage zurück.

Syntax

SYSTEM$DATABASE_REFRESH_HISTORY( '<secondary_db_name>' )

Argumente

Name_der_Sekundärdatenbank

Name der sekundären Datenbank. Dieses Argument ist optional, wenn die sekundäre Datenbank die aktive Datenbank der aktuellen Sitzung ist.

Beachten Sie, dass der gesamte Name in einfache Anführungszeichen gesetzt werden muss.

Ausgabe

Die Funktion gibt die folgenden Elemente in einem JSON-Objekt zurück:

Spaltenname

Datentyp

Beschreibung

startTimeUTC

NUMBER

Zeitpunkt, zu dem die Replikationsoperation gestartet wurde. Das Format ist die Epochenzeit.

endTimeUTC

NUMBER

Zeitpunkt, zu dem die Replikationsoperation ggf. beendet wurde. Das Format ist die Epochenzeit.

currentPhase

TEXT

Aktuelle Replikationsphase. Die Liste der Phasen finden Sie in den Nutzungshinweisen.

jobUUID

TEXT

Abfrage-ID für den sekundären Datenbankaktualisierungsjob.

copy_bytes

NUMBER

Anzahl der während der Replikationsoperation kopierten Bytes.

object_count

NUMBER

Anzahl der Datenbankobjekte, die während der Replikationsoperation kopiert wurden.

Nutzungshinweise

  • Gibt nur Ergebnisse für Kontoadministratoren (Benutzer mit der Rolle ACCOUNTADMIN) zurück.

  • Die folgende Liste zeigt die Verarbeitungsreihenfolge der Phasen:

    1. SECONDARY_UPLOADING_INVENTORY

    2. PRIMARY_UPLOADING_METADATA

    3. PRIMARY_UPLOADING_DATA

    4. SECONDARY_DOWNLOADING_METADATA

    5. SECONDARY_DOWNLOADING_DATA

    6. COMPLETED / FAILED / CANCELED

Beispiele

Im folgenden Beispiel wird der Aktualisierungsverlauf für die sekundäre Datenbank mydb abgerufen. Die Ergebnisse werden in einem JSON-Objekt zurückgegeben:

SELECT SYSTEM$DATABASE_REFRESH_HISTORY('mydb');

Im folgenden Beispiel werden dieselben Details wie im vorherigen Beispiel abgerufen, die Ergebnisse werden jedoch in vereinfachte relationale Form gebracht:

SELECT
    to_timestamp_ltz(value:startTimeUTC::numeric,3) AS "start_time"
    , to_timestamp_ltz(value:endTimeUTC::numeric,3) AS "end_time"
    , value:currentPhase::string AS "phase"
  , value:jobUUID::string AS "query_ID"
  , value:copy_bytes::integer AS "bytes_transferred"
FROM TABLE(flatten(INPUT=> PARSE_JSON(SYSTEM$DATABASE_REFRESH_HISTORY('mydb'))));