Schema:

ACCOUNT_USAGE

Ansicht AGGREGATE_ACCESS_HISTORY

Diese Account Usage-Ansicht bietet einen aggregierten Zugriffsverlauf für alle Workloads in Snowflake. Wenn ein Workload sehr häufig wiederkehrende transaktionale Abfragen umfasst, wiederholt sich auch das Zugriffsmuster dieser Abfragen häufig. Es ist effizienter, solche Informationen über den Zugriffsverlauf auf aggregierte Weise zu betrachten.

Die Ansicht AGGREGATE_ACCESS_HISTORY enthält ähnliche Daten wie die Ansicht ACCESS_HISTORY-Ansicht, die über die Zeit bei wiederholten Abfragen in einminütigen Intervallen aggregiert werden.

Diese Ansicht bietet auch Informationen zum Zugriffsverlauf, die sowohl mit analytischen als auch mit transaktionalen Abfragen verbunden sind. Im Gegensatz dazu enthält ACCESS_HISTORY-Ansicht nur Informationen zum Zugriffsverlauf im Zusammenhang mit Abfragen, die in der QUERY_HISTORY-Ansicht angezeigt werden, und schließt bestimmte transaktionale Abfragen mit kurzer Ausführungszeit nicht ein.

Spalten

Spaltenname

Datentyp

Beschreibung

INTERVAL_START_TIME

TIMESTAMP_LTZ

Startzeit des Messzeitraums.

INTERVAL_END_TIME

TIMESTAMP_LTZ

Endzeit des Messzeitraums.

QUERY_PARAMETERIZED_HASH

TEXT

Eindeutige ID, um identisch parametrisierte Abfragen zu identifizieren. Siehe QUERY_PARAMETERIZED_HASH-Spalte.

USER_NAME

TEXT

Benutzer, der die Abfrage ausgegeben hat.

CALLS

NUMBER

Anzahl der Zugriffe innerhalb des durch INTERVAL_START_TIME und INTERVAL_END_TIME angegebenen Zeitraums, die durch eine bestimmte parametrisierte Abfrage und einen bestimmten Benutzer ausgelöst wurden.

DIRECT_OBJECTS_ACCESSED

ARRAY

Ein JSON-Array mit Datenobjekten wie benutzerdefinierten Funktionen (d. h. UDFs und UDTFs), gespeicherten Prozeduren, Tabellen, Ansichten und Spalten, die direkt in der Abfrage explizit oder durch Verwendung von Shortcuts wie dem Sternchen (d. h. *) benannt werden.

In diesem Feld können virtuelle Spalten zurückgegeben werden.

Weitere Hinweise zu UDFs finden Sie unter Hinweise zu UDFs.

BASE_OBJECTS_ACCESSED

ARRAY

Ein JSON-Array aller Basisdatenobjekte zur Ausführung einer Abfrage, einschließlich Spalten, externe Funktionen, UDFs und gespeicherte Prozeduren.

In dem Beispiel, das unter ACCESS_HISTORY-Ansicht verwendet wird, geben die Felder im ersten Array eine UDF an. Dieselben Felder im ersten Array spezifizieren auch eine gespeicherte Prozedur, falls zutreffend.

Beachten Sie Folgendes:

  • In diesem Feld werden Ansichtsnamen oder Ansichtsspalten, einschließlich virtueller Spalten, angegeben, wenn in einem Data Sharing-Verbraucherkonto auf eine freigegebene Ansicht zugegriffen wird.

  • Weitere Hinweise zu UDFs finden Sie unter Hinweise zu UDFs.

OBJECTS_MODIFIED

ARRAY

Ein JSON-Array, das die Objekte angibt, die mit einer Schreiboperation in der Abfrage verknüpft waren.

Das Array für die UDF und die gespeicherte Prozedur ist dasselbe wie das, was in den Arrays für baseSources und directSources in dem Beispiel unter ACCESS_HISTORY-Ansicht angezeigt wird, je nachdem, wie der Zugriff erfolgte. Der Kürze halber wird in dem Beispiel das Array der UDF und der gespeicherten Prozedur weggelassen.

Weitere Hinweise zu UDFs finden Sie unter Hinweise zu UDFs.

OBJECT_MODIFIED_BY_DDL

OBJECT

