Télefono:
91 626 61 20
Dirección:
C/ Copenhague 6. Edificio Al Andalus. Planta 2ª. Oficina 5. 28232. Las Rozas. Madrid
IBM Informix almacena los datos en dbspaces. Éstos, a su vez, se componen de chunks y dentro de los chunks los datos se organizan en extents, que son zonas contiguas de almacenamiento de disco.
Todas las tablas disponen de un parámetro que se llama «first extent» que determina el tamaño reservado cuando se crea la tabla. Dispone también del parámetro «next extent» que determina de qué tamaño se coge el siguiente extent cuando el actual se ha llenado.
Cuando dos extents son contiguos se fusionan y conforman un único extent, pero lo normal es que se vayan creando extents en zonas diferentes del disco. Además, cuando se borran datos se queda espacio libre dentro de los extents existentes quedando la información de la tabla diseminada por el mismo y siendo cada vez más ineficiente su lectura e inserción.
IBM Informix dispone de herramientas para gestionar los datos almacenados y vamos a ver el funcionamiento de una de ellas: repack. Repack es una función del gestor que permite recolocar los datos de una tabla de forma que el espacio libre que haya en los primeros extents se rellene con los datos de los extents finales. Con esto conseguimos tener los datos juntos siendo su lectura y modificación más eficiente.
Para poder lanzar este comando debemos saber la tabla sobre la que queremos que se ejecute y sobre sysadmin ejecutar:
EXECUTE FUNCTION TASK(‘table repack’,’tabla’,’base de datos’,’propietario’)
Si la tabla es grande es recomendable realizar esta tarea en horas de poca actividad para que interfiera lo menos posible que la actividad diaria.
Para cualquier tema relacionado con este artículo o relacionado con informix, no dude en ponerse en contacto con nosotros en info@proyectosysoluciones.es