Megosztás a következőn keresztül:


Kusto lekérdezésnyelv áttekintése

Szolgáltatások váltása a Verzió legördülő listával. További információ a navigációról.
A következőkre vonatkozik: ✅ Microsoft Fabric ✅ Azure Data Explorer ✅ Azure Monitor ✅ Microsoft Sentinel

A Kusto Query Language (KQL) hatékony eszköz az adatok feltárásához és az összefüggések felfedezéséhez, az anomáliák és kiugró értékek azonosításához, statisztikai modellek létrehozásához és még sok máshoz.

A KQL egy egyszerű, mégis hatékony nyelv a strukturált, félig strukturált és strukturálatlan adatok lekérdezéséhez. A nyelv kifejező, könnyen olvasható és érthető a lekérdezési szándék, és a szerzői élményhez van optimalizálva. A KQL optimális a telemetriai adatok, metrikák és naplók lekérdezéséhez a szövegkeresés és -elemzés, az idősorozat-operátorok és -függvények, az elemzések és az összesítés, a térinformatikai, a vektor-hasonlósági keresések és számos más olyan nyelvi szerkezet esetében, amelyek a legoptimálisabb nyelvet biztosítják az adatelemzéshez. A lekérdezés olyan séma-entitásokat használ, amelyek az SQL-ekhez hasonló hierarchiában vannak rendszerezve: adatbázisok, táblák és oszlopok.

Ha rendelkezik szkriptkészítési vagy adatbázis-kezelő háttérrel, a cikk tartalmának nagy részének ismerősnek kell lennie. Ha nem, ne aggódjon, mivel a nyelv intuitív természete gyorsan lehetővé teszi, hogy saját lekérdezéseket írjon, és értéket teremtsen a szervezet számára.

Ez a cikk ismerteti a lekérdezés nyelvét, és gyakorlati gyakorlatokat kínál a lekérdezések írásának megkezdéséhez. A lekérdezési környezet eléréséhez használja a Azure Data Explorer webes felhasználói felületét. A KQL használatának megismeréséhez tekintse meg oktatóanyagot: Gyakori operátorok.

Ez a cikk ismerteti a lekérdezés nyelvét, és gyakorlati gyakorlatokat kínál a lekérdezések írásának megkezdéséhez. A lekérdezési környezet eléréséhez használja a KQL-lekérdezéskészletet. A KQL használatának megismeréséhez tekintse meg oktatóanyagot: Gyakori operátorok.

A KQL az a nyelv is, amellyel a Microsoft Sentinelben dolgozhat és kezelhet adatokat. A munkaterületre betáplálási naplók nem sokat érnek, ha nem tudja elemezni őket, és az összes adatban elrejti a fontos információkat. A KQL-nek nem csak az a hatalma és rugalmassága, hogy megkapja ezeket az információkat, hanem az egyszerűség, amely segít a gyors kezdésben.

Ez a cikk bemutatja a KQL alapjait, amelyek a leggyakrabban használt függvényeket és operátorokat ismertetik, amelyek a felhasználók által naponta írt lekérdezések 75–80 százalékát fedik le. Ha részletesebbre vagy összetettebb lekérdezésekre van szüksége, kihasználhatja a Microsoft Sentinel-munkafüzet speciális KQL-jének előnyeit.

Miért érdemes a Microsoft Sentinelhez készült KQL-t alkalmazni?

A Microsoft Sentinel az Azure Monitor szolgáltatásra épül, és az Azure Monitor Log Analytics-munkaterületeit használja az összes adat tárolására. Ezek az adatok a következők bármelyikét tartalmazzák:

  • külső forrásokból előre definiált táblákba a Microsoft Sentinel adatösszekötők használatával betöltött adatok.
  • külső forrásokból felhasználó által definiált egyéni táblákba betöltött adatok, egyénileg létrehozott adatösszekötők és néhány beépített összekötőtípus használatával.
  • a Microsoft Sentinel által létrehozott és végrehajtott elemzésekből származó adatok – például riasztások, incidensek és UEBA-adatok.
  • a Microsoft Sentinelbe feltöltött adatok, hogy segítsenek az észlelésben és az elemzésben – például fenyegetésfelderítési hírcsatornák és figyelőlisták.

A KQL-t az Azure Data Explorer szolgáltatás részeként fejlesztették ki, ezért felhőalapú környezetben lévő big data-tárolókban való keresésre optimalizálták. Úgy tervezték, hogy segítsen az adatok mély feltárásában és a rejtett kincsek feltárásában.

A KQL az Azure Monitorban is használható, és olyan további Azure Monitor-funkciókat is támogat, amelyekkel adatokat kérdezhet le, jeleníthet meg, elemezhet és elemezhet a Log Analytics-adattárakban. A Microsoft Sentinelben KQL-alapú eszközöket használ, amikor adatokat vizualizál és elemez, és fenyegetéseket keres, akár meglévő szabályokban és munkafüzetekben, akár saját buildelésben.

