Compartilhar via


Estimar o tamanho da tabela

Entender o tamanho de uma tabela pode ser útil para o gerenciamento eficiente de recursos e o desempenho otimizado da consulta. Neste artigo, você aprenderá diferentes métodos para estimar tamanhos de tabela e como usá-los com eficiência.

Tamanho original dos dados ingeridos

Use os detalhes da tabela .show para estimar o tamanho dos dados originais de uma tabela. Para obter um exemplo, consulte Usar detalhes da tabela .show.

Esse comando fornece uma estimativa do tamanho descompactado dos dados ingeridos em sua tabela com base na suposição de que os dados foram transferidos no formato CSV. A estimativa é baseada em comprimentos aproximados de valores numéricos, como inteiros, longs, datetimes e guids, considerando suas representações de cadeia de caracteres.

Exemplo de caso de uso: Acompanhe o tamanho dos dados de entrada ao longo do tempo para tomar decisões informadas sobre o planejamento de capacidade.

Tamanho da tabela em termos de bytes de acesso

Use o estimate_data_size() juntamente com a função de agregação sum() para estimar o tamanho da tabela com base nos tipos de dados e nos respectivos tamanhos de bytes. Para obter um exemplo, consulte Usar estimate_data_size().

Esse método fornece uma estimativa mais precisa considerando os tamanhos de bytes de valores numéricos sem formatá-los como cadeias de caracteres. Por exemplo, os valores inteiros exigem 4 bytes, enquanto os valores long e datetime exigem 8 bytes. Usando essa abordagem, você pode estimar com precisão o tamanho dos dados que caberiam na memória.

Exemplo de caso de uso: Determine o custo de uma consulta em termos de bytes a serem verificados.

Tamanho combinado de várias tabelas

Você pode usar o operador union junto com as funções estimate_data_size() e sum() para estimar o tamanho combinado de várias tabelas em termos de bytes de acesso. Para obter um exemplo, consulte Usar união com estimate_data_size().

Exemplo de caso de uso: Avalie os requisitos de memória para consolidar dados de várias tabelas em um único conjunto de dados.

Observação

Essa abordagem pode inflar o tamanho estimado dos dados devido a colunas vazias, pois union combina todas as colunas das tabelas especificadas e estimate_data_size() leva em conta colunas vazias ao calcular o tamanho dos dados.

Exemplos

Usar detalhes da tabela .show

A consulta a seguir estima o tamanho dos dados originais da StormEvents tabela.

.show table StormEvents details
| project TotalOriginalSize

Saída

TotalOriginalSize
60192011

Dica

Para formatar o resultado de bytes para MB, GBou outra unidade, use format_bytes().

Usar estimate_data_size()

A consulta a seguir estima o tamanho dos dados originais da StormEvents tabela em bytes.

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

Saída

Totalsize
58608932

Observação

A saída é menor, embora o cálculo seja feito na mesma tabela. Isso ocorre porque esse método fornece uma estimativa mais precisa considerando os tamanhos de bytes de valores numéricos sem formatá-los como cadeias de caracteres.

Usar união com estimate_data_size()

A consulta a seguir estima o tamanho dos dados com base em todas as tabelas no Samples banco de dados.

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