Vous êtes sur la page 1sur 9

Estimacin de tamao de base de datos

Administracin de recursos Ing. En sistemas de Informacin FRBA - UTN - ARGENTINA 2010

Estimacin de tamao de BD
Para la estimacin del tamao que ocupara una base de datos se deben tener en cuenta los siguientes valores:

Ti: Tamao inicial de la base limpia. Este valor depender del


motor seleccionado, de su versin y del SO.

Td: Tamao de las tablas con sus datos. es el valor que


ocuparan los datos, este es el ms estndar de los valores ya que se obtiene calculando el tamao de cada una de las tablas sumando lo que ocuparan cada una de sus filas. Si hay que tener en cuenta que no todos los motores poseen exactamente los mismos tipos de datos por lo que los tamaos podran variar. Adems hay que tener en cuenta que cada motor maneja diferente las caractersticas de las columnas (manejo de nulls por ej)

Estimacin de tamao de BD
Tidx: Tamao de los ndices. Este tamao se obtiene de la
suma de todos los ndices que tenga cada una de las tablas. Y para su clculo se deber tener en cuenta el tipo de ndice (cluster, no cluster) y el mtodo que utilice el motor seleccionado para almacenarlo

Tc: Tamao de las funciones y/o procedimientos


(generalmente este tamao es insignificante respecto de los dems.

Tud: este tamao depende de la configuracin de la base y de


los tipos de procesos que se ejecuten. En la mayora de los casos suele ser un espacio a considerar si se tiene un alto volumen de transacciones concurrentes o si las transacciones ejecutan muchas sentencias en cada transaccin.

Estimacin de tamao de BD
Tlog: Tamao para logs de transacciones. Este valor puede
variar de acuerdo a la configuracin de la base.

CS: Coeficiente de seguridad

Tdb: Tamao de la base de datos Tdb=(Ti+Td+Tidx+Tc+Tud+Tlog) * CS

Estimacin de tamao de una tabla


El valor mas complejo de estimar es que cantidad de filas tendr cada tabla. Para estimar el nmero de filas se debe tener en cuenta: La cantidad de transacciones estimadas y en base a esto determinar el porcentaje de dichas transacciones que agregaran o eliminaran registros de cada tabla. Si existe una base de datos similar en un contexto similar podra tomarse como parmetro para realizar la estimacin En algunos casos es posible estimar este valor mediante informacin de marketing.

Estimacin de tamao de una tabla


Ejemplo sencillo de estimacin del tamao de una tabla para MS-SqlServer 2008
Clientes Clie_id int NULL Clie_detalle varchar(50) NULL Clie_provincia int NULL
Para este ejemplo estimaremos que el nro de filas de la tabla ser de 1000.

Estimacin de tamao de una tabla


Como primer paso se debe calcular el tamao que ocupara 1 fila.
Row_Size = Fixed_Data_Size + Variable_Data_Size + Null_Bitmap + 4 El valor 4 de la frmula representa la sobrecarga del encabezado de la fila de datos.

Estimacin de tamao de una tabla


Luego calculamos el tamao de las columnas de tamao variable Variable_Data_Size = 2 + (Num_Variable_Cols x 2) + Max_Var_Size Max_Var_Size = tamao mximo total en bytes de todas las columnas de longitud
variable Para nuestro ejemplo Variable_Data_Size = 2 + (1x2) + 50 Suponemos que siempre se ocupar el mximo, si se conoce el valor promedio es conveniente ajustar el valor de Max_Var_Size. Los bytes agregados a Max_Var_Size son para el seguimiento de cada columna de longitud variable. Entonces Variable_Data_Size = 54 bytes

Estimacin de tamao de una tabla


Null_Bitmap : el mapa de bits NULL, se reserva para administrar la nulabilidad en
las columnas

Null_Bitmap = 2 + ((Num_Cols + 7) / 8) solo se toma la parte entera Para nuestro ejemplo Null_Bitmap = 2 + ((3+7)/8) Entonces Null_Bitmap = 3 Finalmente una fila ocupara Row_Size = 8 bytes + 54 bytes + 3 bytes + 4 bytes = 69 bytes Entonces el tamao de la tabla ser: Tt = 69 bytes x 1000 = 69000 bytes = 67.4 KB (aproximadamente)

Vous aimerez peut-être aussi