Referentie voor magazijnevenementensysteem table
Belangrijk
Dit systeem table bevindt zich in openbare preview-versie. Als u toegang wilt krijgen tot de table, moet de schema zijn ingeschakeld in uw system
catalog. Voor meer informatie, zie Systeem table schema's inschakelen.
In dit artikel leert u hoe u het warehouse-gebeurtenissensysteem gebruikt table om de SQL-magazijnen in uw werkruimten te bewaken en te beheren. Deze table registreert een rij elke keer dat een magazijn start, stopt, draait en op- en afgeschaald wordt. U kunt de voorbeeldquery's in dit artikel gebruiken met waarschuwingen om u op de hoogte te houden van wijzigingen in uw magazijnen.
Table pad: dit systeem table bevindt zich op system.compute.warehouse_events
.
Geregistreerde magazijngebeurtenistypen
Dit systeem table registreert de volgende typen gebeurtenissen:
-
SCALED_UP
: Er is een nieuw cluster toegevoegd aan het magazijn. -
SCALED_DOWN
: Er is een cluster verwijderd uit het magazijn. -
STOPPING
: Het magazijn wordt gestopt. -
RUNNING
: Het magazijn wordt actief uitgevoerd. -
STARTING
: Het magazijn wordt gestart. -
STOPPED
: Het magazijn is volledig gestopt.
Magazijngebeurtenissen schema
Het warehouse_events
systeem table gebruikt de volgende schema:
Column naam | Gegevenstype | Beschrijving | Voorbeeld |
---|---|---|---|
account_id |
tekenreeks | De id van het Azure Databricks-account. | 7af234db-66d7-4db3-bbf0-956098224879 |
workspace_id |
tekenreeks | De ID van de werkruimte waar het magazijn is ingezet is where. | 123456789012345 |
warehouse_id |
tekenreeks | De id van SQL Warehouse waaraan de gebeurtenis is gerelateerd. | 123456789012345 |
event_type |
tekenreeks | Het type magazijnevenement. Mogelijke values zijn SCALED_UP , SCALED_DOWN , STOPPING , RUNNING , STARTING en STOPPED . |
SCALED_UP |
cluster_count |
geheel getal | Het aantal clusters dat actief wordt uitgevoerd. | 2 |
event_time |
timestamp | Tijdstempel van toen de gebeurtenis plaatsvond in UTC. | 2023-07-20T19:13:09.504Z |
Voorbeeldquery's
De volgende voorbeeldquery's zijn sjablonen. Voeg in wat ook maar values zinvol is voor uw organisatie. U kunt ook waarschuwingen toevoegen aan deze query's om u te helpen op de hoogte te blijven van wijzigingen in uw magazijnen. Zie Een waarschuwing maken.
Gebruik de volgende voorbeeldquery's om inzicht te krijgen in het magazijngedrag:
- Welke magazijnen worden actief uitgevoerd en hoe lang?
- Magazijnen identificeren die langer zijn opgeschaald dan verwacht
- Magazijnen die voor het eerst beginnen
- Factureringskosten onderzoeken
- Welke magazijnen zijn de afgelopen 30 dagen niet gebruikt?
- Magazijnen met de meeste uptime in een maand
- Magazijnen die de meeste tijd hebben besteed tijdens een maand
Welke magazijnen worden actief uitgevoerd en hoe lang?
Deze query geeft aan welke magazijnen momenteel actief zijn, samen met de actieve tijd in uren.
USE CATALOG `system`;
SELECT
we.warehouse_id,
we.event_time,
TIMESTAMPDIFF(MINUTE, we.event_time, CURRENT_TIMESTAMP()) / 60.0 AS running_hours,
we.cluster_count
FROM
compute.warehouse_events we
WHERE
we.event_type = 'RUNNING'
AND NOT EXISTS (
SELECT 1
FROM compute.warehouse_events we2
WHERE we2.warehouse_id = we.warehouse_id
AND we2.event_time > we.event_time
)
Waarschuwingskans: als werkruimtebeheerder wilt u mogelijk worden gewaarschuwd als een magazijn langer wordt uitgevoerd dan verwacht. U kunt de queryresultaten bijvoorbeeld gebruiken om een waarschuwingsvoorwaarde te set om te activeren wanneer de actieve uren een bepaalde drempelwaarde overschrijden.
Magazijnen identificeren die langer zijn opgeschaald dan verwacht
Deze query geeft aan welke magazijnen momenteel actief zijn, samen met de actieve tijd in uren.
use catalog `system`;
SELECT
we.warehouse_id,
we.event_time,
TIMESTAMPDIFF(MINUTE, we.event_time, CURRENT_TIMESTAMP()) / 60.0 AS upscaled_hours,
we.cluster_count
FROM
compute.warehouse_events we
WHERE
we.event_type = 'SCALED_UP'
AND we.cluster_count >= 2
AND NOT EXISTS (
SELECT 1
FROM compute.warehouse_events we2
WHERE we2.warehouse_id = we.warehouse_id
AND (
(we2.event_type = 'SCALED_DOWN') OR
(we2.event_type = 'SCALED_UP' AND we2.cluster_count < 2)
)
AND we2.event_time > we.event_time
)
Waarschuwingskans: waarschuwingen op deze voorwaarde kunnen u helpen bij het bewaken van resources en kosten. U kunt een waarschuwing set maken voor wanneer de opgeschaalde uren een bepaalde limitoverschrijden.
Magazijnen die voor het eerst beginnen
Deze query informeert u over nieuwe magazijnen die voor het eerst worden gestart.
use catalog `system`;
SELECT
we.warehouse_id,
we.event_time,
we.cluster_count
FROM
compute.warehouse_events we
WHERE
(we.event_type = 'STARTING' OR we.event_type = 'RUNNING')
AND NOT EXISTS (
SELECT 1
FROM compute.warehouse_events we2
WHERE we2.warehouse_id = we.warehouse_id
AND we2.event_time < we.event_time
)
Waarschuwingskans: waarschuwingen voor nieuwe magazijnen kunnen uw organisatie helpen bij het bijhouden van resourcetoewijzing. U kunt bijvoorbeeld set een waarschuwing die wordt geactiveerd telkens wanneer een nieuw magazijn wordt gestart.
Factureringskosten onderzoeken
Als u specifiek wilt weten wat een magazijn heeft gedaan met betrekking tot factureringskosten bij generate, kunt u met deze query de exacte datums en tijden zien waarop het magazijn is opgeschaald of afgeschaald, of wanneer het is gestart en gestopt.
use catalog `system`;
SELECT
we.warehouse_id AS warehouse_id,
we.event_type AS event,
we.event_time AS event_time,
we.cluster_count AS cluster_count
FROM
compute.warehouse_events AS we
WHERE
we.event_type IN (
'STARTING', 'RUNNING', 'STOPPING', 'STOPPED',
'SCALING_UP', 'SCALED_UP', 'SCALING_DOWN', 'SCALED_DOWN'
)
AND MONTH(we.event_time) = 7
AND YEAR(we.event_time) = YEAR(CURRENT_DATE())
AND we.warehouse_id = '19c9d68652189278'
ORDER BY
event_time DESC
Welke magazijnen zijn de afgelopen 30 dagen niet gebruikt?
Deze query helpt u bij het identificeren van ongebruikte resources en biedt een kans voor kostenoptimalisatie.
use catalog `system`;
SELECT
we.warehouse_id,
we.event_time,
we.event_type,
we.cluster_count
FROM
compute.warehouse_events AS we
WHERE
we.warehouse_id IN (
SELECT DISTINCT
warehouse_id
FROM
compute.warehouse_events
WHERE
MONTH(event_time) = 6
AND YEAR(event_time) = YEAR(CURRENT_DATE())
)
AND we.warehouse_id NOT IN (
SELECT DISTINCT
warehouse_id
FROM
compute.warehouse_events
WHERE
MONTH(event_time) = 7
AND YEAR(event_time) = YEAR(CURRENT_DATE())
)
ORDER BY
event_time DESC
waarschuwingskans: het ontvangen van een waarschuwing voor ongebruikte resources kan uw organisatie helpen optimize kosten. U kunt bijvoorbeeld set een waarschuwing die wordt geactiveerd wanneer de query een ongebruikt magazijn detecteert.
Magazijnen met de meeste uptime in een maand
Deze query laat zien welke magazijnen het meest zijn gebruikt gedurende een specifieke maand. Deze query maakt gebruik van juli als voorbeeld.
use catalog `system`;
SELECT
warehouse_id,
SUM(TIMESTAMPDIFF(MINUTE, start_time, end_time)) / 60.0 AS uptime_hours
FROM (
SELECT
starting.warehouse_id,
starting.event_time AS start_time,
(
SELECT
MIN(stopping.event_time)
FROM
compute.warehouse_events AS stopping
WHERE
stopping.warehouse_id = starting.warehouse_id
AND stopping.event_type = 'STOPPED'
AND stopping.event_time > starting.event_time
) AS end_time
FROM
compute.warehouse_events AS starting
WHERE
starting.event_type = 'STARTING'
AND MONTH(starting.event_time) = 7
AND YEAR(starting.event_time) = YEAR(CURRENT_DATE())
) AS warehouse_uptime
WHERE
end_time IS NOT NULL
GROUP BY
warehouse_id
ORDER BY
uptime_hours DESC
Waarschuwingskans: Mogelijk wilt u magazijnen met hoog gebruik bijhouden. U kunt bijvoorbeeld een waarschuwing set die wordt geactiveerd wanneer de uptime-uren voor een magazijn een specifieke drempelwaarde overschrijden.
Magazijnen die de meeste tijd hebben besteed tijdens een maand
Deze query informeert u over magazijnen die gedurende een maand aanzienlijke tijd hebben besteed aan de opgeschaalde staat. Deze query maakt gebruik van juli als voorbeeld.
use catalog `system`;
SELECT
warehouse_id,
SUM(TIMESTAMPDIFF(MINUTE, upscaled_time, downscaled_time)) / 60.0 AS upscaled_hours
FROM (
SELECT
upscaled.warehouse_id,
upscaled.event_time AS upscaled_time,
(
SELECT
MIN(downscaled.event_time)
FROM
compute.warehouse_events AS downscaled
WHERE
downscaled.warehouse_id = upscaled.warehouse_id
AND (downscaled.event_type = 'SCALED_DOWN' OR downscaled.event_type = 'STOPPED')
AND downscaled.event_time > upscaled.event_time
) AS downscaled_time
FROM
compute.warehouse_events AS upscaled
WHERE
upscaled.event_type = 'SCALED_UP'
AND upscaled.cluster_count >= 2
AND MONTH(upscaled.event_time) = 7
AND YEAR(upscaled.event_time) = YEAR(CURRENT_DATE())
) AS warehouse_upscaled
WHERE
downscaled_time IS NOT NULL
GROUP BY
warehouse_id
ORDER BY
upscaled_hours DESC
Waarschuwingskans: Mogelijk wilt u magazijnen met hoog gebruik bijhouden. U kunt bijvoorbeeld een waarschuwing set die wordt geactiveerd wanneer de uptime-uren voor een magazijn een specifieke drempelwaarde overschrijden.