SYSTEM$CLASSIFY_SCHEMA¶
Prepara as tabelas no esquema especificado a serem classificadas com a opção de especificar o número de linhas a serem amostradas em cada tabela e atribuir a tag do sistema de classificação de dados recomendada a cada coluna nas tabelas armazenadas no esquema especificado.
Depois que o procedimento armazenado concluir sua execução, você deverá terminar de classificar as tabelas usando SQL ou Snowsight conforme mostrado em Uso da classificação de dados.
Sintaxe¶
CALL SYSTEM$CLASSIFY_SCHEMA( '<object_name>' , <arg> )
Argumentos¶
object_name
O nome do esquema que contém as tabelas a serem classificadas. Se um banco de dados e esquema não estiverem em uso na sessão atual, o nome deve ser totalmente qualificado.
O nome deve ser especificado exatamente como está armazenado no banco de dados. Se o nome contiver caracteres especiais, letras maiúsculas ou espaços em branco, o nome deve ser incluído primeiro em aspas duplas e depois em aspas simples.
arg
Especifica um argumento para determinar como funciona o processo de classificação. Um dos seguintes:
NULL
Snowflake usa sua configuração padrão com base no número de linhas do objeto especificado. As tags do sistema não são definidas em nenhuma coluna do objeto especificado.
{}
Uma lista vazia, que é funcionalmente equivalente à especificação de
NULL
.{'sample_count': integer}
Especifica o número de linhas a serem amostradas no objeto especificado. Qualquer número de
1
a10000
, inclusive.{'auto_tag': true}
Define as tags do sistema de classificação recomendadas nas colunas do objeto especificado quando o processo de classificação for concluído.
Ao usar esse argumento, chame o procedimento armazenado com a função que possui o privilégio OWNERSHIP no esquema.
{'sample_count': integer, 'auto_tag': true}
Classifique o objeto especificado enquanto especifica o número de linhas para amostra e defina a tag do sistema recomendada em cada coluna do objeto especificado quando o processo de classificação for concluído.
Ao usar esse argumento, chame o procedimento armazenado com a função que possui o privilégio OWNERSHIP no esquema.
{'use_all_custom_classifiers': true}
Snowflake avalia todas as instâncias de classificação personalizada e recomenda a tag associada a uma instância de classificação personalizada com base no resultado da classificação.
Esta opção utiliza os classificadores personalizados acessíveis à função em uso que chama o procedimento armazenado (função atual, direitos do chamador). Para obter mais detalhes, consulte Understanding Caller’s Rights and Owner’s Rights Stored Procedures.
{'custom_classifiers': ['instance_name1' [ , 'instance_name2' ... ] ]}
Especifica a instância de classificação personalizada a ser avaliada como origem da tag recomendada a ser definida na coluna.
Você pode especificar diversas instâncias na lista e separar cada instância com uma vírgula.
Retornos¶
O procedimento armazenado retorna um objeto JSON no formato a seguir. Por exemplo:
{
"failed": [
{
"message": "Insufficient privileges.",
"table_name": "t4"
}
],
"succeeded": [
{
"table_name": "t1"
},
{
"table_name": "t2"
},
{
"table_name": "t3"
}
]
}
Onde:
failed
Especifica uma mensagem que fornece um motivo pelo qual a tabela não foi planejada para ser classificada.
succeeded
Especifica cada tabela que foi preparada para classificação de dados.
Notas de uso¶
O nome do esquema especificado pode conter até 1.000 objetos de tabela. Se o esquema contiver mais de 1.000 objetos de tabela, o Snowflake retornará uma mensagem de erro.
Os procedimentos armazenados definidos globalmente utilizam os direitos de quem chama. Para obter mais detalhes, consulte Understanding Caller’s Rights and Owner’s Rights Stored Procedures.
Se você quiser aplicar valores alternativos de tag do sistema, use uma instrução ALTER TABLE … MODIFY COLUMN … SET TAG para atualizar o valor da tag.
Para remover uma tag do sistema de classificação de uma coluna, use uma instrução ALTER TABLE … MODIFY COLUMN … UNSET TAG.
Exemplos¶
Prepare a classificação das tabelas no esquema:
CALL SYSTEM$CLASSIFY_SCHEMA('hr.tables', null);
Prepare a classificação das tabelas no esquema e especifique o número de linhas para amostragem:
CALL SYSTEM$CLASSIFY_SCHEMA('hr.tables.empl_info', {'sample_count': 1000});
Prepare a classificação das tabelas no esquema e defina as tags do sistema para as colunas:
CALL SYSTEM$CLASSIFY_SCHEMA('hr.tables.empl_info', {'auto_tag': true});
Prepare a classificação das tabelas no esquema, especifique o número de linhas para amostragem e defina a tag de sistema recomendada para cada coluna da tabela:
CALL SYSTEM$CLASSIFY_SCHEMA('hr.tables.empl_info', {'sample_count': 1000, 'auto_tag': true});