Tabellreferens för systemtabell för förutsägande optimering
Viktigt!
Den här systemtabellen finns i offentlig förhandsversion. För att få åtkomst till tabellen måste schemat vara aktiverat i din system
katalog. Mer information finns i Aktivera systemtabellscheman.
Kommentar
Om du vill ha åtkomst till den här tabellen måste du aktivera storage
-schemat (se Aktivera systemtabellscheman) och din region måste ha stöd för förutsägande optimering (se Azure Databricks-regioner).
Den här artikeln beskriver tabellschemat för förutsägande optimeringsåtgärdshistorik och innehåller exempelfrågor. Förutsägelseoptimering optimerar din datalayout för högsta prestanda och kostnadseffektivitet. Systemtabellen spårar drifthistoriken för den här funktionen. Information om förutsägelseoptimering finns i Förutsägelseoptimering för hanterade Unity Catalog-tabeller.
Tabellsökväg: Den här systemtabellen finns på system.storage.predictive_optimization_operations_history
.
Leveransöverväganden
- Det kan ta upp till 24 timmar innan data fylls i.
- Förutsägande optimering kan köra flera åtgärder i samma kluster. I så fall uppskattas den andel av DPU:er som tillskrivs var och en av de flera åtgärderna. Därför är
usage_unit
inställt påESTIMATED_DBU
. Ändå är det totala antalet DBU:er som spenderas på klustret korrekta.
Tabellschema för förutsägande optimering
Systemtabellen för förutsägande optimeringsåtgärdshistorik använder följande schema:
Kolumnnamn | Datatyp | beskrivning | Exempel |
---|---|---|---|
account_id |
sträng | ID för kontot. | 11e22ba4-87b9-4cc2-9770-d10b894b7118 |
workspace_id |
sträng | ID:t för arbetsytan där förutsägelseoptimering körde åtgärden. | 1234567890123456 |
start_time |
timestamp | Tidpunkten då åtgärden startades. Tidszonsinformation registreras i slutet av värdet med +00:00 som representerar UTC. |
2023-01-09 10:00:00.000+00:00 |
end_time |
timestamp | Tiden då åtgärden avslutades. Tidszonsinformation registreras i slutet av värdet med +00:00 som representerar UTC. |
2023-01-09 11:00:00.000+00:00 |
metastore_name |
sträng | Namnet på metaarkivet som den optimerade tabellen tillhör. | metastore |
metastore_id |
sträng | ID:t för metaarkivet som den optimerade tabellen tillhör. | 5a31ba44-bbf4-4174-bf33-e1fa078e6765 |
catalog_name |
sträng | Namnet på katalogen som den optimerade tabellen tillhör. | catalog |
schema_name |
sträng | Namnet på schemat som den optimerade tabellen tillhör. | schema |
table_id |
sträng | ID:t för den optimerade tabellen. | 138ebb4b-3757-41bb-9e18-52b38d3d2836 |
table_name |
sträng | Namnet på den optimerade tabellen. | table1 |
operation_type |
sträng | Optimeringsåtgärden som utfördes. Värdet blir COMPACTION , VACUUM , ANALYZE eller CLUSTERING . |
COMPACTION |
operation_id |
sträng | ID:t för optimeringsåtgärden. | 4dad1136-6a8f-418f-8234-6855cfaff18f |
operation_status |
sträng | Status för optimeringsåtgärden. Värdet blir SUCCESSFUL eller FAILED: INTERNAL_ERROR . |
SUCCESSFUL |
operation_metrics |
map[string, string] | Ytterligare information om den specifika optimering som utfördes. Se Åtgärdsmått. | {"number_of_output_files":"100","number_of_compacted_files":"1000","amount_of_output_data_bytes":"4000","amount_of_data_compacted_bytes":"10000"} |
usage_unit |
sträng | Den användningsenhet som den här åtgärden ådragit sig. Kan bara vara ett värde: ESTIMATED_DBU . |
ESTIMATED_DBU |
usage_quantity |
decimal | Mängden användningsenhet som användes av den här åtgärden. | 2.12 |
Åtgärdsmått
Måtten som registreras i kolumnen operation_metrics
varierar beroende på åtgärdstyp:
-
COMPACTION
:number_of_compacted_files
,amount_of_data_compacted_bytes
, ,number_of_output_files
amount_of_output_data_bytes
-
VACUUM
:number_of_deleted_files
,amount_of_data_deleted_bytes
-
ANALYZE
:amount_of_scanned_bytes
,number_of_scanned_files
,staleness_percentage_reduced
-
CLUSTERING
:number_of_removed_files
,number_of_clustered_files
, ,amount_of_data_removed_bytes
amount_of_clustered_data_bytes
Exempelfrågor
Följande avsnitt innehåller exempelfrågor som du kan använda för att få insikter om systemtabellen för förutsägande optimering. För att dessa frågor ska fungera måste du ersätta parametervärdena med dina egna värden.
Den här artikeln innehåller följande exempelfrågor:
- Hur många uppskattade DPU:er har förutsägelseoptimering använts under de senaste 30 dagarna?
- På vilka tabeller spenderade förutsägelseoptimering mest under de senaste 30 dagarna (uppskattad kostnad)?
- På vilka tabeller utför den förutsägande optimeringen flest åtgärder?
- Hur många totala byte har komprimerats för en viss katalog?
- Vilka tabeller hade flest byte dammsugna?
- Vad är framgångsgraden för åtgärder som körs av förutsägande optimeringar?
Hur många uppskattade DBU:er har förutsägande optimering använts under de senaste 30 dagarna?
SELECT SUM(usage_quantity)
FROM system.storage.predictive_optimization_operations_history
WHERE
usage_unit = "ESTIMATED_DBU"
AND timestampdiff(day, start_time, Now()) < 30
På vilka tabeller spenderade förutsägelseoptimering mest under de senaste 30 dagarna (uppskattad kostnad)?
SELECT
metastore_name,
catalog_name,
schema_name,
table_name,
SUM(usage_quantity) as totalDbus
FROM system.storage.predictive_optimization_operations_history
WHERE
usage_unit = "ESTIMATED_DBU"
AND timestampdiff(day, start_time, Now()) < 30
GROUP BY ALL
ORDER BY totalDbus DESC
På vilka tabeller utför prediktiv optimering flest åtgärder?
SELECT
metastore_name,
catalog_name,
schema_name,
table_name,
operation_type,
COUNT(DISTINCT operation_id) as operations
FROM system.storage.predictive_optimization_operations_history
GROUP BY ALL
ORDER BY operations DESC
Hur många totala byte har komprimerats för en viss katalog?
SELECT
schema_name,
table_name,
SUM(operation_metrics["amount_of_data_compacted_bytes"]) as bytesCompacted
FROM system.storage.predictive_optimization_operations_history
WHERE
metastore_name = :metastore_name
AND catalog_name = :catalog_name
AND operation_type = "COMPACTION"
GROUP BY ALL
ORDER BY bytesCompacted DESC
Vilka tabeller hade flest byte dammsugna?
SELECT
metastore_name,
catalog_name,
schema_name,
table_name,
SUM(operation_metrics["amount_of_data_deleted_bytes"]) as bytesVacuumed
FROM system.storage.predictive_optimization_operations_history
WHERE operation_type = "VACUUM"
GROUP BY ALL
ORDER BY bytesVacuumed DESC
Vad är framgångsgraden för åtgärder som körs av förutsägande optimeringar?
WITH operation_counts AS (
SELECT
COUNT(DISTINCT (CASE WHEN operation_status = "SUCCESSFUL" THEN operation_id END)) as successes,
COUNT(DISTINCT operation_id) as total_operations
FROM system.storage.predictive_optimization_operations_history
)
SELECT successes / total_operations as success_rate
FROM operation_counts