Riasztások lekérdezési mintái

Ez a lap az egyoszlopos küszöbérték-ellenőrzésen túlmutató SQL-létrehozási technikákat ismerteti.

Riasztások összesítése

A riasztások összesítése a riasztáshoz csatolt Databricks SQL-lekérdezés eredeti SQL-jének módosításával működik. A riasztás egy közös táblakifejezésben (CTE) körbefuttatja az eredeti lekérdezés szövegét, és egy sortöréses összesítő lekérdezést hajt végre rajta a lekérdezés eredményének összesítéséhez.

Például egy SUM lekérdezéshez csatolt, szöveggel SELECT 1 AS column_name ellátott riasztás összesítése azt jelenti, hogy a riasztás frissítésekor a futtatott módosított SQL a következő lesz: WITH q AS (SELECT 1 AS column_name) SELECT SUM(column_name) FROM q.

Ez azt jelenti, hogy az eredeti lekérdezési eredmény (előre összesítve) nem jeleníthető meg egy riasztás egyéni törzsében (olyan paraméterekkel, mint a QUERY_RESULT_ROWS és a QUERY_RESULT_COLS), amikor egy riasztás összesítése történik. Ehelyett ezek a változók csak a végső, összesítés utáni lekérdezés eredményét jelenítik meg.

Riasztás több oszlopra

Ha egy lekérdezés több oszlopa alapján szeretne riasztást beállítani, a lekérdezés implementálhatja a riasztás logikáját, és visszaadhat egy logikai értéket a riasztáshoz, amely aktiválódik. Például:

SELECT CASE WHEN drafts_count > 10000 AND archived_count > 5000 THEN 1 ELSE 0 END
FROM (
SELECT sum(CASE WHEN is_archived THEN 1 ELSE 0 END) AS archived_count,
sum(CASE WHEN is_draft THEN 1 ELSE 0 END) AS drafts_count
FROM queries) data

Ez a lekérdezés akkor ad 1 vissza, ha drafts_count > 10000 and archived_count > 5000. Ezután konfigurálhatja a riasztást úgy, hogy az érték 1 esetén lépjen működésbe.

Riasztás a metrikanézeteken

A metrikanézetben riasztást állíthat be, hogy értesítést kapjon, ha egy metrikaérték a várt tartományon kívül esik. A metrikák nézeteire vonatkozó riasztások ugyanúgy működnek, mint bármely más adathalmazra vonatkozó riasztások. A riasztás lekérdezésében a metrikanézetre a teljesen minősített nevével hivatkozzon.