Obtenha as melhores soluções para suas perguntas no Sistersinspirit.ca, a plataforma de Q&A de confiança. Conecte-se com profissionais prontos para fornecer respostas precisas para suas perguntas em nossa abrangente plataforma de perguntas e respostas. Obtenha respostas rápidas e confiáveis para suas perguntas de nossa dedicada comunidade de especialistas em nossa plataforma.
Sagot :
Resposta:
Para o cálculo do tamanho de uma tabela, você deverá considerar o número de linhas e o número de colunas (atributos) com comprimento fixo e variável. Faça o cálculo para cada tabela e no final some os resultados para determinar o tamanho total do espaço necessário.
Como exemplo, você deve utilizar a estimativa de cálculo apresentada pela Microsoft. Utilize as seguintes fórmulas:
Num_Rows = número de linhas na tabela
Num_Cols = número total de colunas (comprimento fixo e tamanho variável)
Fixed_Data_Size = tamanho total embytes de todas as colunas de tamanho fixo
Num_Variable_Cols = número de colunas de tamanho variável
Max_Var_Size = total máximo em bytes de todas as colunas de tamanho variável
Obs.: o tamanho de uma coluna depende do tipo de dados e da especificação de comprimento.
Null_Bitmap = 2 + ((Num_Cols + 7) / 8) à nulabilidade da coluna (considerar a parte inteira do resultado)
Variable_Data_Size = 2 + (Num_Variable_Cols x 2) + Max_Var_Size
Row_Size = Fixed_Data_Size + Variable_Data_Size + Null_Bitmap + 4
Obs: o valor 4 na fórmula é a sobrecarga do cabeçalho da linha de dados.
Rows_Per_Page = 8096 / (Row_Size + 2) (arrendondamento para baixo)
Obs: o valor 2 na fórmula é para a entrada da linha na matriz de slot da página.
Num_Pages = Num_Rows / Rows_Per_Page (arrendondamento para cima)
Tamanho da tabela (bytes) = 8192 x Num_Pages
Aplicando as fórmulas para cada tabela:
TABELA CLIENTE = {CPF inteiro; NOME varchar (100)}
Num_Rows = 5000
Num_Cols = 2
Fixed_Data_Size = 11
Num_Variable_Cols = 1
Max_Var_Size = 100
Null_Bitmap = 2 + ((2 + 7) / 8) = 3,12
Variable_Data_Size = 2 + (1 x 2) + 100 = 104
Row_Size = 11 + 104 + 3,12 + 4 = 122,12
Rows_Per_Page = 8096 / (122,12 + 2) = 65,22 ~= 65
Num_Pages = 5000 / 65 = 76,92 ~= 77
Tamanho da tabela (bytes) = 8192 x 77 = 630.784bytes = 616KB
PRODUTO = {CODPROD inteiro; DESCRICAO varchar (50)}
Num_Rows = 500
Num_Cols = 2
Fixed_Data_Size = 7
Num_Variable_Cols = 1
Max_Var_Size = 50
Null_Bitmap = 2 + ((2 + 7) / 8) = 3,12
Variable_Data_Size = 2 + (1 x 2) + 50 = 54
Row_Size = 7 + 54 + 3,12 + 4 = 68,12
Rows_Per_Page = 8096 / (68,12 + 2) ~= 115
Num_Pages = 500 / 115 ~= 5
Tamanho da tabela (bytes) = 8192 x 5 = 40.960 bytes = 40KB
VENDA = {CODVENDA inteiro, dtVenda data, valor float, CPF inteiro}
Num_Rows = 25000
Num_Cols = 4
Fixed_Data_Size = (7 + 8 + 8 + 11) = 34
// considerando 7 CODVENDA, 8 dtVenda, 8 valor (6 inteiras e 2 decimais) e 11 CPF.
Num_Variable_Cols = 0
Max_Var_Size = 0
Null_Bitmap = 2 + ((4 + 7) / 8) = 3
Variable_Data_Size = 2 + (0 x 2) + 0 = 2
Row_Size = 34 + 0 + 3 + 4 = 41
Rows_Per_Page = 8096 / (41 + 2) ~= 188
Num_Pages = 25000 / 188 ~= 133
Tamanho da tabela (bytes) = 8192 x 133 = 1.089.536 bytes = 1.064KB
Obtém-se o seguinte resultado:
O espaço físico inicial de alocação para o banco de dados da loja é de:
616 (CLIENTE) + 40 (PRODUTO) + 1064 (VENDA) = 1.720KB
Esperamos que tenha achado útil. Sinta-se à vontade para voltar a qualquer momento para mais respostas precisas e informações atualizadas. Obrigado por sua visita. Estamos dedicados a ajudá-lo a encontrar as informações que precisa, sempre que precisar. Sempre visite o Sistersinspirit.ca para obter novas e confiáveis respostas dos nossos especialistas.