Kurz: Seznámení s běžnými operátory
dotazovací jazyk Kusto (KQL) se používá k zápisu dotazů v Azure Data Exploreru, Azure Monitoru Log Analytics, Azure Sentinelu a dalších. Tento kurz je úvodem k základním operátorům KQL, které se používají pro přístup k datům a jejich analýze.
Konkrétnější pokyny k dotazování protokolů ve službě Azure Monitor najdete v tématu Začínáme s dotazy na protokoly.
Poznámka:
Nemůžete najít, co hledáte? Tento článek byl nedávno rozdělen takto:
- Běžné operátory Learn (tento článek)
- Použití agregačních funkcí
- Spojení dat z více tabulek
- Vytváření geoprostorových vizualizací
V tomto kurzu se naučíte:
Příklady v tomto kurzu používají StormEvents
tabulku, která je veřejně dostupná v clusteru nápovědy. Pokud chcete prozkoumat vlastní data, vytvořte si vlastní bezplatný cluster.
Požadavky
Počet řádků
Začněte tím, že pomocí operátoru count vyhledáte počet záznamů storm v StormEvents
tabulce.
StormEvents
| count
Výstup
Počet |
---|
59066 |
Zobrazení ukázky dat
Pokud chcete získat představu o datech, použijte operátor take k zobrazení vzorku záznamů. Tento operátor vrátí zadaný počet libovolných řádků z tabulky, což může být užitečné pro zobrazení náhledu obecné datové struktury a obsahu.
StormEvents
| take 5
Následující tabulka ukazuje pouze 5 z 22 vrácených sloupců. Pokud chcete zobrazit úplný výstup, spusťte dotaz.
Počáteční čas | EndTime | EpisodeId | EventId | Stav | Typ události | ... |
---|---|---|---|---|---|---|
2007-09-20T21:57:00Z | 2007-09-20T22:05:00Z | 11078 | 60913 | FLORIDA | Tornádo | ... |
2007-12-20T07:50:00Z | 2007-12-20T07:53:00Z | 12554 | 68796 | MISSISSIPPI | Větrná bouře | ... |
2007-12-30T16:00:00Z | 2007-12-30T16:05:00Z | 11749 | 64588 | GEORGIA | Větrná bouře | ... |
2007-09-29T08:11:00Z | 2007-09-29T08:11:00Z | 11091 | 61032 | ATLANTICKÝ JIH | Vodníspout | ... |
2007-09-18T20:00:00Z | 2007-09-19T18:00:00Z | 11074 | 60904 | FLORIDA | Těžký déšť | ... |
Výběr podmnožina sloupců
Pomocí operátoru projektu zjednodušte zobrazení a vyberte konkrétní podmnožinu sloupců. Použití project
je často efektivnější a čitelnější než zobrazení všech sloupců.
StormEvents
| take 5
| project State, EventType, DamageProperty
Výstup
Stav | Typ události | DamageProperty |
---|---|---|
ATLANTICKÝ JIH | Vodníspout | 0 |
FLORIDA | Těžký déšť | 0 |
FLORIDA | Tornádo | 6200000 |
GEORGIA | Větrná bouře | 2000 |
MISSISSIPPI | Větrná bouře | 20 000 |
Výpis jedinečných hodnot
Zdá se, že na základě výsledků předchozího dotazu existuje více typů bouřek. Pomocí jedinečného operátoru můžete zobrazit seznam všech jedinečných typů storm.
StormEvents
| distinct EventType
V tabulce je 46 typů bouřek. Tady je ukázka 10 z nich.
Typ události |
---|
Větrná bouře |
Krupobití |
Blesková záplava |
Sucha |
Počasí v zimě |
Zimní bouře |
Silné sněžení |
Velký vítr |
Mráz/Ukotvení |
Povodní |
... |
Filtrovat podle podmínky
Operátor where filtruje řádky dat na základě určitých kritérií.
Následující dotaz hledá události storm v konkrétní State
konkrétní .EventType
StormEvents
| where State == 'TEXAS' and EventType == 'Flood'
| project StartTime, EndTime, State, EventType, DamageProperty
Tyto podmínky splňují 146 událostí. Tady je ukázka 5 z nich.
Počáteční čas | EndTime | Stav | Typ události | DamageProperty |
---|---|---|---|---|
2007-01-13T08:45:00Z | 2007-01-13T10:30:00Z | TEXAS | Povodní | 0 |
2007-01-13T09:30:00Z | 2007-01-13T21:00:00Z | TEXAS | Povodní | 0 |
2007-01-13T09:30:00Z | 2007-01-13T21:00:00Z | TEXAS | Povodní | 0 |
2007-01-15T22:00:00Z | 2007-01-16T22:00:00Z | TEXAS | Povodní | 20 000 |
2007-03-12T02:30:00Z | 2007-03-12T06:45:00Z | TEXAS | Povodní | 0 |
... | ... | ... | ... | ... |
Řazení výsledků
Pokud chcete zobrazit horní záplavy v Texasu, které způsobily největší škody, pomocí operátoru řazení uspořádejte řádky v sestupném pořadí podle DamageProperty
sloupce. Výchozí pořadí řazení je sestupné. Pokud chcete řadit vzestupně, zadejte asc
.
StormEvents
| where State == 'TEXAS' and EventType == 'Flood'
| sort by DamageProperty
| project StartTime, EndTime, State, EventType, DamageProperty
Výstup
Počáteční čas | EndTime | Stav | Typ události | DamageProperty |
---|---|---|---|---|
2007-08-18T21:30:00Z | 2007-08-19T23:00:00Z | TEXAS | Povodní | 5000000 |
2007-06-27T00:00:00Z | 2007-06-27T12:00:00Z | TEXAS | Povodní | 1200000 |
2007-06-28T18:00:00Z | 2007-06-28T23:00:00Z | TEXAS | Povodní | 1000000 |
2007-06-27T00:00:00Z | 2007-06-27T08:00:00Z | TEXAS | Povodní | 750000 |
2007-06-26T20:00:00Z | 2007-06-26T23:00:00Z | TEXAS | Povodní | 750000 |
... | ... | ... | ... | ... |
Získání prvních n řádků
Horní operátor vrátí prvních n řádků seřazených podle zadaného sloupce.
Následující dotaz vrátí pět texasových záplav, které způsobily nejvíce poškozenou vlastnost.
StormEvents
| where State == 'TEXAS' and EventType == 'Flood'
| top 5 by DamageProperty
| project StartTime, EndTime, State, EventType, DamageProperty
Výstup
Počáteční čas | EndTime | Stav | Typ události | DamageProperty |
---|---|---|---|---|
2007-08-18T21:30:00Z | 2007-08-19T23:00:00Z | TEXAS | Povodní | 5000000 |
2007-06-27T00:00:00Z | 2007-06-27T12:00:00Z | TEXAS | Povodní | 1200000 |
2007-06-28T18:00:00Z | 2007-06-28T23:00:00Z | TEXAS | Povodní | 1000000 |
2007-06-27T00:00:00Z | 2007-06-27T08:00:00Z | TEXAS | Povodní | 750000 |
2007-06-26T20:00:00Z | 2007-06-26T23:00:00Z | TEXAS | Povodní | 750000 |
Poznámka:
Pořadí operátorů je důležité. Pokud sem vložíte top
where
dříve, získáte jiné výsledky. Důvodem je to, že data jsou transformována jednotlivými operátory v pořadí. Další informace najdete v tabulkových příkazech výrazů.
Vytváření počítaných sloupců
Operátory projektu a rozšíření mohou vytvářet počítané sloupce.
Slouží project
k určení pouze sloupců, které chcete zobrazit, a slouží extend
k připojení počítaného sloupce na konec tabulky.
Následující dotaz vytvoří počítaný Duration
sloupec s rozdílem mezi a StartTime
EndTime
. Vzhledem k tomu, že chceme zobrazit jenom několik vybraných sloupců, project
je použití v tomto případě lepší volbou.
StormEvents
| where State == 'TEXAS' and EventType == 'Flood'
| top 5 by DamageProperty desc
| project StartTime, EndTime, Duration = EndTime - StartTime, DamageProperty
Výstup
Počáteční čas | EndTime | Doba trvání | DamageProperty |
---|---|---|---|
2007-08-18T21:30:00Z | 2007-08-19T23:00:00Z | 1.01:30:00 | 5000000 |
2007-06-27T00:00:00Z | 2007-06-27T12:00:00Z | 12:00:00 | 1200000 |
2007-06-28T18:00:00Z | 2007-06-28T23:00:00Z | 05:00:00 | 1000000 |
2007-06-27T00:00:00Z | 2007-06-27T08:00:00Z | 08:00:00 | 750000 |
2007-06-26T20:00:00Z | 2007-06-26T23:00:00Z | 03:00:00 | 750000 |
Pokud se podíváte na vypočítaný Duration
sloupec, můžete si všimnout, že záplava, která způsobila největší škody, byla také nejdelší záplava.
Umožňuje extend
zobrazit počítaný Duration
sloupec spolu se všemi ostatními sloupci. Sloupec Duration
se přidá jako poslední sloupec.
StormEvents
| where State == 'TEXAS' and EventType == 'Flood'
| top 5 by DamageProperty desc
| extend Duration = EndTime - StartTime
Výstup
Počáteční čas | EndTime | ... | Doba trvání |
---|---|---|---|
2007-08-18T21:30:00Z | 2007-08-19T23:00:00Z | ... | 1.01:30:00 |
2007-06-27T00:00:00Z | 2007-06-27T12:00:00Z | ... | 12:00:00 |
2007-06-28T18:00:00Z | 2007-06-28T23:00:00Z | ... | 05:00:00 |
2007-06-27T00:00:00Z | 2007-06-27T08:00:00Z | ... | 08:00:00 |
2007-06-26T20:00:00Z | 2007-06-26T23:00:00Z | ... | 03:00:00 |
Mapování hodnot z jedné sady na jinou
Statické mapování je užitečná technika pro změnu prezentace výsledků. Jedním ze způsobů, jak v KQL provést statické mapování, je použití dynamického slovníku a přístupových objektů k mapování hodnot z jedné sady na druhou.
let sourceMapping = dynamic(
{
"Emergency Manager" : "Public",
"Utility Company" : "Private"
});
StormEvents
| where Source == "Emergency Manager" or Source == "Utility Company"
| project EventId, Source, FriendlyName = sourceMapping[Source]
Výstup
EventId | Zdroj | Friendlyname |
---|---|---|
68796 | Správce tísňového volání | Veřejná |
... | ... | ... |
72609 | Utility Company | Privátní |
... | ... | ... |
Další krok
Teď, když znáte základy psaní dotazů Kusto, přejděte k dalšímu kurzu a zjistěte, jak pomocí agregačních funkcí získat hlubší přehled o datech.
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro