SYSTEM$CLASSIFY¶
Klassifiziert das angegebene Objekt mit der Option zum Angeben der Anzahl der Zeilen in der Stichprobe und zum Zuweisen des empfohlenen sensiblen Datenklassifizierungs-System-Tags zu jeder Spalte des angegebenen Objekts.
Syntax¶
SYSTEM$CLASSIFY( '<object_name>' ,
{ '<classification_profile>' | <options> } )
Argumente¶
'object_name'
Der Name der Tabelle, der externen Tabelle, der Ansicht oder der materialisierten Ansicht, die die zu klassifizierenden Spalten enthält. Wenn in der aktuellen Sitzung weder Datenbank noch Schema verwendet werden, muss der Name vollqualifiziert sein.
Der Name muss genau so angegeben werden, wie er in der Datenbank gespeichert ist. Enthält der Name Sonderzeichen, Großbuchstaben oder Leerzeichen, muss der Name zuerst in Anführungszeichen und dann in einfache Anführungszeichen gesetzt werden.
'classification_profile'
Gibt ein Klassifizierungsprofil an, um anhand der im Profil angegebenen Kriterien zu klassifizieren.
options
Gibt ein JSON OBJECT an, das bestimmt, wie der Klassifizierungsprozess funktioniert. Eine der folgenden Optionen:
NULL
Snowflake verwendet seine Standardkonfiguration auf der Grundlage der Anzahl der Zeilen im angegebenen Objekt. System-Tags sind für keine der Spalten des angegebenen Objekts festgelegt.
{}
Ein leeres Objekt, das funktional der Angabe von
NULL
entspricht.{'sample_count': integer}
Gibt die Anzahl der Zeilen in der Stichprobe für das angegebene Objekt. Jede Zahl von
1
bis10000
, einschließlich.{'auto_tag': true}
Legt die empfohlenen Klassifizierungs-System-Tags für die Spalten des angegebenen Objekts fest, wenn der Klassifizierungsprozess abgeschlossen ist.
Wenn Sie dieses Argument verwenden, rufen Sie die gespeicherte Prozedur mit der Rolle auf, die die OWNERSHIP-Berechtigung für das Schema hat.
{'sample_count': integer, 'auto_tag': true}
Klassifizieren Sie das angegebene Objekt unter Angabe der Anzahl der Zeilen in der Stichprobe, und setzen Sie nach Abschluss des Klassifizierungsprozesses das empfohlene System-Tag auf jede Spalte des angegebenen Objekts.
Wenn Sie dieses Argument verwenden, rufen Sie die gespeicherte Prozedur mit der Rolle auf, die die OWNERSHIP-Berechtigung für das Schema hat.
{'use_all_custom_classifiers': true}
Snowflake wertet alle benutzerdefinierten Klassifizierungsinstanzen aus und empfiehlt auf Grundlage des Klassifizierungsergebnisses das Tag, das mit einer kundenspezifischen Klassifizierungsinstanz verbunden werden soll.
Bei dieser Option werden die kundenspezifischen Klassifikatoren verwendet, auf die die Rolle Zugriff hat, mit der die gespeicherte Prozedur aufgerufen wird (aktuelle Rolle, Aufruferrechte). Weitere Informationen dazu finden Sie unter Erläuterungen zu gespeicherten Prozeduren mit Aufruferrechten und Eigentümerrechten.
{'custom_classifiers': ['instance_name1' [ , 'instance_name2' ... ] ]}
Gibt die zu evaluierende Instanz der kundenspezifischen Klassifizierung als Quelle für das empfohlene Tag an, auf das die Spalte gesetzt werden soll.
Sie können mehrere Instanzen in der Liste angeben und jede Instanz durch ein Komma trennen.
Rückgabewerte¶
Gibt ein JSON-Objekt im folgenden Format zurück. Beispiel:
{
"classification_profile_config": {
"classification_profile_name": "db1.sch.sensitive_data_detection_profile"
},
"classification_result": {
"col1_name": {
"alternates": [],
"recommendation": {
"confidence": "HIGH",
"coverage": 1,
"details": [],
"privacy_category": "QUASI_IDENTIFIER",
"semantic_category": "DATE_OF_BIRTH",
"tags": [
{
"tag_applied": true,
"tag_name": "snowflake.core.semantic_category",
"tag_value": "DATE_OF_BIRTH"
},
{
"tag_applied": true,
"tag_name": "snowflake.core.privacy_category",
"tag_value": "QUASI_IDENTIFIER"
}
]
},
"valid_value_ratio": 1
}
}
}
Wobei:
classification_profile_config
Wenn die automatische Klassifizierung konfiguriert ist, enthält sie den vollqualifizierten Namen des Konfigurationsprofils, das zur Erzeugung der Klassifizierungsergebnisse verwendet wurde.
classification_result
Liefert Informationen zu jeder Spalte, die klassifiziert wurde.
alternates
Bietet Informationen zu den einzelnen Tags und Werten, die abgesehen vom empfohlenen Tag berücksichtigt werden sollen.
recommendation
Gibt Informationen zu jedem Tag und Wert als primäre Wahl auf der Grundlage des Klassifizierungsprozesses an.
Diese Werte können sowohl in den Alternativen als auch in der Empfehlung angezeigt werden:
classifier_name
Der vollqualifizierte Name der kundenspezifischen Klassifizierungsinstanz, der zum Tagging der klassifizierten Spalte verwendet wurde.
Dieses Feld wird nur angezeigt, wenn eine kundenspezifische Klassifizierungsinstanz als Quelle für das auf eine Spalte zu setzende Tag verwendet wird.
confidence
Liefert einen der folgenden Werte:
HIGH
,MEDIUM
oderLOW
. Dieser Wert gibt die relative Vertrauenswürdigkeit an, die Snowflake auf Grundlage des Spalten-Sampling-Prozesses hat, und wie die Spaltendaten mit der von Snowflake vorgenommenen Klassifizierung der Daten übereinstimmen.coverage
Gibt den Prozentsatz der Stichprobenwerte in den Zellen an, die mit den Regeln einer bestimmten Kategorie übereinstimmen.
details
Stellt die Felder und Werte bereit, die sich auf einen geografischen Tag-Wert für das SEMANTIC_CATEGORY-Tag beziehen.
privacy_category
Liefert den Wert der Datenschutzkategorie.
Mögliche Werte sind
IDENTIFIER
,QUASI-IDENTIFIER
undSENSITIVE
.semantic_category
Liefert den Wert des semantischen Kategorie-Tags.
Informationen zu den möglichen Tag-Werten finden Sie unter System-Tags und Kategorien und System-Tags und Kategorien.
tags
Liefert Informationen über die Tags, die als Ergebnis des Klassifizierungsprozesses auf die Spalte angewendet wurden.
valid_value_ratio
Liefert das Verhältnis der gültigen Werte im Stichprobenumfang. Zu den ungültigen Werten zählen NULL, leere Zeichenfolgen und Zeichenfolgen mit mehr als 256 Zeichen.
Nutzungshinweise¶
Von Snowflake bereitgestellte gespeicherte Prozeduren nutzen Aufruferrechte. Weitere Details dazu finden Sie unter Erläuterungen zu gespeicherten Prozeduren mit Aufruferrechten und Eigentümerrechten.
Wenn Sie alternative Werte für das System-Tag verwenden möchten, können Sie mit der ALTER TABLE … MODIFY COLUMN … SET TAG-Anweisung den Tag-Wert aktualisieren.
Um ein Klassifizierungssystem-Tag aus einer Spalte zu entfernen, verwenden Sie eine ALTER TABLE … MODIFY COLUMN … UNSET TAG-Anweisung.
Beispiele¶
Klassifizieren einer Tabelle:
CALL SYSTEM$CLASSIFY('hr.tables.empl_info', null);
Klassifizieren einer Tabelle und Angeben der Anzahl der Zeilen in der Stichprobe:
CALL SYSTEM$CLASSIFY('hr.tables.empl_info', {'sample_count': 1000});
Klassifizieren einer Tabelle und Setzen der System-Tags auf die Spalten:
CALL SYSTEM$CLASSIFY('hr.tables.empl_info', {'auto_tag': true});
Klassifizieren einer Tabelle, dabei Angeben der Anzahl der Zeilen in der Stichprobe und Setzen des empfohlene System-Tags auf jede Spalte der Tabelle:
CALL SYSTEM$CLASSIFY('hr.tables.empl_info', {'sample_count': 1000, 'auto_tag': true});
Klassifizieren einer Tabelle auf der Grundlage der im Konfigurationsprofil my_config_profile
angegebenen Kriterien:
CALL SYSTEM$CLASSIFY('hr.tables.empl_info, 'my_config_profile');