Udostępnij za pośrednictwem


Zasady klasyfikacji żądań

Dotyczy: ✅Microsoft FabricAzure Data Explorer

Proces klasyfikacji przypisuje żądania przychodzące do grupy obciążeń na podstawie cech żądań. Dostosuj logikę klasyfikacji, zapisując funkcję zdefiniowaną przez użytkownika w ramach zasad klasyfikacji żądań na poziomie klastra.

Proces klasyfikacji przypisuje żądania przychodzące do grupy obciążeń na podstawie cech żądań. Dostosuj logikę klasyfikacji, zapisując funkcję zdefiniowaną przez użytkownika w ramach zasad klasyfikacji żądań na poziomie usługi Eventhouse.

W przypadku braku zasad klasyfikacji żądań z włączoną obsługą wszystkie żądania są klasyfikowane w grupie obciążeń default.

Obiekt zasad

Zasady mają następujące właściwości:

  • IsEnabled: bool — wskazuje, czy zasady są włączone, czy nie.
  • ClassificationFunction: string — treść funkcji używanej do klasyfikowania żądań.

Funkcja klasyfikacji

Klasyfikacja żądań przychodzących jest oparta na funkcji zdefiniowanej przez użytkownika. Wyniki funkcji służą do klasyfikowania żądań do istniejących grup obciążeń.

Funkcja zdefiniowana przez użytkownika ma następujące cechy i zachowania:

  • Jeśli IsEnabled jest ustawiona na true w zasadach, funkcja zdefiniowana przez użytkownika jest oceniana dla każdego nowego żądania.
  • Funkcja zdefiniowana przez użytkownika udostępnia kontekst grupy obciążeń dla żądania dla pełnego okresu istnienia żądania.
  • Żądanie otrzymuje kontekst grupy obciążeń default w następujących sytuacjach:
    • Funkcja zdefiniowana przez użytkownika zwraca pusty ciąg, defaultlub nazwę nieistniejących grup obciążeń.
    • Funkcja kończy się niepowodzeniem z jakiegokolwiek powodu.
  • W danym momencie można wyznaczyć tylko jedną funkcję zdefiniowaną przez użytkownika.

Ważny

Funkcja klasyfikacji żądań jest oceniana dla każdego żądania uruchomionego w klastrze. Zaleca się, aby zachować je tak lekkie, jak to możliwe, i nie uwzględniać w nim dużych obliczeń. Na przykład unikaj konieczności oceny wielu wyrażeń regularnych w ramach wykonywania.

Ważny

Funkcja klasyfikacji żądań jest oceniana dla każdego żądania uruchomionego w usłudze Eventhouse. Zaleca się, aby zachować je tak lekkie, jak to możliwe, i nie uwzględniać w nim dużych obliczeń. Na przykład unikaj konieczności oceny wielu wyrażeń regularnych w ramach wykonywania.

Wymagania i ograniczenia

Funkcja klasyfikacji:

  • Musi zwrócić pojedynczą wartość skalarną typu string. Jest to nazwa grupy obciążeń, do którego ma zostać przypisane żądanie.
  • Nie może odwoływać się do żadnej innej jednostki (bazy danych, tabeli lub funkcji).
    • W szczególności — może nie używać następujących funkcji i operatorów:
      • cluster()
      • database()
      • table()
      • external_table()
      • externaldata
  • Ma dostęp do specjalnego symbolu dynamic, torby właściwości o nazwie request_properties, z następującymi właściwościami:
Nazwa Typ Opis Przykłady
current_database string Nazwa bazy danych żądań. "MyDatabase"
current_application string Nazwa aplikacji, która wysłała żądanie. "Kusto.Explorer", "KusWeb"
current_principal string W pełni kwalifikowana nazwa głównej tożsamości, która wysłała żądanie. "aaduser=1793eb1f-4a18-418c-be4c-728e310c86d3;83af1c0e-8c6d-4f09-b249-c67a2e8fda65"
query_consistency string W przypadku zapytań: spójność zapytania — strongconsistency lub weakconsistency. Ta właściwość jest ustawiana przez obiekt wywołujący w ramach właściwości żądania żądania: właściwość żądania klienta do ustawienia to: queryconsistency. "strongconsistency", "weakconsistency"
request_description string Tekst niestandardowy, który może zawierać autor żądania. Tekst jest ustawiany przez obiekt wywołujący w ramach właściwości żądania klienta: właściwość żądania klienta do ustawienia to: request_description. "Some custom description"; automatycznie wypełniane dla pulpitów nawigacyjnych: "dashboard:{dashboard_id};version:{version};sourceId:{source_id};sourceType:{tile/parameter}"
request_text string Zaciemniony tekst żądania. Zaciemnione literały ciągu zawarte w tekście zapytania są zastępowane wieloma znakami gwiazdki (*). Uwaga: oceniane są tylko wiodące 65 536 znaków tekstu żądania. ".show version"
request_type string Typ żądania — Command lub Query. "Command", "Query"

Nuta

Ustawienie opcji żądania przy użyciu instrukcji set nie zezwala na ich klasyfikację. Opcje należy ustawić w obiekcie właściwości żądania klienta.

Przykłady

Pojedyncza grupa obciążeń

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

Wiele grup obciążeń

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

Polecenia zarządzania

Użyj następujących poleceń zarządzania, aby zarządzać zasadami klasyfikacji żądań klastra.

Polecenie Opis
.alter cluster request classification policy Zmienianie zasad klasyfikacji żądań klastra
.alter-merge cluster request classification policy Włącza lub wyłącza zasady klasyfikacji żądań klastra
.delete cluster request classification policy Usuwa zasady klasyfikacji żądań klastra
.show cluster request classification policy Pokazuje zasady klasyfikacji żądań klastra

Użyj następujących poleceń zarządzania, aby zarządzać zasadami klasyfikacji żądań usługi Eventhouse.

Polecenie Opis
.alter cluster request classification policy Zmienia zasady klasyfikacji żądań usługi Eventhouse
.alter-merge cluster request classification policy Włącza lub wyłącza zasady klasyfikacji żądań usługi Eventhouse
.delete cluster request classification policy Usuwa zasady klasyfikacji żądań usługi Eventhouse
.show cluster request classification policy Pokazuje zasady klasyfikacji żądań usługi Eventhouse