EXTRACT_SEMANTIC_CATEGORIES 函数:国际标签值¶
EXTRACT_SEMANTIC_CATEGORIES 函数的行为如下:
- 之前:
函数的输出采用以下形式:
{ "<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>" } }
本部分 定义 SNOWFLAKE.CORE.SEMANTIC_CATEGORY 标签的可能值,不指定美国以外的国家/地区的 SEMANTIC_CATEGORY 标签值(即
US_)。- 现在:
该函数的输出格式将有所变更,并且输出将包括对与澳大利亚、加拿大、英国和美国相关的 SEMANTIC_CATEGORY 标签值的支持。为了支持这些国家/地区,标签值对应于某些 父类别组。父类别包含有关分类结果的信息,其中包括列是否主要由某个国家/地区的值组成。
格式变更如下:
移除
extra_info和probability字段。将
alternates字段移动到输出中的其他位置。添加以下新字段:
valid_value_ratio指定样本数量中有效值的比率。无效值包括 NULL、空字符串和字符数超过 256 个的字符串。recommendation包括有关每个标签和值的信息。confidence的可能值为HIGH、MEDIUM或LOW。coverage指示与特定类别的规则匹配的采样单元格值的百分比。details包含可以指定 SEMANTIC_CATEGORY 标签的地理标签值的字段和值。
例如:
{ "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 } ] } ] }
下表汇总了分类标签、新类别组和组成员以及所支持的国家/地区之间的关系。国家/地区代码基于 ISO-3166-1 alpha-2 (link removed) 标准。其他语义类别(如 EMAIL 和 GENDER)不受影响。
PRIVACY_CATEGORY 标签值
SEMANTIC_CATEGORY 标签值(父组)
组成员
国家/地区代码
IDENTIFIERBANK_ACCOUNTCA_BANK_ACCOUNT.US_BANK_ACCOUNT.IBANCA . US
ORGANIZATION_IDENTIFIERAU_BUSINESS_NUMBER.AU_COMPANY_NUMBERAU
DRIVERS_LICENSEAU_DRIVERS_LICENSE.CA_DRIVERS_LICENSE.US_DRIVERS_LICENSEAU . CA . US
MEDICARE_NUMBERAU_MEDICARE_NUMBERAU
PASSPORTAU_PASSPORT.CA_PASSPORT.US_PASSPORTAU . CA . US
PHONE_NUMBERAU_PHONE_NUMBER.CA_PHONE_NUMBER.UK_PHONE_NUMBER.US_PHONE_NUMBERAU . CA . GB . US
STREET_ADDRESSCA_STREET_ADDRESS.US_STREET_ADDRESSCA . US
TAX_IDENTIFIERAU_TAX_NUMBERAU
NATIONAL_IDENTIFIERCA_SOCIAL_INSURANCE_NUMBER.UK_NATIONAL_INSURANCE_NUMBER.US_SSNCA . GB . US
QUASI_IDENTIFIERCITYUS_CITY.CA_CITY.US . CA .
POSTAL_CODEAU_POSTAL_CODE.CA_POSTAL_CODE.UK_POSTAL_CODE.US_POSTAL_CODEAU . CA . GB . US
ADMINISTRATIVE_AREA_1CA_PROVINCE_OR_TERRITORY.US_STATE_OR_TERRITORYCA . US
ADMINISTRATIVE_AREA_2US_COUNTYUS
数据工程师可以通过在 ALTER TABLE 或 ALTER VIEW 语句中手动指定标签值来使用待处理的标签值。或者,数据工程师可以调用 ASSOCIATE_SEMANTIC_CATEGORY_TAGS 存储过程来设置标签。
例如,使用 ALTER TABLE 语句手动设置 PASSPORT 表列的
PASSPORT标签值。ALTER TABLE mydb.myschema.mytable MODIFY COLUMN passport SET TAG SNOWFLAKE.CORE.SEMANTIC_CATEGORY = 'PASSPORT';
对表、架构中的所有表或数据库中的所有表进行分类的整体 分类过程或 步骤 没有变更。
小技巧
如果将 EXTRACT_SEMANTIC_CATEGORIES 函数作为实参传递给 ASSOCIATE_SEMANTIC_CATEGORY_TAGS 存储过程,请务必仔细检查可能已配置的任何自定义处理,以确保工作流不会因待处理的格式更改而中断。
参考:1110