25/03/2011, 02:38
|
Colaborador | | Fecha de Ingreso: marzo-2008 Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses Puntos: 574 | |
Respuesta: guardar solo 1 valor en un campo de varios ¿quita performance? Las bases de datos, simplificando, están orientadas al registro por lo tanto guardan todo el espació necesario para guardar toda la información posible del registro. No para los campos especiales (LONGTEXT, BOLB...).
Se trata de poder acceder a todo el registro con una sola lectura de disco, además la información se "pagina" lo que quiere decir que se guarda espació para un que un determinado numero de registros estén juntos para poder leerlos en la misma lectura.
Imagina que pasaría si a ese campo 'nombre' varchar 255 no se le reservara todo el espació, cuando quisieras entrar ese nombre se tendría mover los registros para hacer espacio o guardarlo en otro lugar del disco. Las dos posibles soluciones son malas la primera significa leer y rescribir mucha info y la segunda haría que la lectura de la bbdd se convierta en una exploración potencialmente de todo el disco.
He dicho simplificando, lo digo sobre todo por que hace mucho tiempo que no repaso estos conceptos y por tanto tomalo como la idea de fondo que me quedo, podría haber algo que no fuera del todo preciso.
Oracle, usa estadísticas auto creadas del contenido del para optimizar estos temas...
__________________ Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
Última edición por quimfv; 25/03/2011 a las 02:44 |