Fonction EXTRACT_SEMANTIC_CATEGORIES : valeurs des balises internationales

Attention

Ce changement de comportement est présent dans le bundle 2023_05.

Pour connaître le statut actuel du bundle, reportez-vous à Historique du bundle.

La fonction EXTRACT_SEMANTIC_CATEGORIES se comporte comme suit :

Précédemment:

La sortie de la fonction prend la forme suivante :

{
    "<col1_name>": {
    "extra_info" : {
        "alternates" : [<semantic_categories>],
        "probability" : "<number>"
    },
    "privacy_category" : "<value>",
    "semantic_category" : "<value>"
    },
...
...
    "<colN_name>": {
    "extra_info" : {
        "alternates" : [<semantic_categories>],
        "probability" : "<number>"
    },
    "privacy_category" : "<value>",
    "semantic_category" : "<value>"
    }
}
Copy

Les valeurs possibles pour la balise SNOWFLAKE.CORE.SEMANTIC_CATEGORY sont définies dans cette section, qui ne spécifie pas les valeurs de la balise SEMANTIC_CATEGORY pour les pays autres que les États-Unis d’Amérique (c’est-à-dire US_).

Actuellement:

Le format de la sortie de la fonction sera modifié et la sortie inclura la prise en charge des valeurs de la balise SEMANTIC_CATEGORY relatives à l’Australie, au Canada, au Royaume-Uni et aux États-Unis. Pour prendre en charge ces pays, les valeurs des balises correspondent à certains groupes de catégories de parents. Une catégorie de parents contient des informations sur le résultat de la classification, notamment si la colonne est constituée de valeurs provenant en grande partie d’un pays ou d’un autre.

Les changements de format sont les suivants :

  • Suppression des champs extra_info et probability.

  • Déplacement du champ alternates à un autre endroit de la sortie.

  • Ajout des nouveaux champs suivants :

    • valid_value_ratio, qui spécifie 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.

    • recommendation, qui contient des informations sur chaque balise et chaque valeur.

    • confidence, où les valeurs possibles sont HIGH, MEDIUM, ou LOW.

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

    • details, qui contient des champs et des valeurs permettant de spécifier une valeur de balise géographique pour la balise SEMANTIC_CATEGORY.

Par exemple :

{
  "valid_value_ratio": 1.0,
  "recommendation": {
    "semantic_category": "PASSPORT",
    "privacy_category": "IDENTIFIER",
    "confidence": "HIGH",
    "coverage": 0.7,
    "details": [
      {
        "semantic_category": "US_PASSPORT",
        "coverage": 0.7
      },
      {
        "semantic_category": "CA_PASSPORT",
        "coverage": 0.1
      }
    ]
  },
  "alternates": [
    {
      "semantic_category": "NATIONAL_IDENTIFIER",
      "privacy_category": "IDENTIFIER",
      "confidence": "LOW",
      "coverage": 0.3,
      "details": [
        {
          "semantic_category": "US_SSN",
          "privacy_category": "IDENTIFIER",
          "coverage": 0.3
        }
      ]
    }
  ]
}
Copy

Le tableau suivant résume la relation entre les balises de classification, les nouveaux groupes de catégories et membres de groupes, et les pays pris en charge. Les codes de pays sont basés sur la norme ISO-3166-1 alpha-2. Les autres catégories sémantiques, telles que EMAIL et GENDER, ne sont pas concernées.

Valeurs balise PRIVACY_CATEGORY

Valeurs balise SEMANTIC_CATEGORY (groupe de parents)

Membres du groupe

Code de pays

IDENTIFIER

BANK_ACCOUNT

CA_BANK_ACCOUNT . US_BANK_ACCOUNT . IBAN

CA . US

ORGANIZATION_IDENTIFIER

AU_BUSINESS_NUMBER . AU_COMPANY_NUMBER

AU

DRIVERS_LICENSE

AU_DRIVERS_LICENSE . CA_DRIVERS_LICENSE . US_DRIVERS_LICENSE

AU . CA . US

MEDICARE_NUMBER

AU_MEDICARE_NUMBER

AU

PASSPORT

AU_PASSPORT . CA_PASSPORT . US_PASSPORT

AU . CA . US

PHONE_NUMBER

AU_PHONE_NUMBER . CA_PHONE_NUMBER . UK_PHONE_NUMBER . US_PHONE_NUMBER

AU . CA . GB . US

STREET_ADDRESS

CA_STREET_ADDRESS . US_STREET_ADDRESS

CA . US

TAX_IDENTIFIER

AU_TAX_NUMBER

AU

NATIONAL_IDENTIFIER

CA_SOCIAL_INSURANCE_NUMBER . UK_NATIONAL_INSURANCE_NUMBER . US_SSN

CA . GB . US

QUASI_IDENTIFIER

CITY

US_CITY . CA_CITY .

US . CA .

POSTAL_CODE

AU_POSTAL_CODE . CA_POSTAL_CODE . UK_POSTAL_CODE . US_POSTAL_CODE

AU . CA . GB . US

ADMINISTRATIVE_AREA_1

CA_PROVINCE_OR_TERRITORY . US_STATE_OR_TERRITORY

CA . US

ADMINISTRATIVE_AREA_2

US_COUNTY

US

L’ingénieur des données peut utiliser les valeurs des balises en attente en spécifiant manuellement la valeur de la balise dans l’instruction ALTER TABLE ou ALTER VIEW. L’ingénieur des données peut également appeler la procédure stockée ASSOCIATE_SEMANTIC_CATEGORY_TAGS pour définir la balise.

Par exemple, utilisez une instruction ALTER TABLE pour définir manuellement la valeur de la balise PASSPORT sur la colonne de table PASSPORT.

ALTER TABLE mydb.myschema.mytable
  MODIFY COLUMN passport
  SET TAG SNOWFLAKE.CORE.SEMANTIC_CATEGORY = 'PASSPORT';
Copy

Aucune modification n’est apportée au processus global de classification ou aux étapes pour classer une table, toutes les tables d’un schéma ou toutes les tables d’une base de données.

Astuce

Si vous transmettez la fonction EXTRACT_SEMANTIC_CATEGORIES comme argument à la procédure stockée ASSOCIATE_SEMANTIC_CATEGORY_TAGS, assurez-vous de revérifier tout traitement personnalisé que vous pourriez avoir configuré pour garantir que vos workflows ne s’interrompent pas en raison des changements de format en attente.

Réf : 1110