Função EXTRACT_SEMANTIC_CATEGORIES: valores de tags internacionais

Atenção

Essa mudança de comportamento está no pacote 2023_05.

Para saber o status atual do pacote, consulte Histórico do pacote.

A função EXTRACT_SEMANTIC_CATEGORIES se comporta da seguinte maneira:

Anteriormente:

A saída da função assume o seguinte formato:

{
    "<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
Atualmente:

A saída da função mudará em sua formatação e incluirá suporte para valores de tag SEMANTIC_CATEGORY pertencentes à Austrália, Canadá, Reino Unido e Estados Unidos. Para oferecer suporte a esses países, os valores das tags correspondem a determinados grupos de categorias principais. Uma categoria principal contém informações sobre o resultado da classificação, incluindo se a coluna consiste principalmente em valores de um país ou de outro.

As alterações de formatação são:

  • Remova os campos extra_info e probability.

  • Mova o campo alternates para uma posição diferente na saída.

  • Adicione estes novos campos:

    • valid_value_ratio, que especifica a proporção de valores válidos no tamanho da amostra. Valores inválidos incluem NULL, uma cadeia de caracteres vazia e uma cadeia de caracteres com mais de 256 caracteres.

    • recommendation, que inclui informações sobre cada tag e valor.

    • confidence, onde os valores possíveis são HIGH, MEDIUM ou LOW.

    • coverage, que indica a porcentagem de valores de células de amostra que correspondem às regras de uma categoria específica.

    • details, que contém campos e valores que podem especificar um valor de tag geográfica para a tag SEMANTIC_CATEGORY.

Por exemplo:

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

A tabela a seguir resume o relacionamento entre as tags de classificação, novos grupos de categorias e membros do grupo e países com suporte. Os códigos de país são baseados no padrão ISO-3166-1alfa-2. Outras categorias semânticas, como EMAIL e GENDER, não são afetadas.

Valores de tag PRIVACY_CATEGORY

Valores de tag SEMANTIC_CATEGORY (grupo principal)

Membros do grupo

Código do país

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

O engenheiro de dados pode usar os valores de tag pendentes especificando manualmente o valor da tag na instrução ALTER TABLE ou ALTER VIEW. Como alternativa, o engenheiro de dados pode chamar o procedimento armazenado ASSOCIATE_SEMANTIC_CATEGORY_TAGS para definir a tag.

Por exemplo, use uma instrução ALTER TABLE para definir manualmente o valor da tag PASSPORT na coluna da tabela PASSPORT.

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

There are no changes to the overall classification process or the steps to classify a table, all tables in a schema, or all tables in a database.

Dica

Se você passar a função EXTRACT_SEMANTIC_CATEGORIES como um argumento para o procedimento armazenado ASSOCIATE_SEMANTIC_CATEGORY_TAGS, verifique novamente qualquer tratamento personalizado que você possa ter configurado para garantir que seus fluxos de trabalho não sejam interrompidos devido a alterações de formatação pendentes.

Ref: 1110