Mivel a KQL szinte mindennek része, amit a Microsoft Sentinelben végez, a működés egyértelmű megértése segít abban, hogy jobban kihozza a SIEM-ből.

Mi az a Kusto-lekérdezés?

A Kusto-lekérdezések csak olvasható kérések az adatok feldolgozására és az eredmények visszaadására. A kérés egyszerű szövegben van megadva, könnyen olvasható, szerzői és automatizálási célú adatfolyam-modell használatával. A Kusto-lekérdezések egy vagy több lekérdezési utasításból állnak.

A Kusto-lekérdezések nem írnak adatokat. A lekérdezések az SQL-hez hasonló adatbázisok, táblák és oszlopok hierarchiájába rendezett adatokon működnek.

Mi az a lekérdezési utasítás?

Háromféle felhasználói lekérdezési utasítás:

Az összes lekérdezési utasítást egy ; (pontosvessző) választja el egymástól, és csak az adott lekérdezésre van hatással.

Jegyzet

Az alkalmazás-lekérdezési utasításokról további információt alkalmazás-lekérdezési utasítások.

A lekérdezési utasítás leggyakoribb típusa egy táblázatos kifejezés, utasítás, ami azt jelenti, hogy mind a bemenete, mind a kimenete táblákból vagy táblázatos adatkészletekből áll. A táblázatos utasítások nulla vagy több operátort tartalmaznak, amelyek mindegyike táblázatos bemenettel kezdődik, és táblázatos kimenetet ad vissza. Az operátorokat egy | (cső) rendezi. Adatfolyamok, vagy az egyik operátorból a következőbe kerülnek. Az adatok szűrése vagy kezelése minden lépésnél történik, majd az alábbi lépésbe lesznek bevéve.

Ez olyan, mint egy tölcsér, ahol egy teljes adattáblával kell kezdenie. Minden alkalommal, amikor az adatok egy másik operátoron haladnak át, szűrik, átrendezik vagy összegzik. Mivel az egyik operátorról a másikra történő adatcsomózás szekvenciális, a lekérdezési operátor sorrendje fontos, és hatással lehet az eredményekre és a teljesítményre is. A tölcsér végén egy finomított kimenet marad.

Tekintsünk meg egy példa lekérdezést.

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

Jegyzet

A KQL minden esetben megkülönbözteti a kis- és nagybetűket – táblaneveket, táblaoszlopneveket, operátorokat, függvényeket stb. A kulcsszavak azonosítóként használhatók szögletes zárójelek és idézőjelek ([', '], [" és "]). Például ['where']. További információ: Azonosító elnevezési szabályai

Ez a lekérdezés egyetlen táblázatos kifejezési utasítással rendelkezik. Az utasítás egy StormEvents nevű táblára való hivatkozással kezdődik, és több operátort, where és counttartalmaz, amelyek mindegyike egy csővel van elválasztva. A forrástábla adatsorait a rendszer a StartTime oszlop értéke alapján szűri, majd a Állapot oszlop értéke alapján szűri. Az utolsó sorban a lekérdezés egy olyan táblát ad vissza, amelynek egyetlen oszlopa és egyetlen sora tartalmazza a fennmaradó sorok számát.

További Kusto-lekérdezések kipróbálásához tekintse meg oktatóanyagot: Kusto-lekérdezések írása.

Felügyeleti parancsok

A Kusto-lekérdezésekkel ellentétben felügyeleti parancsok kérések a Kusto-nak az adatok vagy metaadatok feldolgozására vagy módosítására. A következő felügyeleti parancs például létrehoz egy új Kusto-táblát két oszloptal, Level és Text:

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

A felügyeleti parancsok saját szintaxissal rendelkeznek, amely nem része a KQL szintaxisnak, bár a kettő sok fogalomból áll. A felügyeleti parancsokat különösen úgy különböztetjük meg a lekérdezésektől, hogy a parancs szövegében az első karakter a pont (.) karakter (amely nem tud lekérdezést indítani). Ez a különbség számos biztonsági támadást megelőz, egyszerűen azért, mert megakadályozza a felügyeleti parancsok lekérdezésekbe való beágyazását.

Nem minden felügyeleti parancs módosítja az adatokat vagy a metaadatokat. A .showkezdődő parancsok nagy osztálya metaadatok vagy adatok megjelenítésére szolgál. A .show tables parancs például az aktuális adatbázis összes táblájának listáját adja vissza.

További információ a felügyeleti parancsokról: Felügyeleti parancsok áttekintése.

KQL más szolgáltatásokban

A KQL-t sok más Microsoft-szolgáltatás is használja. A KQL ezen környezetekben való használatával kapcsolatos konkrét információkért tekintse meg az alábbi hivatkozásokat: