Přehled dotazu Kusto

Dotaz Kusto je požadavek jen pro čtení na zpracování dat a vrácení výsledků. Požadavky se uvádí v prostém textu s využitím modelu toku dat, který je navržený pro snadné čtení, vytváření a automatizaci syntaxe. Dotazy využívají entity schématu uspořádané do hierarchie podobné jazyku SQL: databáze, tabulky a sloupce.

Dotaz se skládá z posloupnosti příkazů dotazu, oddělený středníkem ( ; ), s alespoň jedním příkazem, který je ; , který je příkaz, který vytváří data uspořádaná do mřížky jako tabulka sloupců a řádků. Příkazy tabulkových výrazů dotazu generují výsledky dotazu.

Syntaxe příkazu tabulkového výrazu obsahuje tok tabulkových dat z jednoho tabulkového operátoru dotazu do jiného, který začíná zdrojem dat (např. tabulka v databázi nebo operátor generující data) a pokračuje sadou operátorů transformace dat, které jsou svázané pomocí oddělovače v podobě svislé čáry (|).

Například následující dotaz Kusto obsahuje jediný příkaz, což je příkaz tabulkového výrazu. Příkaz začíná odkazem na tabulku s názvem StormEvents (databáze, která je hostitelem této tabulky, je tady implicitní a část informací o připojení). Data (řádky) této tabulky se potom filtrují podle hodnoty sloupce StartTime a pak podle hodnoty sloupce State. Dotaz pak vrátí počet zbývajících řádků.

StormEvents 
| where StartTime >= datetime(2007-11-01) and StartTime < datetime(2007-12-01)
| where State == "FLORIDA"  
| count 

Výsledek zobrazíte spuštěním tohoto dotazu :

Počet
23

Řídicí příkazy

Na rozdíl od dotazů Kusto jsou Řídicí příkazy požadavky na Kusto ke zpracování a potenciálně úpravám dat nebo metadat. Například následující řídicí příkaz vytvoří novou tabulku Kusto se dvěma sloupci Level a Text:

.create table Logs (Level:string, Text:string)

Řídicí příkazy mají vlastní syntaxi (která není součástí syntaxe dotazovacího jazyka Kusto, přestože obě sdílejí celou řadu konceptů). Řídicí příkazy se od dotazů odlišují zejména tím, že jako první znak textu příkazu mají tečku (.), zatímco dotaz tečkou začínat nemůže. Tento rozdíl umožňuje zabránit mnoha bezpečnostním útokům, protože brání vkládání řídicích příkazů do dotazů.

Ne všechny řídicí příkazy upravují data nebo metadata. Velká skupina příkazů, které začínají na .show, slouží k zobrazení metadat nebo dat. Například příkaz .show tables vrátí seznam všech tabulek v aktuální databázi.

Další kroky