Partilhar via


Solicitar política de classificação

Aplica-se a: ✅Microsoft FabricAzure Data Explorer

O processo de classificação atribui solicitações de entrada a um grupo de carga de trabalho, com base nas características das solicitações. Adapte a lógica de classificação escrevendo uma função definida pelo usuário, como parte de uma política de classificação de solicitação no nível de cluster.

O processo de classificação atribui solicitações de entrada a um grupo de carga de trabalho, com base nas características das solicitações. Adapte a lógica de classificação escrevendo uma função definida pelo usuário, como parte de uma política de classificação de solicitação no nível da Eventhouse.

Na ausência de uma política de classificação de solicitações habilitada, todas as solicitações são classificadas no grupo de carga de trabalho default.

Objeto político

A política tem as seguintes propriedades:

  • IsEnabled: bool - Indica se a política está habilitada ou não.
  • ClassificationFunction: string - O corpo da função a utilizar para classificar os pedidos.

Função de classificação

A classificação das solicitações recebidas é baseada em uma função definida pelo usuário. Os resultados da função são usados para classificar solicitações em grupos de carga de trabalho existentes.

A função definida pelo usuário tem as seguintes características e comportamentos:

  • Se IsEnabled estiver definido como true na política, a função definida pelo usuário será avaliada para cada nova solicitação.
  • A função definida pelo usuário fornece contexto de grupo de carga de trabalho para a solicitação durante todo o tempo de vida da solicitação.
  • A solicitação recebe o contexto default grupo de carga de trabalho nas seguintes situações:
    • A função definida pelo usuário retorna uma cadeia de caracteres vazia, defaultou o nome de um grupo de carga de trabalho inexistente.
    • A função falha por qualquer motivo.
  • Apenas uma função definida pelo usuário pode ser designada a qualquer momento.

Importante

A função de classificação de solicitação é avaliada para cada solicitação executada no cluster. Recomenda-se mantê-lo o mais leve possível e não incluir cálculos pesados nele. Por exemplo, evite ter que avaliar muitas expressões regulares como parte de sua execução.

Importante

A função de classificação de solicitação é avaliada para cada solicitação executada na Eventhouse. Recomenda-se mantê-lo o mais leve possível e não incluir cálculos pesados nele. Por exemplo, evite ter que avaliar muitas expressões regulares como parte de sua execução.

Requisitos e limitações

Uma função de classificação:

  • Deve retornar um único valor escalar do tipo string. Esse é o nome do grupo de carga de trabalho ao qual atribuir a solicitação.
  • Não deve fazer referência a nenhuma outra entidade (banco de dados, tabela ou função).
    • Especificamente - ele pode não usar as seguintes funções e operadores:
      • cluster()
      • database()
      • table()
      • external_table()
      • externaldata
  • Tem acesso a um símbolo de dynamic especial, um saco de propriedade chamado request_properties, com as seguintes propriedades:
Designação Tipo Descrição Exemplos
current_database string O nome do banco de dados de solicitação. "MyDatabase"
current_application string O nome do aplicativo que enviou a solicitação. "Kusto.Explorer", "KusWeb"
current_principal string O nome totalmente qualificado da identidade principal que enviou a solicitação. "aaduser=1793eb1f-4a18-418c-be4c-728e310c86d3;83af1c0e-8c6d-4f09-b249-c67a2e8fda65"
query_consistency string Para consultas: a consistência da consulta - strongconsistency ou weakconsistency. Esta propriedade é definida pelo chamador como parte das propriedades de solicitação de da solicitação: A propriedade de solicitação do cliente a ser definida é: queryconsistency. "strongconsistency", "weakconsistency"
request_description string Texto personalizado que o autor da solicitação pode incluir. O texto é definido pelo chamador como parte das propriedades de solicitação Client da solicitação: A propriedade de solicitação do cliente a ser definida é: request_description. "Some custom description"; preenchido automaticamente para painéis: "dashboard:{dashboard_id};version:{version};sourceId:{source_id};sourceType:{tile/parameter}"
request_text string O texto ofuscado do pedido. Os literais de cadeia de caracteres ofuscados incluídos no texto da consulta são substituídos por vários caracteres de estrela (*). Nota: apenas os 65.536 caracteres principais do texto da solicitação são avaliados. ".show version"
request_type string O tipo do pedido - Command ou Query. "Command", "Query"

Observação

Definir as opções de solicitação usando instruções set não permite a classificação por elas. As opções precisam ser definidas no objeto de propriedades de solicitação do cliente.

Exemplos

Um único grupo de carga de trabalho

iff(request_properties.current_application == "Kusto.Explorer" and request_properties.request_type == "Query",
    "Ad-hoc queries",
    "default")

Vários grupos de carga de trabalho

case(current_principal_is_member_of('aadgroup=somesecuritygroup@contoso.com'), "First workload group",
     request_properties.current_database == "MyDatabase" and request_properties.current_principal has 'aadapp=', "Second workload group",
     request_properties.current_application == "Kusto.Explorer" and request_properties.request_type == "Query", "Third workload group",
     request_properties.current_application == "Kusto.Explorer", "Third workload group",
     request_properties.current_application == "KustoQueryRunner", "Fourth workload group",
     request_properties.request_description == "this is a test", "Fifth workload group",
     hourofday(now()) between (17 .. 23), "Sixth workload group",
     "default")

Comandos de gestão

Use os seguintes comandos de gerenciamento para gerenciar a política de classificação de solicitações de um cluster.

Comando Descrição
.alter cluster request classification policy Altera a política de classificação de solicitações do cluster
.alter-merge cluster request classification policy Habilita ou desabilita a política de classificação de solicitações de um cluster
.delete cluster request classification policy Exclui a política de classificação de solicitações do cluster
.show cluster request classification policy Mostra a política de classificação de solicitações do cluster

Use os seguintes comandos de gerenciamento para gerenciar a política de classificação de solicitações de um Eventhouse.

Comando Descrição
.alter cluster request classification policy Altera a política de classificação de solicitações da Eventhouse
.alter-merge cluster request classification policy Habilita ou desabilita a política de classificação de solicitações de um Eventhouse
.delete cluster request classification policy Exclui a política de classificação de solicitações da Eventhouse
.show cluster request classification policy Mostra a política de classificação de solicitações da Eventhouse