SYSTEM$CLASSIFY

Classifie l’objet spécifié avec la possibilité de spécifier le nombre de lignes à échantillonner et d’attribuer la balise recommandée du système pour la classification des données sensibles <label-classification_system_tags> à chaque colonne de l’objet spécifié.

Syntaxe

SYSTEM$CLASSIFY( '<object_name>' ,
  { '<classification_profile>' | <options> } )
Copy

Arguments

'object_name'

Le nom de la table, de la table externe, de la vue ou de la vue matérialisée contenant les colonnes à classifier. Si une base de données et un schéma ne sont pas utilisés dans la session en cours, le nom doit être entièrement qualifié.

Le nom doit être spécifié exactement comme il est stocké dans la base de données. Si le nom contient des caractères spéciaux, des majuscules ou des espaces vides, il doit être placé d’abord entre guillemets doubles, puis entre guillemets simples.

'classification_profile'

Spécifie un profil de classification afin d’effectuer une classification sur la base des critères spécifiés dans le profil.

options

Spécifie un OBJECT JSON qui détermine comment fonctionne le processus de classification. Un des éléments suivants :

NULL

Snowflake utilise sa configuration par défaut en fonction du nombre de lignes dans l’objet spécifié. Les balises système ne sont définies sur aucune colonne de l’objet spécifié.

{}

Un objet vide, qui équivaut fonctionnellement à spécifier NULL.

{'sample_count': integer}

Spécifie le nombre de lignes à échantillonner dans l’objet spécifié. Tout nombre compris entre 1 et 10000 inclus.

{'auto_tag': true}

Définit les balises du système de classification recommandé sur les colonnes de l’objet spécifié lorsque le processus de classification est terminé.

Lorsque vous utilisez cet argument, appelez la procédure stockée avec le rôle qui dispose du privilège OWNERSHIP sur le schéma.

{'sample_count': integer, 'auto_tag': true}

Classifiez l’objet spécifié en spécifiant le nombre de lignes à échantillonner et définissez la balise système recommandée sur chaque colonne de l’objet spécifié lorsque le processus de classification est terminé.

Lorsque vous utilisez cet argument, appelez la procédure stockée avec le rôle qui dispose du privilège OWNERSHIP sur le schéma.

{'use_all_custom_classifiers': true}

Snowflake évalue toutes les instances de classification personnalisées et recommande la balise associée à une instance de classification personnalisée en fonction du résultat de la classification.

Cette option utilise les classificateurs personnalisés accessibles au rôle utilisé qui appelle la procédure stockée (rôle actuel, droits de l’appelant). Pour plus d’informations, voir Présentation des procédures stockées des droits de l’appelant et des droits du propriétaire.

{'custom_classifiers': ['instance_name1' [ , 'instance_name2' ... ] ]}

Spécifie l’instance de classification personnalisée à évaluer comme source pour la balise recommandée à définir sur la colonne.

Vous pouvez spécifier plusieurs instances dans la liste et séparer chaque instance par une virgule.

Renvoie

Renvoie un objet JSON dans le format suivant. Par exemple :

{
  "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
    }
  }
}
Copy

Où :

classification_profile_config

Si la classification automatique est configurée, contient le nom complet du profil de configuration qui a été utilisé pour générer les résultats de la classification.

classification_result

Fournit des détails sur chaque colonne qui a été classée.

alternates

Fournit des informations sur chaque balise et valeur à prendre en compte autre que la balise recommandée.

recommendation

Fournit des informations sur chaque balise et valeur en tant que premier choix basé sur le processus de classification.

Ces valeurs peuvent apparaître à la fois dans les alternatives et dans la recommandation :

classifier_name

Nom complet de l’instance de classification personnalisée utilisée pour baliser la colonne classifiée.

Ce champ n’apparaît que lorsqu’une instance de classification personnalisée est utilisée comme source de la balise à définir sur une colonne.

confidence

Fournit l’une des valeurs suivantes : HIGH, MEDIUM ou LOW. Cette valeur indique la confiance relative que Snowflake a sur la base du processus d’échantillonnage de la colonne et la façon dont les données de la colonne s’alignent sur la manière dont Snowflake classifie les données.

coverage

Fournit le pourcentage de valeurs de cellules échantillonnées qui correspondent aux règles d’une catégorie particulière.

details

Fournit les champs et les valeurs qui font référence à une valeur de balise géographique pour la balise SEMANTIC_CATEGORY.

privacy_category

Fournit la valeur de la balise de catégorie de confidentialité.

Les valeurs possibles sont IDENTIFIER, QUASI-IDENTIFIER et SENSITIVE.

semantic_category

Fournit la valeur de la balise de la catégorie sémantique.

Pour connaître les valeurs possibles des balises, voir Balises système et catégories et Balises système et catégories.

tags

Fournit des informations sur les balises qui ont été appliquées à la colonne à la suite du processus de classification.

valid_value_ratio

Fournit le ratio des valeurs valides dans la taille de l’échantillon. Les valeurs non valides incluent NULL, une chaîne vide et une chaîne de plus de 256 caractères.

Notes sur l’utilisation

Exemples

Classifier une table :

CALL SYSTEM$CLASSIFY('hr.tables.empl_info', null);
Copy

Classifier une table et spécifiez le nombre de lignes à échantillonner :

CALL SYSTEM$CLASSIFY('hr.tables.empl_info', {'sample_count': 1000});
Copy

Classifier une table et attribuez des balises système aux colonnes :

CALL SYSTEM$CLASSIFY('hr.tables.empl_info', {'auto_tag': true});
Copy

Classifier une table, indiquer le nombre de lignes à échantillonner et attribuer la balise système recommandée à chaque colonne de la table :

CALL SYSTEM$CLASSIFY('hr.tables.empl_info', {'sample_count': 1000, 'auto_tag': true});
Copy

Classer une table en fonction des critères spécifiés dans le profil de configuration my_config_profile :

CALL SYSTEM$CLASSIFY('hr.tables.empl_info, 'my_config_profile');
Copy