Gibt die DDL-Operation für eine Datenbank, ein Schema, eine Tabelle, eine Ansicht und eine Spalte an. Zu diesen Operationen gehören auch Anweisungen, die eine Zeilenzugriffsrichtlinie auf einer Tabelle oder Ansicht, eine Maskierungsrichtlinie auf einer Spalte sowie Tag-Aktualisierungen (z. B. Setzen eines Tags, Ändern eines Tag-Werts) auf dem Objekt oder der Spalte angeben.

POLICIES_REFERENCED

ARRAY

Gibt Informationen zu der erzwungenen Maskierungsrichtlinie für die Spalte und der erzwungenen Zeilenzugriffsrichtlinie für die Tabelle an, einschließlich der Richtlinien für Zwischenobjekte oder Zwischenspalten.

Die Felder im JSON-Array für die Spalten DIRECT_OBJECTS_ACCESSED, BASE_OBJECTS_ACCESSED, OBJECTS_MODIFIED und POLICIES_REFERENCED werden im Folgenden beschrieben.

Feld

Datentyp

Beschreibung

columnId

NUMBER

Eine Spalte-ID, die innerhalb des Kontos eindeutig ist. Dieser Wert ist identisch mit dem Wert in der column_id-Spalte der Ansicht COLUMNS.

columnName

TEXT

Der Name der Spalte, auf die zugegriffen wurde. Gibt bei Richtlinien den Namen der Spalte an, für die die Maskierungsrichtlinie festgelegt ist.

objectId

NUMBER

Ein Bezeichner für das Objekt, der innerhalb eines gegebenen Kontos und einer gegebenen Domäne eindeutig ist. Diese Nummer stimmt überein mit:

  • Mit dem Wert in der Spalte TABLE_ID der Ansichten TABLE, VIEWS und MATERIALIZED_VIEW_REFRESH_HISTORY.

  • Wenn auf einen Stagingbereich zugegriffen wurde, stimmt diese Nummer überein mit:

    • NAME – Bezeichner für einen Benutzer (Benutzer-Stagingbereich).

    • TABLE_ID – Nummer für eine Tabelle (Tabellen-Stagingbereich).

    • STAGE_ID – Nummer für einen Stagingbereich (Benannter Stagingbereich).

objectName

TEXT

Der vollqualifizierte Name des Objekts, auf das zugegriffen wurde.

Wenn eine Maskierungsrichtlinie für eine Spalte bzw. ein Zeilenzugriffrichtlinie für eine Tabelle oder Ansicht festgelegt wurde, bezieht sich der Wert auf den vollqualifizierten Namen der Tabelle oder Ansicht, für die die Zeilenzugriffsrichtlinie festgelegt ist, bzw. auf die Tabelle oder Ansicht, die eine Spalte enthält, für die eine Maskierungsrichtlinie festgelegt ist.

Wenn auf einen Stagingbereich zugegriffen wurde, gibt dieser Wert Folgendes an:

  • username (Benutzer-Stagingbereich)

  • table_name (Tabellen-Stagingbereich)

  • stage_name (Benannter Stagingbereich)

objectDomain

TEXT

Eine der folgenden Optionen: EXTERNAL TABLE, FUNCTION, MATERIALIZED VIEW, PROCEDURE, STAGE, STREAM oder VIEW.

Beachten Sie, dass mit FUNCTION die UDFs, UDTFs und externen Funktionen angegeben werden.

Gibt bei Richtlinien die Domäne des Objekts an, für das die Zeilenzugriffsrichtlinie festgelegt ist.

location

TEXT

