Como faço para obter o tamanho do bloco de cabeçalho no Oracle?
-
03-07-2019 - |
Pergunta
Eu estou tentando calcular o tamanho de algumas mesas como indicado aqui , mas não consigo encontrar o bloco variável tamanho cabeçalho
Como faço para obtê-lo? É algum tipo de fórmula?
Estou usando o Oracle 10g
Solução
Este site tem uma boa discussão sobre o formato do cabeçalho do bloco: http : //www.adp-gmbh.ch/ora/concepts/db_block.html . Basicamente, o cabeçalho do bloco = cabeçalho fixo cabeçalho + operação + mesa diretório + diretório linha. Aqui estão as peças individuais:
cabeçalho fixo = 57 bytes
cabeçalho transação = entre 23 inittrans * e 23 * maxtrans
diretório table = 4 * número de tabelas (geralmente 1 a menos que você está usando clusters)
diretório linha = 2 * linhas armazenados
Em suma, enquanto você pode vir até com uma estimativa grosseira, não é um tamanho fixo para cada bloco de dados.
Outras dicas
Esta página (para 10 g) diz que é 57 bytes.