Dela via


Uppskatta tabellstorlek

Gäller för: ✅Microsoft FabricAzure Data Explorer

Att förstå storleken på en tabell kan vara användbart för effektiv resurshantering och optimerad frågeprestanda. I den här artikeln lär du dig olika metoder för att uppskatta tabellstorlekar och hur du använder dem effektivt.

Ursprunglig storlek på inmatade data

Använd .show-tabellinformation för att uppskatta den ursprungliga datastorleken för en tabell. Ett exempel finns i Använd .show-tabellinformation.

Det här kommandot ger en uppskattning av den okomprimerade storleken på data som matas in i tabellen baserat på antagandet att data överfördes i CSV-format. Uppskattningen baseras på ungefärliga längder för numeriska värden, till exempel heltal, longs, datetimes och guids, genom att överväga deras strängrepresentationer.

Exempel på användningsfall: Spåra storleken på inkommande data över tid för att fatta välgrundade beslut om kapacitetsplanering.

Tabellstorlek när det gäller åtkomstbyte

Använd estimate_data_size() tillsammans med sum() sammansättningsfunktionen för att uppskatta tabellstorleken baserat på datatyper och deras respektive bytestorlekar. Ett exempel finns i Använd estimate_data_size().

Den här metoden ger en mer exakt uppskattning genom att överväga bytestorlekarna för numeriska värden utan att formatera dem som strängar. Heltalsvärden kräver till exempel 4 byte medan långa värden och datetime-värden kräver 8 byte. Med den här metoden kan du exakt uppskatta den datastorlek som får plats i minnet.

Exempel på användningsfall: Fastställa kostnaden för en fråga när det gäller byte som ska genomsökas.

Kombinerad storlek på flera tabeller

Du kan använda operatorn union tillsammans med funktionerna estimate_data_size() och sum() för att beräkna den kombinerade storleken på flera tabeller när det gäller åtkomstbyte. Ett exempel finns i Använd union med estimate_data_size().

Exempel på användningsfall: Utvärdera minneskraven för att konsolidera data från flera tabeller till en enda datauppsättning.

Not

Den här metoden kan blåsa upp den uppskattade datastorleken på grund av tomma kolumner eftersom union kombinerar alla kolumner från de angivna tabellerna och estimate_data_size() tar hänsyn till tomma kolumner vid beräkning av datastorleken.

Exempel

Använd .show table details (Visa tabellinformation)

Följande fråga beräknar den ursprungliga datastorleken för tabellen StormEvents.

.show table StormEvents details
| project TotalOriginalSize

utdata

TotalOriginalSize
60192011

Dricks

Om du vill formatera byteresultatet till MB, GBeller en annan enhet använder du format_bytes().

Använd estimate_data_size()

Följande fråga uppskattar den ursprungliga datastorleken för den StormEvents tabellen i byte.

StormEvents
| extend sizeEstimateOfColumn = estimate_data_size(*)
| summarize totalSize=sum(sizeEstimateOfColumn)

utdata

totalSize
58608932

Not

Utdata är mindre även om beräkningen görs över samma tabell. Det beror på att den här metoden ger en mer exakt uppskattning genom att överväga bytestorlekarna för numeriska värden utan att formatera dem som strängar.

Använda union med estimate_data_size()

Följande fråga beräknar datastorleken baserat på alla tabeller i den Samples databasen.

union withsource=_TableName *
| extend sizeEstimateOfColumn = estimate_data_size(*)
| summarize totalSize=sum(sizeEstimateOfColumn)
| extend sizeGB = format_bytes(totalSize,2,"GB")
totalSize sizeGB
1761782453926 1640,79 GB