Kategorien:

Systemfunktionen (Systeminformationen)

SYSTEM$GET_ICEBERG_TABLE_INFORMATION

Gibt den Speicherort der Metadaten-Stammdatei und den Status des letzten Snapshots für eine Iceberg-Tabelle zurück.

Die Funktion SYSTEM$GET_ICEBERG_TABLE_INFORMATION funktioniert je nach Tabellentyp unterschiedlich:

  • Bei einer Iceberg-Tabelle, die Snowflake als Katalog verwendet, generiert der Aufruf der Funktion Metadaten für Data Manipulation Language (DML)-Operationen oder andere Tabellenaktualisierungen, die seit der letzten Generierung der Tabellen-Metadaten durch Snowflake erfolgt sind.

    Wurden keine Aktualisierungen vorgenommen, gibt die Funktion den Speicherort der letzten Metadatendatei zurück, generiert aber keine neuen Metadaten.

  • Bei einer Iceberg-Tabelle, die nicht von Snowflake verwaltet wird, gibt die Funktion Informationen zum letzten aktualisierten Snapshot zurück.

Syntax

SYSTEM$GET_ICEBERG_TABLE_INFORMATION('<iceberg_table_name>')
Copy

Argumente

'iceberg_table_name'

Der Name der Iceberg-Tabelle, für die Sie Informationen abrufen möchten. Der Tabellenname ist eine Zeichenfolge und muss daher in einfache Anführungszeichen gesetzt werden.

  • Wenn der Name der Iceberg-Tabelle vollqualifiziert ist, wie in '<db>.<schema>.<iceberg_table_name>', muss der gesamte Name in einfache Anführungszeichen eingeschlossen werden, einschließlich Datenbank und Schema.

  • Wenn der Name der Iceberg-Tabelle zwischen Groß- und Kleinschreibung unterscheidet bzw. Sonderzeichen oder Leerzeichen enthält, sind doppelte Anführungszeichen erforderlich, damit sich Groß-/Kleinschreibung und Zeichen korrekt verarbeiten lassen. Die doppelten Anführungszeichen müssen in einfache Anführungszeichen eingeschlossen werden, z. B. '"<case_sensitive_iceberg_table_name>"'.

Rückgabewerte

Die Funktion gibt ein JSON-Objekt zurück, das die folgenden Name/Wert-Paare enthält:

{„metadataLocation“:“<Wert>“,“status“:“<Wert>“}

Wobei:

metadataLocation

Speicherort der Metadaten-Stammdatei, die von der Funktion aktualisiert oder abgerufen wurde.

status

Status der Operation. Dieses Feld gibt eine Erfolgs- oder Fehlermeldung zurück.

Nutzungshinweise

Zum Aufrufen dieser Funktion ist eine Rolle erforderlich, die über die Berechtigung OWNERSHIP für die Iceberg-Tabelle verfügt.

Beispiele

Generieren Sie einen Snapshot für die Iceberg-Tabelle it1 im Schema db1.schema1:

SELECT SYSTEM$GET_ICEBERG_TABLE_INFORMATION('db1.schema1.it1');
Copy

Ausgabe:

+-----------------------------------------------------------------------------------------------------------+
| SYSTEM$GET_ICEBERG_TABLE_INFORMATION('DB1.SCHEMA1.IT1')                                                   |
|-----------------------------------------------------------------------------------------------------------|
| {"metadataLocation":"s3://mybucket/metadata/v1.metadata.json","status":"success"}                         |
+-----------------------------------------------------------------------------------------------------------+