Grundlegende Struktur einer Kusto-Abfrage

Abgeschlossen

Organisationen in allen Branchen haben es mit einem konstanten Datenstrom zu tun und müssen diese Daten in aussagekräftige, umsetzbare Erkenntnisse umwandeln. In diesem Szenario für meteorologische Daten verfügen Sie über ein Dataset mit Daten zu Stürmen in den USA. In dieser Lerneinheit erfahren Sie mehr über die grundlegende Struktur der Kusto-Abfragesprache (KQL), damit Sie sie zum Analysieren und Interpretieren dieses Datasets verwenden können.

Was ist eine Kusto-Abfrage?

Eine Kusto-Abfrage ist eine schreibgeschützte Anforderung zur Verarbeitung von Daten und zur Rückgabe der Ergebnisse. Die Anforderung wird in Klartext formuliert, der leicht zu lesen, zu erstellen und zu automatisieren ist. Eine Kusto-Abfrage verfügt über mindestens eine Abfrageanweisung und gibt Daten in einem Tabellen- oder Diagrammformat zurück.

Tabellarische Abfrageanweisungen enthalten null oder mehr Operatoren. Jeder Operator gibt ausgehend von einer tabellarischen Eingabe eine tabellarische Ausgabe zurück. Operatorsequenzen werden mit einer Pipe (|) gebildet. Daten werden per Pipe von einem Operator an den nächsten übergeben. Die Daten werden bei jedem Schritt gefiltert oder bearbeitet und dann in den folgenden Schritt eingespeist.

Sie können sich den Vorgang wie einen Trichter vorstellen, wobei der Ausgangspunkt eine vollständige Datentabelle ist. Jedes Mal, wenn die Daten einen anderen Operator durchlaufen, werden sie gefiltert, neu angeordnet oder zusammengefasst. Da die Weitergabe von Informationen per Pipe von einem Operator an einen anderen sequenziell ist, ist die Reihenfolge der Abfrageoperatoren wichtig. Am Ende des Trichters erhalten Sie eine optimierte Ausgabe.

Diese Operatoren sind KQL-spezifisch, weisen jedoch häufig Parallelen zu SQL oder anderen Sprachen auf.

Sehen wir uns eine Beispielabfrage an:

StormEvents 
| where StartTime between (datetime(2007-11-01) .. datetime(2007-12-01))
| where State == "FLORIDA"  
| count 

Die Abfrage beginnt mit einem Verweis auf eine Tabelle namens StormEvents und enthält die Operatoren where und count. Die Operatoren sind jeweils durch eine Pipe getrennt. Die Datenzeilen für die Quelltabelle werden zunächst nach dem Wert der Spalte StartTime und dann nach dem Wert der Spalte State gefiltert. In der letzten Zeile gibt die Abfrage eine Tabelle mit einer einzelnen Spalte und einer einzelnen Zeile zurück, die die Anzahl der verbleibenden Zeilen enthält.

In den nächsten Lerneinheiten stellen Sie eine Verbindung mit einem Dataset her und lernen einige der am häufigsten verwendeten Operatoren kennen. Anschließend verwenden Sie die Operatoren, um Fragen zu einem Stichprobendataset zu beantworten, das US-amerikanische meteorologische Daten enthält.