Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Calcular tamaño de registro y registro por página

Estas en el tema de Calcular tamaño de registro y registro por página en el foro de SQL Server en Foros del Web. Buenas noches!! Que tal, bueno voy al problema, estoy leyendo un libro de Server 2005 y cuando pase por la seccion de ESTIMAR LOS REQUERIMIENTOS ...
  #1 (permalink)  
Antiguo 18/08/2008, 22:23
 
Fecha de Ingreso: junio-2008
Mensajes: 26
Antigüedad: 15 años, 11 meses
Puntos: 0
Calcular tamaño de registro y registro por página

Buenas noches!!

Que tal, bueno voy al problema, estoy leyendo un libro de Server 2005 y cuando pase por la seccion de ESTIMAR LOS REQUERIMIENTOS DE LO ALMACEBNADO EN LAS TABLAS, encontre unas formulas para poder calcular el tamaño de las filas, filas por paginas, y el numero de paginas que necesitas y no entiendo lo primero (tamaño de las filas), asi que quisiera saber si alguno de ustedes sabe como hacerlo o explicarmelo mejor o darme un documento, se los agradeceria mucho.
Aqui les pongo el problema del libro a como viene y disculpen sino traduzco unas cosas bien: Es una tabla de con tres campos char(10),int, money y puedes calcular el espacio requerido para cada fila como sigue:
- Char(10)=10 bytes
- varchar(20)
- varchar(10)
- int =4 bytes
- money=8 bytes

cada fila tiene una pequeña cantidad de OVERHEAD, llamada CALLED BITMAP (utilizado para mantener los datos nulos) aqui el calculo del valor

null_bitmap=2 + ((number of columns + 7) / 8) y lo sustituye a como sigue
null_bitmap=2 + ((4+7)/8)=3.375 y lo redondea a 3

Lo que sigue es saber como cuanto espacio sera alojado en VARIABLE_LENGHT con esta formula

variable_datasize = 2 + (num_variable_columns × 2) + max_varchar_size
variable_datasize = 2 + (2 × 2) + 20 =26

y el ultimo paso para saber el tamaño de la fila es

Row_Size = Fixed_Data_Size + Variable_Data_Size + Null_Bitmap + Row_Header
Row_Size = 22 + 26 + 3 + 4 =55 al parecer Row_Header siempre vale 4

y para saber las filas por páginas a utilizar es
8096 / (Row_Size + 2) 8096 es porque ese es el tamaño de una página
8096 / 55 +2 =142

Espero y no hayan aburrido de leer y me puedan ayudar basicamente es con las primeras 3 formulas, gracias!!
  #2 (permalink)  
Antiguo 19/08/2008, 14:42
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 8 meses
Puntos: 39
Respuesta: Calcular tamaño de registro y registro por página

Te pongo un ejemplo:
Cita:
Codigo |Apellido |Nombre |Edad |Sueldo
0001 |Perez |Juan |35 |5000
0002 |Martinez |Carmen |29 |6000
En el primer registro, el campo Codigo ocupa 10 bytes, Apellido 5, Nombre 4, Edad 4, Sueldo 8. Tamaño = 10 + 5 + 4 + 4 + 8 = 31
En el segundo, el campo Codigo ocupa 10 bytes, Apellido 8, Nombre 6, Edad 4, Sueldo 8. Tamaño = 10 + 8 + 6 + 4 + 8 = 36
Segun lo calculado, el registro puede contener maximo 55 bytes.
Lo que se busca con esas formulas es saber el tamaño maximo de cada registro y el total de tu tabla.
Espero haber aclarado un poco tu duda.
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #3 (permalink)  
Antiguo 19/08/2008, 19:33
 
Fecha de Ingreso: junio-2008
Mensajes: 26
Antigüedad: 15 años, 11 meses
Puntos: 0
Que tal Flaviovich!!

Gracias por contestar, y si entiendo tu ejemplo, pero mi duda va sobre el desarrollo de las primeras 3 formulas en si mis preguntas son:

Por que el valor "number of columns" en la formula null_bitmap es 4?

Porque el valor "num_variable_columns" en la formula variable_datasize es 2 ?

Porque el valor "Fixed_Data_Size"en la formula Row_Size es 2?

Buen dia!!
  #4 (permalink)  
Antiguo 19/08/2008, 22:17
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 8 meses
Puntos: 39
Respuesta: Calcular tamaño de registro y registro por página

Si, "number of columns" deberia ser 5.
"num_variable_columns" se refiere a las 2 columnas varchar. Es tipo de datos es variable, como maximo puede guardar el numero que esta en parentesis.
"Fixed_Data_Size" es 22, es decir, 10 + 8 + 4, la suma de las columnas de ancho fijo.
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #5 (permalink)  
Antiguo 20/08/2008, 16:22
 
Fecha de Ingreso: junio-2008
Mensajes: 26
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Calcular tamaño de registro y registro por página

Compañero Flaviovich!!

Muchas gracias por ayudarme
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 15:58.