Die URL des externen Standorts, wenn auf Daten von einem externen Standort aus zugegriffen wird (z. B. s3://mybucket/a.csv).

Wenn die Abfrage nicht auf einen Stagingbereich zugreift, wird dieses Feld weggelassen.

stageKind

TEXT

Wenn Sie in einen Stagingbereich schreiben, eine der folgenden Optionen: Table, User, Internal Named oder External Named.

Wenn die Abfrage nicht auf einen Stagingbereich zugreift, wird dieses Feld weggelassen.

baseSources

TEXT

Spalten, die als Quellspalten für die durch directSources angegebenen Spalten dienen. Diese Spalten erleichtern die Ermittlung der Spaltenherkunft.

directSources

TEXT

Spalten, die speziell in dem Teil der SQL-Anweisung genannt werden, in dem es um das Schreiben der Daten geht, und die als Quellspalten in der Zieltabelle dienen, in die Daten geschrieben werden. Diese Spalten erleichtern die Ermittlung der Spaltenherkunft.

policyName

TEXT

Der vollqualifizierte Name der Richtlinie.

policyId

NUMBER

Ein Bezeichner für die Richtlinie, der innerhalb eines gegebenen Kontos und einer gegebenen Domäne eindeutig ist. Dieser Wert entspricht dem Bezeichner für eine Maskierungsrichtlinie in Ansicht MASKING_POLICIES oder dem Bezeichner für eine Zeilenzugriffsrichtlinie in ROW_ACCESS_POLICIES-Ansicht.

policyKind

TEXT

Entweder MASKING_POLICY oder ROW_ACCESS_POLICY

argumentSignature

TEXT

Name und Datentyp jedes Arguments in der UDF oder gespeicherten Prozedur.

dataType

Datentyp des Rückgabewerts einer UDF oder gespeicherten Prozedur.

Mithilfe dieses Werts können zwei oder mehr UDFs unterschieden werden, die denselben Namen, aber unterschiedliche Rückgabetypen haben.

Die Felder für die Spalte OBJECT_MODIFIED_BY_DDL werden im Folgenden beschrieben.

Feld

Datentyp

Beschreibung

objectDomain

TEXT

Die Domäne des durch die DDL-Operation definierten oder geänderten Objekts. Dies umfasst alle Objekte, die getaggt werden können, sowie MASKING POLICY, ROW ACCESS POLICY und TAG.

objectId

NUMBER

Der Bezeichner des Objekts, der innerhalb eines gegebenen Kontos und einer gegebenen Domäne eindeutig ist und der von DDL-Operationen definiert oder geändert wird.

objectName

TEXT

Der vollqualifizierte Name des Objekts, das durch die DDL-Operation definiert oder geändert wurde.

operationType

TEXT

Das SQL-Schlüsselwort, das die Operation für die Tabelle, Ansicht oder Spalte angibt: ALTER, CREATE, DROP, REPLACE oder UNDROP.

properties

ARRAY

Ein JSON-Array, das die Eigenschaften des Objekts oder der Spalte angibt, wenn Sie das Objekt oder die Spalte erstellen, ändern, löschen oder wiederherstellen. Es gibt zwei Typen von Eigenschaften: atomar (atomic) und zusammengesetzt (compound).

Für das Feld properties:

  • Atomar: Genau Ein Wert pro Eigenschaft (z. B. comment hat genau einen Zeichenfolgenwert, die Eigenschaft enabled ist vom Typ Boolean und hat genau einen Wert).

  • Zusammengesetzt: Die Eigenschaft ist mehrwertig (z. B. allowed_values für einen Tag, Maskierungsrichtlinie).

Zusammengesetzte Eigenschaften werden in einem JSON-Array erfasst. Wenn eine Tabelle beispielsweise eine einzelne Spalte mit dem Namen EMAIL enthält, wird die Spalte wie folgt erfasst:

columns: {
  "email": {
    objectId: {
      "value": 1
    },
    "subOperationType": "ADD"
  }
}
Copy

subOperationType kann einen der folgenden Werte aufweisen:

  • ADD gibt das Hinzufügen einer zusammengesetzten Eigenschaft an (z. B. Hinzufügen einer Spalte, Festlegen zulässiger Werte).

  • DROP gibt das Entfernen einer zusammengesetzten Eigenschaft an.

  • ALTER gibt das Ändern einer zusammengesetzten Eigenschaft an.

objectId gibt den Bezeichner für die Spalte oder das Objekt an, außer für zulässige Tag-Werte, die keinen Bezeichner haben.

Nutzungshinweise

  • Die Latenzzeit der Ansicht kann bis zu 180 Minuten (3 Stunden) betragen.

  • Diese Account Usage-Ansicht kann verwendet werden, um den aggregierten Zugriffsverlauf von Snowflake-Objekten (z. B. Tabellen, Ansichten, Spalten) innerhalb der letzten 365 Tage (1 Jahr) abzufragen.