Kategorien:

Systemfunktionen (Systeminformationen)

SYSTEM$GET_DIRECTORY_TABLE_STATUS

Gibt eine Liste von Datensätzen zurück, die den Konsistenzstatus der Verzeichnistabellen für Stagingbereiche in Ihrem Konto enthalten. Der Konsistenzstatus gibt an, ob eine Verzeichnistabelle in einem replizierten Stagingbereich über Informationen zu allen replizierten Dateien im Stagingbereich verfügt (konsistent mit diesen ist).

Siehe auch:

Replikation von Stagingbereichen, Pipes und des Ladeverlaufs, Verzeichnistabellen

Syntax

$SYSTEM_GET_DIRECTORY_TABLE_STATUS( [ '<stage_name>' ] )
Copy

Argumente

Optional:

'stage_name'

Stagingbereich, für den Sie den Konsistenzstatus der Verzeichnistabelle abrufen möchten. Wenn Sie einen Stagingbereichsnamen angeben, gibt die Funktion eine Liste mit einem einzigen Datensatz für die Verzeichnistabelle dieses Stagingbereichs zurück.

Rückgabewerte

Gibt eine Liste der Konsistenzdatensätze der Verzeichnistabellen jedes Stagingbereichs in Ihrem Konto zurück. Die Liste enthält maximal 10.000 Datensätze. Wenn Sie ein 'stage_name'-Argument angeben, gibt die Funktion eine Liste mit einem einzigen Datensatz für die Verzeichnistabelle dieses Stagingbereichs zurück.

Die Datensätze liegen im JSON-Format vor und enthalten die folgenden Name/Wert-Paare:

{
  "stage" : "STAGE1",
  "status" : "INCONSISTENT"
}

Wobei:

stage

Stagingbereich, in dem die Verzeichnistabelle aktiviert ist.

status

Konsistenzstatus der Verzeichnistabelle. CONSISTENT wenn die Verzeichnistabelle vollständig mit dem replizierten Inhalt im Stagingbereich konsistent ist, andernfalls INCONSISTENT. Der Status INCONSISTENT bedeutet, dass Snowflake die Konsistenz nicht überprüfen kann und dass der Verzeichnistabelle möglicherweise Informationen über einige Dateien fehlen, die im Stagingbereich vorhanden sind.

Nutzungshinweise

  • Zum Aufrufen dieser Funktion müssen Sie eine Rolle verwenden, die über die Berechtigung READ für die Stagingbereiche, deren Konsistenzstatus Sie abrufen möchten, verfügt oder diese geerbt hat.

  • Um den Konsistenzstatus von INCONSISTENT auf CONSISTENT zu aktualisieren, führen Sie eine vollständige Aktualisierung mit dem Befehl ALTER STAGE … REFRESH aus.

Beispiele

Im folgenden Beispiel wird eine Liste der Konsistenzstatus-Datensätze für die Stagingbereiche des Kontos abgerufen:

SELECT SYSTEM$GET_DIRECTORY_TABLE_STATUS();
Copy

Ausgabe:

[
  {
    "stage" : "STAGE1",
    "status" : "CONSISTENT"
  },
  {
    "stage" : "STAGE2",
    "status" : "INCONSISTENT"
  }
]

Im folgenden Beispiel wird ein Konsistenzstatus-Datensatz für einen Stagingbereich namens stage1 abgerufen:

SELECT SYSTEM$GET_DIRECTORY_TABLE_STATUS('stage1');
Copy

Ausgabe:

[
  {
    "stage" : "STAGE1",
    "status" : "CONSISTENT"
  }
]